Você está na página 1de 113

Machine Translated by Google

Machine Translated by Google


Machine Translated by Google
Machine Translated by Google

Hackeando Kali Linux

Um guia passo a passo completo para


aprender os fundamentos da segurança
cibernética, hackers e testes de penetração.
Inclui valiosos conceitos básicos de rede.

Por: Ethem Mining

Copyright © 2019 – Todos os direitos reservados.


Nenhuma parte desta publicação pode ser reproduzida, duplicada ou transmitida de
qualquer forma ou por qualquer meio, eletrônico, mecânico, digitalização, fotocópia,
gravação ou outro, sem autorização prévia por escrito do editor.
Todos os direitos reservados.
As informações aqui fornecidas são declaradas verdadeiras e consistentes no sentido de
que qualquer responsabilidade, relativa a desatenção ou de outra forma, por qualquer uso
ou abuso de quaisquer políticas, processos ou instruções contidas nele é de responsabilidade
única e completa do leitor destinatário. Sob nenhuma circunstância qualquer responsabilidade
legal ou culpa será responsabilizada pelo editor por qualquer reparação,
Machine Translated by Google

danos ou perdas monetárias devido às informações aqui contidas, direta ou indiretamente.

Notícia legal.
Este livro é protegido por direitos autorais. Isto é apenas para uso pessoal. Você não pode
alterar, distribuir, vender, citar, usar ou parafrasear qualquer parte do conteúdo deste livro
sem o consentimento do autor ou proprietário dos direitos autorais.
Ações legais serão instauradas se isso for violado.

Aviso de isenção de responsabilidade.

Observe que as informações contidas neste documento são apenas para fins educacionais
e de entretenimento. Este livro não pretende substituir o aconselhamento médico. Consulte
o seu médico para aconselhamento e tratamento médico.

Índice

Introdução

Parte I
Introdução ao Kali Linux e Hacking
Capítulo 1: Introdução ao Hacking O que

é Hacking?
Sequestro

de Sessão de Malware
Injeção SQL
Phishing
DOS

Razões para Hackear


Chapéus

Pretos
Chapéus
Cinzentos Chapéus Vermelhos Chapéus Verdes
Machine Translated by Google

Blue Hats
Script Kiddies
Hacktivistas
Chapéu Branco (Hacking Ético)
O que é segurança cibernética?
Os elementos da segurança cibernética
Segurança da informação: a tríade da CIA
Confidencialidade
Integridade
Disponibilidade

Capítulo 2: Introdução à rede


O que é uma rede?
Tipos de redes
E
FURGÃO

VPN
Nós de endereço de
rede
Hosts
Endereço IP
Endereço IP público vs. privado
Atribuição de um endereço
IP Camadas de protocolo

Protocolo de Internet (IP)


O modelo TCP/IP

Ameaças à segurança da rede


Homem no meio
Ataques cibernéticos
DOS e DDOS
Falsificação de MAC

Capítulo 3: Kali Linux: o sistema operacional hacker


Machine Translated by Google

O que é Linux?
O que é KaliLinux?
Devo usar Kali Linux?
Recursos do Kali Linux

Centenas de ferramentas de teste de penetração


Livre
Seguro
Customizável
Suporte multilíngue
Árvore Git de código aberto
Compatível com ESF
Suporte a dispositivos sem fio
Kernel personalizado

Como instalar o Kali Linux

O que você precisa para instalação


Criando o USB inicializável com Linux

Capítulo 4: Comandos Básicos do Linux


O terminal
Prompts de comando
Executando os Comandos
Arquivos
Navegação no diretório
Uso de disco
Comandos de arquivo e diretório
Transferências de arquivos

Comandos de informações de hardware


Instalando Pacotes
Rede
Monitoramento de desempenho
Gerenciamento de processos
Procurar
Logins SSH
Comandos de informações do sistema
Informações do usuário e comandos de gerenciamento
Machine Translated by Google

parte II
Hackeando Kali Linux

Capítulo 5: Nmap e detecção e exploração de vulnerabilidades

O que é Nmap?
Como usar o Nmap para compreender e explorar vulnerabilidades

Comandos de digitalização

Técnicas e comandos de digitalização

Varredura TCP SYN

Verificação de conexão TCP()


Varredura UDP
Varredura FIN

Verificação de ping

Detecção de versão
Verificação ociosa
Teste de penetração
Pré-engajamento
Reconhecimento

Modelagem de ameaças e identificação de vulnerabilidades

Exploração
Pós-exploração
Comunicando
Testando novamente

Capítulo 6: Como se tornar e permanecer anônimo

Cadeias proxy
VPN
Tor e Kali Linux

Capítulo 7: Estrutura Metasploit

O que é Metasploit?
Módulos Metasploit de
usuários do Metasploit
Machine Translated by Google

Usando Metasploit
Instalando Metasploit
Gerenciando o banco de dados Metasploit
O armazenamento de dados Metasploit
Os espaços de trabalho do Metasploit

Capítulo 8: Certificado Digital O

que é um Certificado Digital?


Tipos de certificados de
autoridades de certificação
Certificado Raiz
Certificado Intermediário
Certificado SSL

Gerando certificados SSL autoassinados

Capítulo 9: Scripts Bash e Python

Conclusão
Machine Translated by Google

Introdução
Você já esteve em uma situação em que quis tentar hackear alguma coisa? Talvez
você quisesse testar a segurança de algo que estava desenvolvendo ou simplesmente
quisesse se desafiar e não sabia por onde começar. Se isso é algo que você
considerou, Kali Linux pode ser o sistema operacional de que você precisa para
iniciar o processo.

É importante observar que o Kali Linux não é para todos – você precisa de algum
nível de familiaridade com o funcionamento do Linux ou pelo menos uma ideia de
como interagir com o Linux se desejar usar o Kali Linux de maneira útil. Se você não
tem essa familiaridade, pode ser do seu interesse voltar e começar o estudo de uma
distribuição mais simples do Linux, como Ubuntu ou Mint, antes de começar a mexer
no Kali Linux. Se você decidir seguir em frente com o Kali Linux, tenha em mente
que as ferramentas desta distribuição podem causar sérios danos se usadas
indevidamente e podem até levar a consequências significativas. Esta não é uma
distribuição a ser tomada de ânimo leve.

Se você decidir prosseguir, este livro lhe dará o guia para iniciantes do Kali Linux e
como usá-lo para começar a hackear. A primeira metade do livro é dedicada a
fornecer o conhecimento básico que será necessário para realmente aproveitar ao
máximo. Você receberá informações sobre hackers e como isso tornou a segurança
cibernética mais importante do que nunca. Você aprenderá os fundamentos do
networking em si, mergulhando em vários conceitos diferentes e como eles funcionam.
Você aprenderá tudo sobre o Kali Linux – o que é, como é instalado e como usá-lo,
e aprenderá vários dos comandos mais básicos do Linux.

Na segunda metade deste livro, você começará a discutir a utilização do Kali Linux
para diversos propósitos diferentes. Você aprenderá sobre o Nmap e como ele pode
ser usado para detectar e explorar vulnerabilidades. Você será guiado pelas etapas
para permanecer anônimo. Você mergulhará no Metasploit e em como usá-lo com o
Kali Linux. Você aprenderá sobre certificados digitais e como usá-los e, finalmente,
aprenderá sobre bash (Bourne Again SHell) e scripts Python e por que os dois às
vezes são considerados conflitantes, apesar do fato de que poderiam muito bem
funcionar juntos e cooperarem para obter resultados muito melhores do que se
continuarem separados.
Machine Translated by Google

Quando terminar de ler este livro, você terá uma ideia das informações básicas
necessárias para primeiro decidir se o Kali Linux é para você e, se for, você
saberá como começar a usá-lo e terá uma compreensão de quão poderosa é
esta distribuição do Linux.
Embora o Kali Linux não seja para todos, se acontecer de você se enquadrar
na categoria de pessoas que encontrariam uso neste programa, então as
ferramentas que serão fornecidas com esta distribuição são ativos incrivelmente
valiosos que você não vai querer perder. tendo em seu arsenal.

No final do dia, você será capaz de determinar se está satisfeito com a ideia do
Kali Linux e se isso é para você ou se, em vez disso, você deveria fazer
questão de mudar para uma distribuição diferente do Linux. .
Você poderá decidir se deseja continuar trabalhando inteiramente com o shell
ou se deseja aprender Python. E, se nada disso que foi discutido faz algum
sentido, então, ao chegar ao final do livro, você deverá encontrar alguma
clareza com os tópicos em questão e como eles devem ser usados.
Machine Translated by Google

Parte I

Introdução ao Kali Linux e


Hackeando
Machine Translated by Google

Capítulo 1: Introdução ao Hacking

É uma das piores coisas que podem acontecer a muitas pessoas: elas acessam sua conta
bancária ou cartão de crédito apenas para perceber que o saldo de sua conta está completamente
esgotado ou que alguém está fazendo uso intenso de seu cartão de crédito. Isto pode devastar
absolutamente muitas pessoas e, infelizmente, hoje em dia, esta é uma preocupação muito real.

Hoje em dia, as informações financeiras são armazenadas em algum lugar. Seu banco tem um
registro do número da sua conta, dos números do seu cartão e de tudo o mais que alguém
precisaria para acessá-lo. Você provavelmente faz login em algum lugar para pagar contas de
cartão de crédito ou serviços públicos.
Você pode até fazer a maior parte de suas compras, tanto de mantimentos quanto outras vezes
online. Isso significa que suas informações pessoais são constantemente usadas online. Você
insere seu número de seguro social para solicitar um cartão de crédito. As três principais agências
de crédito mantêm suas informações, rastreando-as e atualizando-as regularmente. Você pode
até solicitar impostos online. Este tem um
Machine Translated by Google

implicação séria – todas as suas informações essenciais estão disponíveis online em


algum lugar.

Para ser justo, essas informações geralmente são armazenadas por trás de todos os
tipos de protocolos de segurança implementados. Eles têm como objetivo proteger suas
informações contra vazamentos para pessoas que possam estar interessadas em usá-
las para fins nefastos, mas, assim como a armadura, geralmente há uma maneira de
passar por isso. Alguns sistemas podem ser mais seguros do que outros, mas no final
das contas, um indivíduo dedicado seria capaz de encontrar uma maneira de romper
se se esforçasse.
Assim que eles rompem esse sistema de segurança, eles têm acesso a todos e
quaisquer dados, que podem então ser liberados e vendidos, levando você a ter sua
identidade roubada. Todos querem evitar esse resultado infeliz, mas com o
armazenamento de informações valiosas surge o risco de ataque e exploração, que
deve ser contabilizado.

O que é hackear?
Hackear, então, é o ato de identificar qualquer tipo de fraqueza no sistema de segurança
de um computador ou rede e, em seguida, explorar essa fraqueza para obter o acesso
necessário a tudo o que está escondido atrás do firewall.
Por exemplo, um exemplo comum é o uso de um algoritmo projetado para identificar
uma senha, a fim de arrombar digitalmente o bloqueio de uma rede ou conta. Essa
conta foi então explorada para obter o acesso desejado.

Nem sempre o hacking pode ser feito com a intenção de causar danos – algumas
pessoas o fazem por meios legítimos, como localizar uma falha no sistema e repará-la.
Outros podem optar por fazê-lo para se divertir, não muito diferente de resolver um
quebra-cabeça complicado ou tentar resolver problemas matemáticos cada vez mais
complicados para testar e aprimorar habilidades. Outros ainda o fazem para roubar
informações para algum propósito, seja para usá-las para obter ganhos financeiros ou
para paralisar o sistema que estão invadindo.

A invasão pode ocorrer de diversas formas, como enganar alguém para que clique em
um anexo de um e-mail que concederá acesso a um computador.
Outras formas, no entanto, exigem muito mais conhecimento técnico, desenvolvendo a
capacidade de enganar e acionar o sistema para conceder acesso e informações que
de outra forma deveriam ser salvaguardadas. Este livro discutirá principalmente métodos
Machine Translated by Google

relacionadas ao conhecimento técnico, em vez de usar tentativas indiretas para enganar


alguém e fazê-lo conceder acesso em primeiro lugar. Essencialmente, hackear é o ato de
entrar no sistema de outra pessoa, mas os métodos de hackear podem variar bastante.

Cada um deles ocorre de maneiras diferentes e serve a propósitos diferentes, mas o


resultado final é o mesmo: eles permitem que informações sejam roubadas e usadas, ou
que programas sejam usados de maneiras que não eram intencionais.

Por exemplo, algumas pessoas podem hackear seu console de videogame para executar
emuladores que lhes permitam jogar ROMs de jogos diferentes, incluindo alguns que
podem não ter sido planejados para serem usados naquele sistema.
Outros podem usar suas habilidades para roubar informações e vendê-las a pessoas que
desejam roubar uma identidade. No entanto, existem inúmeras opções que um hacker
pode usar para obter acesso a todas as informações que deseja. O restante desta seção
discutirá alguns dos métodos de hacking mais comuns que existem, permitindo que você
tenha uma ideia do que o hacking pode acarretar.
Tenha em mente que esta lista não é exaustiva.

Programas maliciosos

Malware é software malicioso – resumido em uma palavra. Inclui software como vírus que
são instalados, seja clicando em algo que permite o download ou baixando você mesmo,
mas depois de permitir a entrada, você compromete suas informações. Os invasores
geralmente usam um link ou anexo de e-mail que parece inofensivo para induzi-lo a
instalar qualquer malware que esteja oculto.

O malware instalado pode causar todos os tipos de problemas, como monitorar o uso do
computador, como as teclas digitadas, o que permite ao hacker acessar todos os tipos de
informações que podem ser pessoais ou confidenciais. Também pode conceder acesso
total ao computador, dependendo do malware instalado. No geral, porém, na grande
maioria das vezes, o usuário do computador terá que fazer algo que acione o download
do malware.

Sequestro de sessão

Como será discutido mais adiante, quando um usuário está navegando na internet, o
computador do usuário envia diversas transações para os servidores do site, permitindo que o
Machine Translated by Google

site para ver quem está acessando, o que está sendo solicitado e enviando as
informações adequadas de volta ao usuário para exibição. Isso é feito por meio de
roteadores e redes e, quando feito corretamente, você consegue acessar as
informações solicitadas sem problemas, seja simplesmente navegando em sites e
clicando em links ou inserindo informações confidenciais.

Esses dados devem permanecer privados, dado um ID de sessão específico que


permite ao servidor saber quem os está usando e como ele pode enviar os dados
especificamente solicitados de volta ao indivíduo que os solicita. No entanto, às
vezes, esses dados são interceptados.

Essencialmente, o que acontece é que outra pessoa consegue acessar esse ID


exclusivo. Eles são capazes de usar esse mesmo ID e fazer solicitações como você
durante sua interação, permitindo que o invasor veja qualquer informação confidencial.
Às vezes, em vez de apenas observar e interceptar informações, o invasor pode atuar
como o site ou como o indivíduo que utiliza o site, permitindo que o invasor solicite e
intercepte informações de qualquer direção. Quando isso acontece, é conhecido
como ataque man in the middle.

Injeção SQL
SQL (geralmente pronunciado como “sequela”) é um acrônimo para linguagem de
consulta estruturada. É a linguagem de programação usada principalmente como
meio de comunicação com bancos de dados.

Quando um site ou uma empresa precisa armazenar informações confidenciais e


críticas, como informações financeiras ou de pacientes, o servidor em que estão
armazenadas utilizará mais comumente o SQL para gerenciá-las.
Machine Translated by Google

A injeção de SQL, então, busca utilizar código projetado para acionar o servidor para
fornecer informações que normalmente são protegidas. Especialmente quando o
servidor contém informações pessoais importantes, ele pode ser um alvo valioso –
essas informações podem ser vendidas ou usadas como alavanca para chantagem.
Efetivamente, o ataque de injeção de SQL explora uma das vulnerabilidades conhecidas
do SQL, da qual o invasor tira vantagem. Isso pode ser feito inserindo um código
específico em uma barra de pesquisa ou interagindo com ele de uma forma que acione
resultados indesejados.

Phishing

Para aqueles que sabem que é melhor não abrir um anexo ou link aleatório que lhes
foi enviado, existem outros métodos que podem ser usados para fazer com que você clique.
O invasor pode saber que não é provável que você simplesmente abra um anexo
aleatório, então ele considera o motivo para abrir esse anexo um motivo atraente e
motivador. Essas pessoas muitas vezes imitam outras pessoas para fazer você clicar
no link.

Por exemplo, você pode receber um e-mail de alguém afirmando trabalhar para o IRS
e dizendo que tem um saldo pendente com essa pessoa. Eles não especificam o saldo,
mas incluem um extrato anexado ao e-mail no qual você deve clicar para vê-lo.

Claro, toda a situação é falsa. Não há saldo devido e, se você fosse esperto, se
lembraria de todos os avisos que são enviados todos os anos sobre como o IRS só
entrará em contato com você por correio tradicional. Os phishers dependem de você
não saber o que está fazendo, ficar muito curioso ou não ser cauteloso o suficiente
para passar pelo processo de verificação dupla das fontes antes de baixar um
documento.

DOS
Você já tentou sair de um grande evento de uma cidade pequena? Especialmente se
houver apenas uma estrada que permita a saída, você poderá ficar preso no trânsito
por horas. O mesmo tipo de ocorrência pode acontecer com sites – normalmente, os
servidores só conseguem acomodar uma determinada quantidade de tráfego e, se o
tráfego ficar muito ruim, o site fica sobrecarregado e não consegue carregar os sites
necessários para ninguém. Às vezes isso acontece legitimamente, como se fosse altamente
Machine Translated by Google

os ingressos desejados serão colocados à venda em um horário específico com previsão de esgotamento
ou durante vendas massivas e em quantidade limitada.

No entanto, às vezes, um indivíduo pode decidir que deseja que esse tipo de ponto final aconteça. Quando
fazem isso, inundam intencionalmente o site com tráfego – tanto que os servidores do site não conseguem
mais acomodar a carga e ninguém consegue acessar nada. Conhecido como DOS (Denial of Service), esse
ataque geralmente vem de uma única fonte, todos

de uma vez só.

No entanto, às vezes, ele vem de vários endereços IP ao mesmo tempo, usando computadores diferentes
para atacar e dificultando o rastreamento e a parada.
Isso é conhecido como DDOS – negação de serviço distribuída.

Razões para hackear


Em última análise, os motivos para hackear podem variar muito de pessoa para pessoa.
Algumas pessoas fazem isso para obter mais informações. Outros fazem isso para causar danos.
Outros ainda fazem isso por entretenimento ou apenas para aprender como. Tornou-se moda na cultura
pop moderna discutir o hacker como uma grande ameaça à Internet e à segurança cibernética. Isso pode
ser um vilão particularmente convincente em uma história ou filme, mas hackers reais são igualmente
capazes de causar estragos. No
Machine Translated by Google

por outro lado, tem havido hackers com motivação política ou social que usam o hacking para
chamar a atenção para um evento específico ou para obter informações confidenciais – essas
pessoas são conhecidas como hacktivistas.

Não importa o motivo do hacking, uma coisa é certa: a menos que o hacking seja feito para ajudar
a preparar o sistema que está sendo hackeado, a fim de melhorar a segurança, o hacking é
perigoso. É prejudicial. Não é um brinquedo. Não é algo para ser considerado levianamente. Se
você está neste livro porque quer hackear alguém ou se vingar de alguém por causa de algo que
aconteceu ou simplesmente quer ver o mundo pegar fogo, pare. Feche este livro. Encontre um
hobby fazendo algo que não vá potencialmente arruinar vidas. Em última análise, vidas já foram
arruinadas por hackers antes.

Os hackers conseguiram destruir pessoas, seus meios de subsistência, suas carreiras e, às


vezes, até mesmo suas famílias. Através do roubo de identidade ou de fundos, ou provocando
uma perturbação tão grande que uma empresa tenha falido ou com quaisquer outras implicações
negativas, a pirataria informática pode prejudicar as pessoas e não deve ser tratada levianamente.
É exatamente por isso que a segurança cibernética é um campo em rápido crescimento.

Normalmente, as pessoas terão um dos quatro motivos para hackear maliciosamente um servidor
ou computador:

Eles procuram ganhar financeiramente, roubando números de cartão de crédito,


por exemplo.

Eles constroem sua reputação dentro da comunidade hacker através de hackers e


deixando algum tipo de marca identificável nela.

Eles estão envolvidos em espionagem corporativa – a tentativa de obter informações


confidenciais de um concorrente para obter vantagem no mercado

Eles estão participando de uma tentativa de hacking patrocinada pelo governo para
obter inteligência nacional, enfraquecer a infraestrutura ou apenas causar estragos.

Estas pessoas não se importam com as regras ou leis e, de facto, criaram a necessidade de
segurança cibernética e de leis de segurança cibernética, que serão discutidas mais adiante neste
capítulo. Pessoas invadindo bancos de dados e servidores levaram a um
Machine Translated by Google

precisamos garantir que estes estejam mais seguros do que nunca, levando à criação de todo
o campo de empregos em segurança cibernética.

Os hackers geralmente são classificados com títulos referentes às cores dos chapéus. Eles
podem ser pretos ou com, vermelhos ou verdes, ou até azuis. Compreender essas cores de
chapéu pode ajudá-lo a entender melhor por que as pessoas podem optar por hackear, mais
especificamente do que os quatro motivos listados acima. Também pode ajudá-lo a esclarecer
por que você deseja aprender a hackear por meio do Kali Linux.

Chapéus Pretos

Quando você pensa em um hacker, provavelmente é um chapéu preto – eles fazem isso por
motivos nefastos. Estes são os que são frequentemente encontrados violando servidores e
explorando pontos fracos. Eles fazem isso para roubar e ganhar dinheiro. Essas pessoas,
embora criminosas, também fazem uso de algumas das técnicas mais básicas que são
aprendidas. Embora sejam bastante inteligentes, eles são motivados por meios nada honrosos
– tudo o que lhes interessa é o que têm a ganhar.

Chapéus

Cinzentos Os hackers de chapéu cinza são um pouco mais complicados do que os chapéus
pretos. Eles estão hackeando para roubar, mas geralmente em termos menos nefastos. Eles
podem estar interessados em compartilhar arquivos ou invadir software para usá-lo sem pagar
taxas de licenciamento.
Eles geralmente interagem com servidores e redes de forma exploratória, mas não
necessariamente para roubar as informações contidas neles. Em vez disso, eles tratam o
hacking mais como um hobby de que gostam. Eles normalmente não informam os sites
quando encontram explorações, mas provavelmente se oferecem para corrigi-las mediante o
pagamento de uma taxa. Essencialmente, essas pessoas ficam mais motivadas por se verem
e provarem aos outros que são importantes.

Chapéus Vermelhos

Se estivéssemos discutindo o gráfico de alinhamento de personalidade agora, os chapéus


vermelhos seriam o equivalente ao bom jogador caótico – eles estão interessados em impedir
os hackers de chapéu preto, mas não querem se sentir limitados por regras e leis. Em vez
disso, eles subverterão intencionalmente qualquer
Machine Translated by Google

autoridade e realizam suas tentativas de acordo com suas próprias regras. Se usar a
expressão combatendo fogo com fogo, os chapéus vermelhos lutarão contra uma
tocha com um lança-chamas - eles tentam agressivamente destruir o acesso do
chapéu preto às redes ao descobrir quem é o chapéu preto, com a intenção de tornar
o chapéu preto completamente incapaz de causar mais danos. Embora essas
pessoas tendam a existir mais distantes do resto da comunidade hacker, elas tendem
a ser algumas das mais sofisticadas, querendo jogar de acordo com suas próprias
regras.

Chapéus Verdes

Na comunidade hacker, os chapéus verdes incomodam os iniciantes. Eles geralmente


estão tentando aprender como hackear e prontamente pedirão ajuda ou buscarão
novos conhecimentos.
São motivados pela vontade de aprender e desenvolver as suas competências,
seguindo ambiciosamente os seus sonhos, sem necessariamente terem um caminho
claro que queiram seguir. No entanto, por lhes faltar experiência de vida e
conhecimento técnico, também são alguns dos mais perigosos porque ainda não
aprenderam o quão perigosas as suas acções podem ser, nem sabem o suficiente
para reverter qualquer dano que tenham causado.

Chapéus Azuis

Os chapéus azuis se preocupam com a vingança. Embora possam ser maliciosos,


normalmente eles apenas canalizam suas tentativas de hackear para quem eles
acham que os ofendeu. Normalmente, eles são relativamente novos no hacking em
geral, possivelmente até mesmo script kiddies, mas quando algo ruim acontece, eles
podem decidir fazer bom uso de suas novas habilidades e começar a hackear um
alvo de forma intencional e maliciosa. Eles não querem melhorar as suas competências
– querem apenas ter as competências técnicas para causar problemas.

Script Kiddies

Essas pessoas não ganham cor, mas ainda assim é importante mencioná-las.
Essas pessoas geralmente não têm interesse em roubar informações, mas ainda
gostam de pegar códigos já criados e injetá-los em servidores na tentativa de causar
problemas. Eles são mais propensos a utilizar
Machine Translated by Google

suas habilidades em técnicas como DDoS para inundar um site apenas para irritar as
pessoas sem qualquer propósito real.

Hacktivistas
Conforme brevemente mencionado, os hacktivistas são aqueles motivados pela
política. Eles podem ser agrupados nos chapéus pretos, embora geralmente estejam
hackeando na tentativa de trazer à luz algo importante para sua causa. Eles podem
tentar divulgar informações ou registros que deveriam ser mantidos em sigilo ou
podem decidir realmente causar problemas para uma empresa. Eles podem até tentar
combater grupos terroristas graças ao seu impressionante conhecimento prático. Eles
estão tentando levar a mudanças positivas, embora possam usar métodos negativos
para alcançá-las. Eles são motivados acima de tudo pela sua causa.

Chapéu Branco (Hacking Ético)


A última classificação de hackers é o chapéu branco – conhecidos como hackers
éticos. Os hackers éticos de chapéu branco normalmente estão hackeando na tentativa
de reforçar as defesas. Essas pessoas estão tentando intencionalmente invadir o
software para ajudar uma empresa a fortalecer suas próprias defesas à medida que
explorações e vulnerabilidades são identificadas. Essas pessoas são mais
frequentemente encontradas em carreiras de segurança cibernética, tentando ajudar
a manter suas informações confidenciais seguras e protegidas contra tentativas de
outras pessoas de roubá-las. Estas pessoas são frequentemente formadas em
segurança informática ou ciências da computação e depois certificadas pelo Conselho
da CE. Isso significa que eles devem concluir um curso intensivo e passar em um
exame, que geralmente envolve treinamento sobre como lidar com os domínios de
segurança mais comuns e atuais, com centenas de técnicas e tecnologias de ataque.
O hacker de chapéu branco também deve manter essas credenciais com créditos educacionais anuai

Normalmente, se você deseja se tornar um hacker de chapéu branco, está interessado


em ajudar as pessoas. Você deseja defender as pessoas e fazê-lo de uma forma que
seja legal, aceitável e benéfica para todos os envolvidos. Você deseja eliminar as
vulnerabilidades do sistema para protegê-lo de danos, em vez de tentar fazer justiça
vigilante a alguém como o chapéu vermelho
Machine Translated by Google

hackers, que podem ter o coração no lugar certo, mas fazem as coisas de uma
maneira tão ruim e destrutiva quanto os hackers black hat.

O que é segurança cibernética?

Conforme mencionado anteriormente, a invenção dos servidores e o nascimento


dos hackers também trouxeram consigo a criação da segurança cibernética. A
segurança cibernética é crucial para aqueles que pretendem contar com servidores
e bancos de dados – sem segurança cibernética, não haveria sistema de defesa. A
segurança cibernética permite a defesa de qualquer sistema conectado à Internet,
o que significa que protege seu hardware, software e dados contra ataques
cibernéticos. Quando o que precisa ser protegido está em um servidor ou banco de
dados de qualquer tipo, há duas maneiras diferentes de protegê-lo: fisicamente, de ser protegido.
Machine Translated by Google

danificado ou levado embora, e também digitalmente, a fim de proteger aqueles


que tentam acessá-lo através da rede e roubar ou danificar informações protegidas.
A segurança cibernética tem, então, um objetivo específico: proteger os ativos de
TI contra ataques, a fim de garantir que as informações e os dados armazenados
nesses ativos de TI permaneçam protegidos e seguros para o benefício de todos.

Como muitos dados existentes são bastante sensíveis e devem ser protegidos, a
segurança cibernética é absolutamente essencial. Não apenas os dados do usuário
individual são protegidos ao implementar práticas de segurança cibernética, mas a
empresa que implementa as práticas também se protege. Como a probabilidade
de uma violação massiva diminui com o uso da segurança cibernética, a
probabilidade de grande atenção negativa da imprensa também diminui. A
segurança cibernética ajuda a diminuir o risco de violações, ataques de ransomware
e roubo de identidade de indivíduos e, embora a segurança cibernética possa ser
difícil de manter devido ao mundo em constante mudança da tecnologia e da TI,
mantê-la traz sérios benefícios.

As práticas de segurança cibernética devem ser usadas por qualquer pessoa que
use qualquer coisa conectada à Internet – seja você um funcionário, proprietário
de um servidor ou usuário individual, há etapas que você pode seguir para evitar
Machine Translated by Google

caindo nas armadilhas de hackers ou daqueles que procuram explorar seus dados.
Tudo começa com sua senha. No entanto, existem também muitos outros pontos em
que a segurança dos seus dados pessoais como utilizador já não está nas suas próprias
mãos e cabe à empresa responsável pelos seus dados protegê-los.

Infelizmente, a segurança cibernética enfrenta um problema específico que


provavelmente não desaparecerá tão cedo: como a tecnologia está em constante
evolução e mudança, e porque as redes e os padrões de dados também mudam, assim
como os hackers, que inevitavelmente encontram mais explorações, a segurança
cibernética é um problema. trabalho sem fim. Sempre haverá outra exploração para
encontrar e corrigir. Sempre haverá outra tentativa de roubo de dados. Isso significa
que a profissão de segurança cibernética provavelmente não irá a lugar nenhum tão cedo.

Normalmente, essas ameaças são abordadas concentrando a maior parte dos recursos
na proteção dos componentes mais cruciais para proteger contra quaisquer ameaças
que sejam conhecidas e significativas. No entanto, esta abordagem também deixa
alguns sistemas menos protegidos ou indefesos ou deixando o sistema aberto a
ameaças que podem ser consideradas menos conhecidas ou menos perigosas.

Os Elementos da Cibersegurança A

cibersegurança, apesar das constantes flutuações e mudanças no sistema, também


possui uma série de elementos que devem ser mantidos. Estes elementos são
essencialmente a espinha dorsal da segurança cibernética – é necessário que cada um
deles seja considerado bem-sucedido e proteja verdadeiramente os dados e a
infraestrutura que lhe foram confiados. Esses elementos incluem:

Segurança do aplicativo: Isso diminui a probabilidade de qualquer tipo


de código não autorizado encontrar uma vulnerabilidade

Planejamento de continuidade de negócios: ajuda a manter ou


retomar quaisquer funções críticas caso algo catastrófico aconteça

Educação do usuário final: Ensina os funcionários ou usuários como


agir para proteger as informações
Machine Translated by Google

Segurança da informação: protege as informações

Segurança de rede: identifica, previne e reage a quaisquer ameaças com


políticas de segurança, ferramentas e TI.

Segurança operacional: classifica as informações e as protege

Segurança da Informação: A Tríade da CIA


Conforme observado anteriormente, um dos elementos da segurança cibernética é a
segurança da informação. Este elemento específico é tão importante que merece ser
discutido em sua própria seção. Dentro da segurança da informação, existe um conceito
conhecido como tríade da CIA. Esta tríade específica significa confidencialidade,
integridade e disponibilidade, que servem como uma espécie de declaração de missão
para o lado da segurança da informação da segurança cibernética.

Cada um destes três lados da tríade é crucial: As informações protegidas devem ser
confidenciais, acessíveis e mantidas com integridade. Sem alcançar todos estes três
objetivos, a segurança da informação não foi totalmente
Machine Translated by Google

alcançou. Estes são os fundamentos da segurança da informação e serão sempre o


objetivo central.

Confidencialidade
Esta é a capacidade de proteger informações de qualquer tipo de acesso não
autorizado a elas. Quando as informações são confidenciais, elas não podem ser
acessadas por ninguém não autorizado. Por exemplo, quando você vai ao consultório
médico, seu histórico médico é confidencial, a menos que você assine um formulário
de liberação. No ambiente médico, essas informações são protegidas tanto por
medidas de segurança quanto por regulamentos de conduta para evitar que suas
informações médicas confidenciais se tornem conhecidas. No lado da segurança da
informação, as informações que estão sendo protegidas só serão acessíveis por
usuários autorizados, sendo os usuários não autorizados automaticamente rejeitados
caso não forneçam as credenciais corretas. Por exemplo, considere uma agência de
crédito que tenha acesso a todas as suas informações pessoais, desde o seu número
de segurança social até às contas e números de conta de qualquer uma das suas
linhas de crédito – se os seus dados não estiverem seguros, corre o risco de roubo de identidade.

Integridade

A integridade é alcançada quando as informações são mantidas de forma precisa e


consistente. Isso significa que suas estruturas originais e pretendidas são mantidas
sem quaisquer alterações prévias autorizadas no material. Embora seja possível que
as informações sejam alteradas se o usuário for descuidado ou usado ou se houver
um erro, a integridade será mantida desde que as informações não sejam modificadas
durante o armazenamento, sendo transferidas para o solicitante, e quando sendo
usadas, curto de qualquer pessoa que o altere ativa e conscientemente. Isso significa
que os dados são precisos e mantidos constantes.

Por exemplo, imagine que você verificou sua conta bancária antes de comprar um
novo computador porque queria ter certeza de que seu cheque de depósito direto
havia, de fato, sido depositado. Se o seu aplicativo bancário não for atualizado
corretamente ou não refletir o fato de que você, de fato, foi pago, você pensará que
não conseguirá comprar aquele laptop ou qualquer outra necessidade que possa ter
tido.

Disponibilidade
Machine Translated by Google

O objetivo final, disponibilidade, refere-se à disponibilidade imediata da informação quando e

onde for solicitada e necessária. Como as informações geralmente são protegidas, elas não estão

disponíveis para todos, mas devem estar disponíveis para aqueles que possuem as credenciais

adequadas. Isto deve ser mantido tanto quanto possível – a protecção de dados sem acesso

imediato aos mesmos não é exactamente a mais útil em situações em que os dados se tornam

essenciais. Por exemplo, imagine que seus registros médicos estão sendo protegidos. Se o seu

médico não conseguisse acessar seus registros médicos sob demanda, você não conseguiria

obter o

tratamento adequado.
Machine Translated by Google

Capítulo 2: Introdução à rede

Com o uso em larga escala da Internet, vem a introdução da rede. Embora possa
ser fácil pensar que as informações ou solicitações que você envia pela Internet
simplesmente aparecem instantaneamente após serem transmitidas para um
satélite, especialmente se você estiver usando um roteador para uma conexão
doméstica sem fio, o que realmente acontece é que os dados que você passa
por fios para obter as informações solicitadas para serem devolvidas a você, tudo
em velocidades extremamente rápidas. Esta é a criação da rede e, quer você já
tenha considerado isso ou não, ela é uma grande parte de tudo nos dias de hoje,
e você provavelmente usa a rede várias vezes ao dia. Quer você verifique sua
conta bancária ou até mesmo compre algo com cartão de débito ou crédito, você
está enviando informações por meio de uma rede.

O que é uma rede?

Definida de forma simples, uma rede são dois ou mais computadores conectados
de alguma forma para compartilhar informações ou interagir de alguma forma.
Os computadores não precisam estar conectados via fio – eles podem ser
conectados através de feixes infravermelhos, através da transmissão de ondas de rádio
Machine Translated by Google

ou satélites, ou mesmo através de fios. No entanto, eles estão sempre conectados de


alguma forma.

Existem vários casos em que uma rede é a escolha certa para o uso planejado. Por
exemplo, imagine que você tem dois computadores (um laptop e um desktop), um tablet e
um telefone celular. Você usa regularmente todos os quatro itens em casa e deseja ter
certeza de que os dados anexados ao seu laptop, que você usa principalmente para
acessar e navegar na Internet ou responder e-mails, também estejam disponíveis em seu
desktop mais poderoso, que pode ser reservado para programas mais intensivos, como
jogar videogame ou editar arquivos ou vídeos grandes. Você também, apenas por
conveniência, gostaria de ter certeza de que as fotos tiradas em trânsito com o telefone
também podem ser acessadas de outras fontes. Quando você deseja aquele nível de
conectividade, onde pode acessar todos os seus arquivos de qualquer lugar, você está
procurando uma conexão de rede. Ao obter essa conexão de rede, você poderá
compartilhar esses arquivos com facilidade.

É claro que existem outras maneiras pelas quais as redes também se tornam cruciais. Se
você trabalha em uma escola, por exemplo, pode estar familiarizado com laboratórios de
informática. Nesses laboratórios, os alunos inserem suas informações de login em qualquer
computador para acessar a mesma conta. Os professores também podem enviar suas
informações para fazer logon em qualquer computador dessa rede, desde que usem a
senha e o nome de usuário corretos.

Tipos de redes
As próprias redes podem assumir diversas formas diferentes. Essas redes são utilizadas
para tudo e qualquer coisa que envolva a transmissão de informações, seja imprimindo
um documento ou enviando um e-mail. É importante compreender que, ao discutir redes,
você está discutindo principalmente um dos dois tipos de rede diferentes, embora existam
vários outros, dependendo da finalidade. Os dois mais comumente discutidos são LAN e
WAN, com a VPN sendo um terceiro próximo. Esses três tipos de redes têm seus próprios
cenários de uso específicos. Esta seção lhe dará uma breve visão geral de LAN, WAN e
VPN, embora você descubra que a VPN será discutida com mais detalhes em capítulos
posteriores.

E
Machine Translated by Google

A mais comum das redes no entendimento moderno é a LAN. Esse tipo de rede é
conhecido como rede local – ela conecta computadores e dispositivos de baixa
tensão entre si em uma área pequena ou local. Isto pode ocorrer dentro de um único
edifício ou até mesmo em alguns edifícios que possam precisar compartilhar
informações. Com o uso de um roteador, uma LAN pode interagir com uma WAN
para transferir dados de forma rápida e segura. Se você for configurar uma rede
pessoal em casa, provavelmente será uma LAN, especialmente se mais de uma
pessoa a compartilhar.

FURGÃO

Representando uma rede de área ampla, a WAN permite que computadores se


conectem a distâncias maiores.
Isso significa que os computadores, mesmo distantes uns dos outros, podem se
conectar entre si de uma forma ou de outra. Isso pode ocorrer em uma escala menor,
como um provedor de serviços de Internet conectado a várias LANs diferentes,
agrupando-as em uma rede coesa. Outro tipo de WAN mais conhecido é a internet.
A internet permite a conexão de computadores em todo o mundo.

VPN
VPN significa rede privada virtual. É uma rede que se estende pela internet como se
estivessem acessando uma rede privada que outras pessoas não conseguem
acessar, através da internet. Isto também pode ser alcançado remotamente, através
do uso de uma conexão virtual ponto a ponto, na qual os sites privados e remotos
podem acessar uns aos outros. Eles são roteados pela Internet a partir de uma rede
privada para transferir informações confidenciais e garantir que sejam seguras.
Normalmente, isso era feito criptografando os dados – fazendo com que não
pudessem ser lidos facilmente por alguém que, em primeiro lugar, não deveria ter
acesso a eles.

Endereço de rede

Um endereço de rede é uma forma pela qual os nós e hosts em uma rede podem ser
identificados. Assim como sua casa tem um endereço que permite que o correio
tradicional seja entregue exatamente no seu endereço, onde quer que esteja, seu
computador tem seu próprio tipo de endereço. Ao abordar algo para o seu específico
Machine Translated by Google

endereço, alguém mesmo do lado oposto do mundo poderá lhe enviar algo. A
rede funciona assim: permite que você envie algo para um ponto muito específico,
mesmo que você não esteja conectado fisicamente de forma alguma.

Na verdade, você pode até enviá-lo através do oceano, de um continente para


outro, com facilidade, desde que consiga enviar a solicitação para o lugar certo.

Para realmente começar a entender os endereços de rede e como eles são


relevantes para hackers, Kali Linux e para a compreensão da computação em
geral, você deve primeiro entender alguns conceitos importantes. Esta seção irá
guiá-lo na compreensão e definição de nós, hosts e endereços IP, tanto públicos
quanto privados.

Nós
Os nós são o ponto de redistribuição individual dentro de uma conexão de rede -
se você estivesse enviando algo por correio tradicional, os nós seriam todas as
agências postais individuais pelas quais a correspondência passa. Se você enviar
algo do Alabama para uma cidade remota no Alasca, essa carta não irá viajar
diretamente para aquela cidade remota – ela passará por vários postos de controle
que funcionam como pontos de redistribuição. O nó também pode se referir ao
terminal final. Na verdade, é todo local para o qual os dados foram encaminhados
até que finalmente cheguem ao fim da linha e sejam entregues onde deveriam
estar.

Anfitriões

O host é um computador conectado a outro computador responsável pelo envio


de dados. O host é um nó de rede – ele recebe e envia informações e possui seu
próprio endereço.
Pode ser um servidor que armazena informações como um arquivo, permitindo
que outras pessoas as acessem. Também pode ser um host pessoa a pessoa, no
qual você tem um computador que contém todas as informações que você
acessará de outro. No sentido de que o anfitrião de uma festa é quem proporciona
a diversão, a comida e a festividade, o anfitrião do computador fornece todas as
informações desejadas. Para ser considerado host, o computador ou servidor
deve ter seu próprio endereço de rede.
Machine Translated by Google

Endereço de IP

Endereços IP são seus endereços de “Protocolo de Internet”. Este é o endereço


exclusivo atribuído à atividade online do seu computador. Continuando com o modelo
de rede dos correios, pense no seu endereço IP como o endereço de retorno no
canto do envelope - ele permite que a rede e o site ou servidor que você está
acessando saibam que é o seu computador específico que está acessando. e
permitindo que o servidor envie as informações adequadas conforme solicitado de
volta para você. Sem que esse endereço seja bem fornecido a você, é improvável
que as informações que você solicitou cheguem até você, apesar da necessidade.

Esses endereços IP não são estáticos com base no computador; em vez disso, eles
são fornecidos pelo provedor de serviços de Internet (ISP) para você. Como o ISP
atua como gateway da sua LAN para a Internet, ele também marca suas solicitações
com o endereço IP atribuído à sua casa ou ponto de acesso. Ele permite que o
computador faça essa conexão com a Internet e, em seguida, conceda acesso a ela.
Ele é capaz de se conectar ainda mais através do uso de protocolos de Internet, que
serão discutidos posteriormente neste capítulo. Isso significa que sempre que você
se conectar a um novo local da Internet, mesmo no mesmo computador, você
receberá um novo endereço IP. O wifi local do café lhe dará um endereço IP diferente
daquele que você tem em casa ou no trabalho, mesmo que todos os três tenham
sido acessados no mesmo computador. Isso ocorre porque, quando você está em
um novo local da Internet, você acessa a Internet de um novo local. Suas informações
precisam seguir um caminho totalmente diferente para chegar até você com base
em sua localização.

Endereço IP público vs. privado

Os endereços IP vêm principalmente em duas formas – público e privado. Cada um


deles é atribuído de uma maneira ligeiramente diferente para permitir o acesso
necessário ao local onde deveriam ir. O endereço IP público é o discutido
anteriormente – é aquele projetado para permitir o acesso à Internet fornecido pelo
ISP. É globalmente único e pode ser descoberto com bastante facilidade, seja por
meio de comandos no terminal ao usar sistemas Linux ou pela internet. Basta
pesquisar “Qual é o meu endereço IP” online para fornecer seu endereço IP público
para você.
Machine Translated by Google

Um endereço IP privado age de forma semelhante: fornece um endereço específico


ao computador, mas, neste caso, é usado em computadores dentro de um espaço
ou rede privada, sem nunca expor esse dispositivo específico. Pense em uma LAN
– você pode ter vários computadores na mesma rede. Neste caso, todos os
computadores individuais conectados à sua rede privada possuem endereços IP
privados. Esses endereços IP não estão vinculados à Internet, mas o ponto de
conexão, provavelmente um roteador, é capaz de enviar informações para o
endereço IP privado correto. O roteador, então, obtém o ID público, enquanto os
computadores conectados ao roteador obtêm os privados.

Atribuindo um endereço IP
Há também um terceiro tipo de endereço IP: o endereço IP estático. Este endereço
IP permitirá que você use vários serviços de rede sem a necessidade do endereço
IP do sistema que hospeda os serviços. Isso pode ser feito de várias maneiras,
como vincular o endereço MAC a um endereço IP ou configurar um em uma linha
de comando ou em um gerenciador de rede.

Quando desejar fazer isso manualmente, você precisará verificar o roteador que
está usando. De modo geral, os roteadores usarão seus próprios métodos para
bloquear e vincular endereços IP e você deve sempre verificar o manual do roteador
que está usando. A maneira como isso funciona é vinculando diretamente o
endereço MAC ao endereço IP. O endereço MAC é o endereço de controle de
acesso à mídia – é um identificador colocado em um dispositivo, definindo-o
exclusivamente. Isso é permanente e atribuído ao controlador de interface de rede
(NIC) desse dispositivo específico. Isso significa que o item sempre terá o mesmo
endereço MAC, não importa quantas vezes ele seja redefinido ou alterado
diretamente para os padrões de fábrica.

Quando você torna o endereço IP estático, o que você faz é atribuir diretamente
esse endereço MAC específico a um endereço IP específico. No entanto, este
método não será usado para criar um IP estático para uma máquina virtual.

No Kali Linux, criar um endereço IP estático é incrivelmente simples. Tudo que você
precisa fazer é usar as configurações do Network Manager. Ao fazer isso, você
deve ir até o canto superior direito da tela e clicar na seta do menu. Em seguida,
clique em “Wired Connected” seguido de “Wired Settings”.
Machine Translated by Google

Depois de fazer isso, você receberá uma nova janela. Você deverá ver ícones de
engrenagem – clique no ícone de engrenagem conectado ao menu Wired. Isso abrirá outra
janela, na qual você escolherá a guia IPv4. Você pode então mudar o método IPv4 de
automático para manual, seguido de inserir o IP estático desejado que você gostaria de
implementar.

Ao escolher o endereço desejado, lembre-se de que os primeiros sete dígitos do endereço


escolhido devem corresponder ao gateway padrão. Isso quer dizer que se o endereço IP
do gateway do roteador for 123.456.7.8, o IP selecionado deverá ter um endereço
123.456.7.** e você deverá registrar esse IP selecionado em Endereço neste menu.

Você também deve selecionar sua máscara de rede – para a maioria das pessoas, basta
digitar 255.255.255.0. Você deve então registrar seu Gateway, que deve corresponder ao
endereço IP do roteador. Isso leva às seguintes configurações:

Ao alinhar essas configurações, você pode optar por definir quaisquer configurações de
DNS, se desejar, embora isso não seja necessário. Depois de terminar de configurar o
endereço, máscara de rede e gateway, você pode clicar em aplicar.

Para garantir que você tenha o endereço IP do roteador, tudo que você precisa fazer é
digitar o comando:

ip ro

Se você observar a resposta “default via”, você terá o endereço IP do seu roteador.
Machine Translated by Google

Por último, para aplicar todas as alterações ao endereço IP, você deve reiniciar a rede.
Você pode fazer isso com o seguinte comando no terminal:

sudo systemctl reiniciar NetworkManager

Supondo que você já esteja familiarizado com o Linux e com os princípios básicos de
seu uso, você sabe que sudo é o comando que aciona o sistema para contornar
quaisquer restrições administrativas, desde que você tenha sido definido como usuário sudo.
Se você achar que não está familiarizado com esse processo, poderá se beneficiar
procurando um guia para iniciantes em Linux antes de prosseguir com o livro.

Com o comando sudo inserido, agora você pode parar para verificar seu IP local atual
para ter certeza de que suas alterações foram recebidas e feitas. Você pode fazer isso
com o seguinte comando:

ip um

Você poderá então ver qual é o endereço IP do seu sistema. Se corresponder ao que
você tentou definir, você conseguiu definir seu próprio endereço IP.

Camadas de Protocolo

Conforme brevemente mencionado anteriormente, a Internet é administrada por


protocolos. Este protocolo possui cinco camadas distintas que se unem para criar uma
pilha de protocolos da Internet. As primeiras quatro camadas da pilha de protocolos
da Internet estão contidas no modelo TCI/IP. Ao compreender como essas camadas
funcionam, você poderá ver exatamente como as pessoas e os sistemas interagem
com a Internet como um todo. Esta seção apresentará as camadas da Internet, bem
como os métodos de acesso a elas.

Protocolo de Internet (IP)

O Protocolo da Internet (IP) é o principal protocolo que determina como as


comunicações são gerenciadas pela Internet. Explica como os datagramas, as
informações que o seu computador envia ao solicitar informações adicionais, são
retransmitidas através de redes e limites. Seu principal
Machine Translated by Google

A função é rotear informações, o que permite que as informações sejam transferidas,


o que cria a Internet como um todo.

O IP tem a tarefa de transferir pacotes, pequenas parcelas de informações que


devem ser transmitidas, do host de origem para o host de destino. Para isso, utiliza
endereços IP, fornecendo-lhes os cabeçalhos dos pacotes.
Embora o IP já não tivesse conexão, ele também foi usado como base do Programa
de Controle de Transmissão que eventualmente se tornou o Protocolo de Controle
de Transmissão (TCP). Por esse motivo, às vezes você verá o IP referido como
TCP/IP, como será discutido na próxima seção.

O IP começou como IPv4 (Internet Protocol Versão 4), embora esteja começando a
ser substituído pelo IPv6.

Em última análise, o IP é responsável por diversas funções. Ele pode ser dividido
em quatro funções distintas – aplicação, transporte, internet e vinculação de dados.
Há também uma quinta camada para a transmissão de dados e pacotes – a camada
física, embora o modelo TCP/IP não abranja o físico.

O modelo TCP/IP
O modelo TCP/IP é uma das especificações do IP – é a lista definitiva de regras
sobre como a comunicação deve ocorrer entre computadores em uma rede. Ele
dita o padrão de formatação dos dados, permitindo que todos os sistemas utilizem
os mesmos padrões. Essencialmente, o modelo TCP/IP permite que todos os
sistemas, independentemente de sua origem, acessem a mesma Internet.
Machine Translated by Google

Isso é feito criando datagramas padrão – esses datagramas têm dois componentes.
Eles têm um cabeçalho e uma carga útil. O cabeçalho inclui o endereço IP de origem,
o endereço IP do destino e quaisquer outros metadados necessários para garantir que
todas as informações sejam recebidas exatamente onde deveriam. A carga útil então
são os dados que serão entregues à fonte que precisa recebê-los. Quando a carga útil
e o cabeçalho são aninhados no que é chamado de pacote, o processo é conhecido
como encapsulamento.

Com a pilha IP, existem cinco camadas distintas, conforme mencionado anteriormente.
As primeiras quatro camadas são relevantes para o modelo TCP/IP. A primeira
camada, a camada física, é responsável pela codificação e transmissão de dados de
uma fonte para o meio de comunicação de rede adequado. Ele usa dados chamados
bits que são enviados da camada física, que a camada física do destino receberá.
Essencialmente, a primeira camada pega a entrada que você coloca no computador,
por meio de cliques e pressionamentos das teclas do teclado em bits, e os codifica.
Esse

Em seguida, você passa pela camada de enlace de dados – durante essa camada, os
pacotes que foram previamente codificados são transferidos da camada de rede para
dois hosts separados. Esta transmissão de pacotes às vezes é controlada pelo
Machine Translated by Google

driver de dispositivo de software em uma placa de rede ou com firmware, e diferentes


protocolos terão diferentes métodos de uso. Na Internet de banda larga, por exemplo,
o acesso requer PPPoE como protocolo necessário, embora uma rede local com fio
utilize um cabo Ethernet. As redes sem fio locais, por outro lado, usarão o IEEE
802.11.

Da camada de enlace de dados, você passa para a camada de rede ou Internet. É


aqui que os dados são realmente retirados da rede de origem e viajam até o destino.
Normalmente, isso é conseguido através da passagem do pacote de rede para rede,
para rede, um processo conhecido como interligação de redes, e é aqui que o IP se
torna relevante. Esta etapa envolve dados que vão de uma origem até o destino.

Uma vez que os dados são enviados ao destino, no entanto, ainda existem mais
duas camadas antes que possam ser acessados. A próxima camada é a camada de
Transporte – sua responsabilidade é permitir que a mensagem seja transferida. Isso
geralmente ocorre de duas maneiras: através do protocolo de controle de transmissão
ou através do User Datagram Protocol (UDP).

TCP como sistema de comunicação refere-se ao protocolo de comunicação orientado


à conexão que permite a troca de mensagens pela Internet. Geralmente considerado
confiável graças ao fato de que existem várias verificações de erros diferentes para
garantir que tudo seja traduzido e transmitido de forma eficaz. Ela é primeiro
ordenada em pacotes e numerada e, em seguida, a informação é enviada ao
destinatário e requer uma resposta ao remetente para confirmar o recebimento da
mensagem em primeiro lugar. Se a resposta do receptor não for precisa, a mensagem
será reenviada adequadamente para garantir que os dados e pacotes corretos sejam
enviados de uma forma que seja lida corretamente. Esta é a forma mais comum de
comunicação e transmissão de dados pela Internet.

O UDP, por outro lado, permite uma transmissão mais rápida de dados.
Infelizmente, a transmissão mais rápida de dados tem um custo: precisão.
A verificação de erros é eliminada e, em vez disso, concentra-se no envio de dados
da forma mais rápida e precisa possível. Porque esperar pelo envio dos dados pode
levar tempo, latência ou defasagem entre o que foi solicitado e o que foi feito. Em
alguns casos, as pessoas podem preferir sacrificar a precisão e a segurança em
favor da velocidade do UDP. Ambos estes
Machine Translated by Google

Os protocolos funcionam através do desenvolvimento além do protocolo IP – eles


efetivamente enviam pacotes de informações para um endereço IP que foi enviado
via TCP ou UDP.

Ameaças à segurança da rede


É claro que com a criação de redes também vêm ameaças. Nada de bom pode ficar
livre de danos ou problemas, e a segurança de dados e de rede não é exceção.
Cada adição de uma fonte ou nó extra pode levar a links mais fracos – há mais
buracos que poderiam ser potencialmente perfurados.
Há mais chances de fracasso. E é exatamente isso que procuram aqueles que
invadem redes, hackeando-as ou explorando-as. Eles podem representar uma séria
ameaça à segurança da rede e é importante saber e reconhecer isso.

Existem diversas formas diferentes de hacking e tentativas de exploração de


tecnologia, e esta seção abordará algumas delas. Alguns deles podem parecer
familiares do capítulo anterior, enquanto outros são novos. Esta ainda não é uma
lista extensa de todas as maneiras pelas quais é possível explorar ou invadir um
sistema, embora seja importante compreendê-las. Você não pode realmente entender
a rede se também não compreender os riscos e as ameaças.

Homem no meio
Conforme discutido anteriormente neste livro, o ataque man-in-the-middle é um
ataque no qual o invasor intercepta secretamente e às vezes altera a comunicação
entre um host e um destinatário. O anfitrião e o destinatário pensam que são capazes
de se comunicar livremente ou que estão falando diretamente um com o outro, mas
o MITM está ouvindo – eles são capazes de fazer com que duas partes se sintam
seguras e protegidas, ao mesmo tempo em que coletam informações valiosas que
podem ser usado posteriormente de alguma forma, formato ou forma. Isso geralmente
é feito através do invasor que consegue obter acesso a um dos IDs de transmissão
que devem ser exclusivos entre os dois usuários finais.
Machine Translated by Google

Às vezes, isso ocorre quando alguém dentro do alcance do Wi-Fi consegue se inserir
na conexão e começa a interceptar informações. É mais bem-sucedido quando o
invasor consegue personificar ambos os terminais, certificando-se de que nenhuma
pessoa ou usuário levantou qualquer suspeita.

Ataques
cibernéticos Os ataques cibernéticos são tentativas maliciosas intencionais de
roubar informações ou de outra forma violar um sistema de informação de outra
pessoa. Normalmente, isso ocorre porque alguém vê algum tipo de valor em interferir
deliberadamente no computador ou na rede de outra pessoa. As razões para os
ataques cibernéticos têm aumentado ultimamente, com as pessoas às vezes vendo-
os como ataques instantâneos – eles podem invadir intencionalmente um sistema
para pedir um resgate ou oferecer-se para corrigir a exploração descoberta por um
preço. Não importa a situação, estes ataques cibernéticos são inegavelmente
prejudiciais. Eles podem ter sérias implicações financeiras, ao mesmo tempo que
colocam em risco dados confidenciais. Isso pode acontecer de forma ativa ou passiva.

Um ataque cibernético ativo envolve alguém tentando intencionalmente entrar em um


sistema por algum motivo ou obter algo. O hacker está deliberadamente tentando
fazer alterações no sistema, por algum motivo, nos dados que estão indo em direção
ou longe do indivíduo. Estes incluem o uso de ataques de máscaras, como fingir ser
um indivíduo que tem privilégios maiores do que os que são realmente concedidos
ou autorizados em primeiro lugar.
Machine Translated by Google

Um ataque cibernético passivo, por outro lado, ocorre quando um sistema de rede é
monitorado e verificado para encontrar vulnerabilidades abertas. Em vez de tentar
alterar as informações de alguma forma ou alterar a rede, as informações são
simplesmente usadas para monitorar os dados de alguma forma. É levado para uso,
mas na verdade não é alterado.

Isto é o que alguém faria se pretendesse vazar informações importantes para


chantagear ou revelar algo que de outra forma teria permanecido privado. Pense em
um hacktivista que usaria voluntariamente essas informações para revelar algo.

DOS e DDOS
Um ataque de negação de serviço é um ataque projetado para causar sérios
problemas à rede. O objetivo disso é inundar uma rede específica para travá-la.
Assim como um engarrafamento aumenta quando muitas pessoas estão em uma
estrada que é pequena demais para acomodá-lo, a rede não será capaz de gerenciar
muitas solicitações ao mesmo tempo se não for grande o suficiente para fazê-lo.
Geralmente, isso é feito com uma máquina invasora capaz de executar um programa
cliente, que então inunda constantemente o servidor alvo com pings e solicitações
para paralisá-lo. À medida que a rede continua tentando responder a tempo, ela fica
cada vez mais lenta até parar completamente.

DDOS (negação de serviço distribuída) é exatamente o mesmo, embora faça uso de


várias máquinas invasoras em vez de uma única. Ao fazer isso, redes maiores podem
ser comprometidas e prejudicadas. Pense nas implicações disso acontecer – um site
que precisa estar funcional não conseguirá mais. Um banco que está paralisado e
não consegue lidar com nenhum tráfego pode correr o risco de as pessoas não
conseguirem acessar os fundos. Um sistema hospitalar incapaz de aceder e gerir a
informação dos seus pacientes não seria capaz de aceder a registos e históricos
médicos ou de ver se as pessoas tiveram recentemente acesso à medicação
necessária ou a outros tratamentos. Este tipo de ataque pode ser absolutamente
devastador, dependendo do contexto.

Falsificação de MAC
Como você já leu, os endereços MAC geralmente são permanentes e codificados na NIC de um
dispositivo. No entanto, existem maneiras de editar e alterar isso. Isso é conhecido como falsificação de MAC.
Machine Translated by Google

Quando a falsificação de MAC é usada, o sistema operacional alvo ou com o qual interage pode ser
enganado e acreditar que o endereço MAC é na verdade algo totalmente diferente. Efetivamente, isso
permite que a identidade de um computador seja alterada e ocultada. Na maioria das vezes, isso é feito
porque o indivíduo deseja ignorar as listas de controle de acesso. Caso tenham sido banidos de um
servidor, por exemplo, eles conseguem contornar essa lista alterando-a. Eles também podem se passar
por outro dispositivo para obter acesso não autorizado a um sistema por meios semelhantes.

A falsificação de MAC também pode ser feita para ocultar a identidade – se você desejar usar uma
conexão não criptografada, como uma linha criptografada IEEE, não será possível impedir que a rede Wi-
Fi forneça a outras pessoas acesso ao endereço MAC. Ao falsificar seu endereço, você evita ser rastreável.
Você terá escondido essa identidade e, ao fazê-lo, poderá ficar invisível, por assim dizer. Seu verdadeiro
endereço MAC foi ocultado e, por causa disso, você pode escapar da detecção pelas autoridades.
Machine Translated by Google

Capítulo 3: Kali Linux: O Hacker


Sistema operacional

Neste ponto, você deve ser capaz de ver que a segurança cibernética é crucial e
que existem boas razões para aprender como hackear, a fim de identificar quaisquer
elos fracos em seus sistemas e protegê-los de danos.
É aqui que entra o Kali Linux. Agora, como um aviso rápido antes de continuar,
nunca é recomendado que você use esses métodos para danificar ou sabotar
deliberadamente outra pessoa ou sua conexão. Você não deve usar as ferramentas
do Kali Linux para fins ilegais.
No entanto, se decidir fazê-lo, tenha em mente que você será inteiramente
responsável por suas próprias ações. Este livro não tolera nem incentiva o uso de
hackers para fins nefastos. Se você decidir utilizar essas habilidades, o motivo para
fazê-lo deve ser o desejo de proteger ou defender sua própria segurança.

Este capítulo apresentará o Kali Linux de maneira adequada - você aprenderá antes
de tudo o que é o Linux e, a partir daí, aprenderá sobre o Kali Linux, a distribuição
específica do Linux. Você aprenderá como instalar o Kali Linux, o que vem com o
Kali Linux e algumas das informações e comandos específicos comuns do Kali Linux
que você pode precisar saber. Ao final deste capítulo, você terá um conhecimento
prático do que é Kali Linux e também de como instalá-lo em seu computador.

O que é Linux?

Primeiro, você deve entender o que é o Linux em si, já que Kali Linux é, em última
análise, uma distribuição Linux (coloquialmente chamada de distro). Se você já
estiver familiarizado com o Linux, poderá pular esta seção, pois ela provavelmente
não fornecerá mais nada. Se você não está familiarizado com o Linux, leia esta
seção e lembre-se de que esta não é uma distribuição que deve ser encarada
levianamente ou tratada como um brinquedo. Kali Linux é perigoso e não deve estar
nas mãos de alguém que não será capaz de se proteger contra danos graves.
Machine Translated by Google

O próprio Linux é um sistema operacional – ele foi projetado para ser de código
aberto. Isso significa que o código em si é facilmente alterável e de distribuição
gratuita. Ele foi intencionalmente projetado para ser flexível e capaz de ser alterado
de diversas maneiras diferentes. O código é de código aberto, o que significa que o
acesso para alterar o mainframe e o código base é bastante simples e, em muitas
formas de Linux, se você simplesmente conseguir obter acesso ao terminal, poderá
instruí-lo a fazer qualquer coisa— mesmo que o que você disser seja prejudicial ou
arrisque travar todo o sistema que você instalou.

Quando você aprende a usar o Linux, você recebe controle livre sobre o sistema.
Mais especificamente, porém, o Linux descreve o próprio kernel e não o sistema
operacional real. O kernel é a base que permite que o sistema operacional do
computador inicialize o hardware, permitindo que a interação inicial entre o sistema
operacional e o usuário comece a construir a partir dele. Algumas formas de Linux,
como Mint ou Ubuntu, são projetadas para serem prontamente acessíveis, facilmente
compreendidas e construídas para serem gerenciadas e utilizadas com facilidade.

Outras distribuições do Linux são muito mais técnicas e exigem que você tenha muito
mais conhecimento de programação para realmente comandá-las. São distribuições
como o Gentoo, que é amplamente conhecido como um meme da Internet, assim
como excluir o System 34 do Windows para fazer com que tudo trave. Outros
formulários ainda trazem consigo diversas ferramentas e funções às quais você não
necessariamente teria acesso de outra forma, como várias das ferramentas baseadas
em penetração do Kali Linux. É importante que você entenda o que pode e o que não
pode fazer, quais são suas próprias capacidades e como você pode interagir com os
sistemas antes de decidir instalar o Kali Linux.

Se até agora você estava perdido com a conversa sobre kernels e distribuições ou
com a ideia de codificar seus próprios programas e comandar seu computador, por
favor pare de ler agora e procure um livro para iniciantes antes de revisitá-lo. Esses
conceitos são cruciais e espera-se que você tenha algum nível de familiaridade com
o sistema daqui em diante, seja você iniciante ou não. Lembre-se de que você pode
causar danos irreparáveis se tentar usar este sistema sem saber totalmente o que
está fazendo – você deve ser cauteloso e cuidadoso para evitar um desastre causado
por você mesmo.

O que é KaliLinux?
Machine Translated by Google

Kali Linux é especificamente uma distribuição Linux baseada em Debian.


Desenvolvido pela Offensive Security, o Kali Linux foi projetado para ser um treinador
líder em profissionais de segurança da informação. Com as ferramentas utilizadas
no Kali Linux, você pode começar a hackear com relativa facilidade se souber o que
está fazendo – ele traz consigo várias ferramentas que você achará necessárias e
também permite treinamento e certificação.
Na verdade, se você deseja ser um técnico ou profissional de segurança da
informação, provavelmente será necessário ter uma certificação obtida com base
nos cursos ministrados pela Offensive Security.

Ao usar o Kali Linux, você obtém acesso às ferramentas projetadas para ajudá-lo
nas tarefas de segurança da informação. Você poderá participar de testes de
penetração, pesquisas de segurança e muito mais. Como o Kali Linux é gerenciado
e mantido pela Offensive Security, um dos principais instrutores em segurança
cibernética, você sabe que as ferramentas fornecidas são muito parecidas com
aquelas que você enfrentará no futuro.

Em particular, esta distribuição do Linux foi projetada para atender às necessidades


dos profissionais de testes de penetração – por ser voltada para profissionais, ela
pressupõe que você já esteja familiarizado com o Linux como sistema operacional.

O Kali Linux possui várias características importantes que o tornam útil no mundo
do hacking – essas ferramentas o tornam valioso tanto para aqueles interessados
em hackear para fins nefastos quanto para aqueles que estão interessados em
melhorar a segurança em geral. No entanto, essas características tiveram um custo.
Vários dos benefícios comumente conhecidos do uso de distros Linux foram
alterados para tornar o Kali Linux uma ferramenta mais valiosa. Afinal, a beleza do
Linux é que ele é capaz de fazer qualquer coisa que você seja capaz de programar,
para que você possa criar um sistema operacional que atenda exatamente às suas
necessidades. Agora, vamos analisar essas mudanças importantes na distribuição
padrão do Linux.

É acesso root de usuário único.

Lembre-se de que o acesso root se refere ao fato de alguém ter ou não autoridade
administrativa naquele dispositivo. O usuário root não tem salvaguardas, não é
informado sob nenhuma circunstância e não pode ser substituído pelo sistema. Na maioria
Machine Translated by Google

Em casos com vários outros sistemas Linux, é altamente recomendável evitar usar a conta de
acesso root e, em vez disso, configurar outra com privilégios sudo. No entanto, isso não é
possível com o Kali Linux – o sistema operacional não permite que nenhum outro usuário ou
acesso root seja deixado para trás. Isso significa que o sistema operacional, se você não souber
o que está fazendo, pode ser completamente destruído com apenas um ou dois erros de
digitação ou sem saber o que está fazendo. Devido à natureza das ferramentas e ao cenário de
uso do Kali Linux, quase tudo o que você fará seria considerado privilégio mais alto e você teria
que comandar constantemente o sistema com sudo ou, de qualquer maneira, precisaria
permanecer na conta de usuário root.

Como ter que evitar a conta root seria um fardo, o Kali Linux mudou para permanecer
constantemente com acesso root. Este é mais um motivo pelo qual esta não é uma distro para
iniciantes.

Os serviços de rede estão desativados.

Embora os serviços de rede geralmente sejam habilitados em distribuições Linux, no Kali Linux
existem ganchos de sistema que deixam os serviços de rede desabilitados por padrão. Este é
um método de segurança – permite que os serviços permaneçam seguros e protege a
distribuição independentemente dos pacotes instalados.
Outras formas de rede, como Bluetooth, também estão desativadas.

O kernel do Linux é personalizado.


Machine Translated by Google

Embora quase todas as outras distribuições Linux estejam interligadas pelo kernel
Linux comum, a distribuição Kali Linux não usa esse kernel exato - aquele que é
utilizado no Kali Linux foi personalizado, permitindo que seja corrigido para injeção
sem fio, ainda de outra maneira. que é capaz de atuar como uma ferramenta útil para
testes de penetração.

A lista de repositórios é mínima.

Como o Kali Linux foi projetado para ser seguro, há uma lista mínima de fontes de
software que têm permissão de acesso ao sistema. Embora muitas pessoas possam
sentir a necessidade ou a tentação de adicionar sistemas que não estão autorizados
ou que estão na lista de repositórios, isso pode causar uma grande probabilidade de
travamento total da instalação do Linux. Por esse motivo, você deve reconhecer que
o Kali Linux não é tanto um sistema operacional do dia-a-dia, mas uma ferramenta
para treinamento e cenários de uso muito específicos. Se você não fizer uso dele em
um desses cenários, como testes de penetração ou praticar suas habilidades,
encontrará pouca utilidade para o sistema. Você não usará isso para navegar
diariamente na web e tentar responder e-mails ou jogar videogame – tentar fazer isso
corre o risco de travar tudo.

Devo usar Kali Linux?


Você pode esperar que um livro escrito sobre Kali Linux apresente todos os motivos
pelos quais você deveria, de fato, usar esta distribuição. No entanto, devido aos
riscos, à natureza especializada e única desta distribuição e às limitações que a
acompanham, é importante analisar as razões pelas quais o Kali Linux provavelmente
não é para você.

Esta distribuição foi projetada especificamente para testadores profissionais e


especialistas. É difícil aprender e não lhe dará acesso para fazer o que quiser. Apesar
de ser de acesso aberto, é apenas até certo ponto – há aspectos desta distribuição
que estão bloqueados por motivos de segurança e você não poderá alterá-los. Os
pacotes nos repositórios, por exemplo, devem ser assinados pelo comitê, e esses
repositórios são upstream. É bem testado e a equipe de desenvolvimento é confiável
e respeitada. No entanto, se você deseja um sistema ao qual tenha acesso total, o
Kali Linux não é para você.
Machine Translated by Google

Sim, existe algum grau de personalização, mas você não poderá instalar apenas
nada. Você deve instalar a partir de uma lista escolhida de repositórios se desejar que
eles funcionem imediatamente. Se você tentar instalar algo que não está nessa lista,
terá que passar por vários obstáculos para tentar consertá-lo e, mesmo assim, é
provável que você cause mais problemas do que corrigiu. Para navegação e uso
regulares, Kali Linux não é adequado para você.

Se você já está familiarizado com Linux e já está confortável com administração de


rede ou administração de sistema e deseja uma ferramenta para aprender mais, este
pode ser o sistema operacional certo, mas nunca deve ser tratado como a primeira
introdução ao Linux. Especialmente porque qualquer tentativa não autorizada de
penetrar em uma rede pode não apenas causar danos significativos, mas também
acarretar sérios problemas legais ou pessoais, isso só deve ser usado por pessoas
que sabem o que estão fazendo e que não têm probabilidade de destruir
acidentalmente a rede ou o acesso de outra pessoa. serviço. Novamente, porque é
tão importante reiterar, se você é um iniciante, procure uma distribuição Linux que
seja projetada para ser mais fácil – Ubuntu, Mint e Debian são todos pontos de partida fantásticos.

Claro, se você já é um testador de penetração ou está estudando ativamente a


penetração para se tornar certificado, o Kali Linux é exatamente certo para você.
Você não pode superar as ferramentas projetadas por profissionais para profissionais,
nem o preço gratuito desse conjunto de ferramentas.

Recursos do Kali Linux


Se você decidiu que o Kali Linux pode ser adequado para você, existem várias
ferramentas que podem ser relevantes para você. Esta seção irá guiá-lo através dos
recursos mais comuns do Kali Linux para que você possa começar a entender melhor
se isso será bom para você usar.

Centenas de ferramentas de teste de penetração


O Kali Linux possui um enorme repositório de ferramentas que podem ser usadas
para testes de penetração, todas verificadas e testadas para serem seguras.
Cada ferramenta fornece uma finalidade que será útil ao seu trabalho de penetração
e controle de sistemas.

Livre
Machine Translated by Google

Esta é talvez uma das razões mais convincentes para usar o Kali Linux – se ele servir para
você, é totalmente gratuito. Você nunca será obrigado a pagar para ter acesso a este conjunto
de ferramentas, o que significa que não há licenças contínuas para manter.

Seguro

O Kali Linux foi desenvolvido por um pequeno grupo confiável para interagir com os repositórios
e ainda possui diversos protocolos para ajudar a garantir que o Kali Linux seja o mais seguro
possível. Isso significa que qualquer pacote enviado para download será assinado pelos
desenvolvedores que o comprometeram e construíram, permitindo o rastreamento da
responsabilidade caso algo dê errado.

Customizável

Embora o Kali Linux tenha cenários de uso muito específicos que são incentivados e certos
usos do sistema sejam fortemente desaprovados, todo o sistema foi construído para ser
personalizável. Você pode tentar alterar o Kali Linux para atender às suas necessidades,
mesmo que essas necessidades vão contra o uso recomendado.
Você pode ter complicações, mas é capaz de tentar fazer tudo o que achar necessário.

Suporte multilíngue Ao contrário de

muitas outras ferramentas de penetração, o Kali Linux permite um verdadeiro suporte


multilíngue. Em vez de ter que operar e aprender tudo em inglês, as pessoas podem usar o
Kali Linux em seu próprio idioma nativo.

Árvore Git de código aberto

Todo o código-fonte está disponível para as pessoas verem ou ajustarem de acordo com suas
necessidades específicas. As pessoas podem acompanhar o desenvolvimento e os códigos-
fonte para ter certeza de que conseguirão exatamente o que desejam e precisam, com as
poucas limitações listadas na seção anterior.

Compatível com ESF


Machine Translated by Google

Kali Linux permite que usuários Linux localizem seus arquivos e bibliotecas graças
ao familiar padrão de hierarquia de sistema de arquivos que sempre foi usado. Isso
significa que se você já está familiarizado com o Linux, usá-lo terá um obstáculo a
menos para superar.

Suporte a dispositivos sem


fio Kali Linux foi projetado para suportar uma ampla gama de dispositivos sem fio,
permitindo que seja compatível com USB e outros dispositivos sem fio com
facilidade. Isso permite um acesso mais fácil às informações e à transmissão de
informações.

Kernel personalizado

Como os testadores de penetração precisam ser capazes de fazer avaliações sem


fio, o kernel Linux no Kali estará sempre atualizado com todos os patches mais
recentes para auxiliar no ato de injeção em outros sistemas.

Como instalar o Kali Linux

Neste ponto, você deve ter uma boa ideia se a instalação do Kali Linux irá beneficiá-
lo. Se você acha que é, de fato, o que é certo para você depois de analisar tudo
sobre o sistema operacional, então é hora de começar a discutir o processo de
instalação do sistema operacional. A instalação é o primeiro passo para poder
utilizar o sistema operacional Kali Linux e pode ser feita de várias maneiras. Se
você estiver instalando o Kali Linux de alguma forma que não seja o método de
instalação tradicional de instalação do sistema operacional Kali Linux em seu
computador ou se você acha que executará uma máquina virtual, talvez seja melhor
acessar o site oficial do Kali Linux e olhando os guias e tutoriais que eles têm
disponíveis.

O que você precisa para instalação

Quando estiver pronto para instalar, você deve certificar-se de ter tudo o que
precisa. Isso pode variar muito dependendo do sistema que você está usando.
Aqueles que executam Linux provavelmente já têm tudo o que precisam instalado,
mas se você estiver executando macOS X ou Windows, você está
Machine Translated by Google

será necessário instalar o GPG adequado para o seu sistema operacional


específico.

De qualquer forma, se você acessar a biblioteca de documentação oficial do Kali


Linux Kali Docs, poderá acessar as instruções para baixar as imagens oficiais do
Kali Linux. Na parte inferior da página, ambos os links são fornecidos para você
baixar a versão provadora do GPG.

Depois de instalar o GPG, você precisa baixar e importar sua cópia da chave
oficial do Kali Linux. Você fará isso com o seguinte comando:

$ wget -q -O - https://archive.kali.org/archive-key.asc | gpg --importar

Em resposta, você receberá um número chave. Para verificar se sua chave foi
instalada, você deve tentar mais um comando:

gpg --impressão digital 44C6513A8E4FB3D30875F758ED444FF07D8D0BF6

Contanto que você não encontre nada informando que há um erro, você deverá
verificar se possui uma chave, bem como um limite de tempo durante o qual a
chave é eficaz.

Etapa 1: obter imagens oficiais do Kali Linux

Ao instalar seu sistema operacional, você precisa de um arquivo ISO – isso


requer que você tenha uma unidade USB ou disco rígido ou algum outro método
de interação com o computador no qual está instalando o Kali Linux. Você
precisará ter a imagem no formato de 32 ou 64 bits, dependendo da arquitetura
do sistema que está usando. Quando você precisar saber qual sistema está
executando e atualmente no Linux ou OS X, você pode inserir um comando no
terminal para obter o resultado. Você entrará em:

sem nome –m

e depois de fazer isso, você receberá a resposta “x86_64”, significando que você
está executando um formato de 64 bits no momento, ou uma resposta “i386”
significando que você está executando um sistema de 32 bits. Você precisa ter
certeza de que o ISO escolhido é a versão correta.
Machine Translated by Google

Em um sistema Windows 10, você precisará pressionar o botão Iniciar e selecionar


Configurações> Sobre. Ao abrir as . configurações, você verá as especificações
do dispositivo à direita. Lá, você poderá ver se o seu sistema está executando um
sistema de 32 ou 64 bits.

Você poderá obter a imagem adequada em arquivos .iso/.img ou em


arquivos .torrent. Lembre-se de que isso é específico para um PC baseado em Intel.
Você também tem acesso a arquivos que permitirão executar o Kali Linux em uma
máquina virtual ou em outros formatos. Ao baixar o Kali Linux, certifique-se de
sempre fazer isso no site oficial do Kali Linux administrado pela Operational
Security. Fazer qualquer coisa diferente disso pode levar a problemas sérios, pois
você não tem mais garantia de que a instalação que está executando no momento
é segura e protegida. Você precisará garantir que o arquivo que está baixando é
seguro se for usá-lo para testar a penetração em seus próprios sistemas pessoais.

Etapa 2: verifique a imagem Kali

Antes de executar o Kali Linux Live, que será discutido em breve, você precisa
verificar novamente se possui o lançamento oficial e legítimo do Kali Linux, em
vez de algum tipo de versão hackeada ou alterada que foi distribuída em outro
lugar na Internet. . Você pode fazer isso simplesmente de três maneiras diferentes:

Baixe uma imagem ISO do espelho oficial de “downloads” do Kali


Linux e, em seguida, calcule o SHA256 enquanto compara-o com
aquele listado no site do Kali Linux. Você deve ser capaz de fazer isso
de forma bastante simples, mas isso também é potencialmente
vulnerável a explorações.

Baixe a imagem ISO por meio de um torrent e você também receberá


um arquivo com a assinatura SHA256 calculada. Você poderá então
usar o comando shasum se já estiver no
Machine Translated by Google

Linux ou OSX , ou em uma ferramenta do Windows para verificar se a


assinatura do arquivo corresponde à assinatura da outra pasta baixada.
Novamente, isso pode ser potencialmente vulnerável à exploração, já que
alguém poderia simplesmente fornecer números correspondentes apenas para
fazer com que pareça uma instalação legítima do Kali Linux, a fim de garantir
que você seja enganado.

A única maneira de ter o máximo de certeza possível é um pouco mais


envolvente – você precisará baixar o arquivo de assinatura em texto não
criptografado e a versão do arquivo que foi assinado com a chave privada
oficial. Então, você deve utilizar o GNU Privacy Guard. Isso verificará se a
combinação SHA256 e aquela nos arquivos de texto não criptografado
correspondem e garantirá que a versão assinada do arquivo com o hash
SHA256 também seja assinada corretamente com a chave oficial adequada.

Etapa 3: criar uma unidade USB inicializável do Kali Linux

Talvez o método mais rápido de colocar o Kali em funcionamento seja usar um USB
inicializável ao vivo. Essencialmente, o que você está fazendo é colocar o Kali Linux em
uma unidade USB e inicializá-lo a partir desse USB. Isso traz várias vantagens próprias,
como evitar qualquer tipo de destruição ou caos. Ao usar isso, você não está fazendo
nenhuma alteração no sistema que está usando – você está simplesmente executando-o a
partir do USB. Isso também traz à tona o fato de que ele é portátil e personalizável – você
poderá levá-lo com você para qualquer lugar e inicializá-lo a partir de qualquer computador,
e poderá criar seu próprio Kali ISO personalizado na unidade USB da mesma maneira. isso
será discutido aqui.

Para criar a unidade inicializável, você precisará ter uma cópia verificada do ISO, um
utilitário de imagem de disco (se estiver usando Windows, você pode baixar o Win32 Disk
Imager, ou se estiver no Linux ou OS X, você provavelmente já tem isso e tudo que você
precisa fazer é usar o comando dd para acessá-lo) e uma unidade USB ou um cartão SD,
desde que o sistema que você está usando permita acesso direto com qualquer um desses
métodos.
Seu armazenamento deve ter pelo menos 4 GB, sendo recomendado mais.
Machine Translated by Google

Crie o USB inicializável com Windows

Ao fazer isso em um computador Windows, você terá que seguir várias etapas que são
diferentes em comparação com se você estivesse executando uma máquina Linux ou OS X.

Conecte a unidade USB a qualquer porta USB disponível no computador e anote


o designador da unidade que foi definido para ela.
Com ele montado, inicie o Win32.

Selecione o arquivo ISO do Kali Linux que você está criando e confirme se está
substituindo a unidade USB adequada. Quando você tiver confirmado que está
correto, pressione o botão Escrever. Assim que terminar a imagem, ejete a
unidade USB e ela estará pronta para
usar.

Criando o USB inicializável com Linux No Linux, as

etapas são um pouco mais complicadas e você corre o risco de ter dificuldades ou sobrescrever
acidentalmente uma unidade de disco que não foi intencional. Você precisará ter certeza de
que está usando os comandos corretos para garantir que não está sobrescrevendo nada
acidentalmente.

Primeiro, você deve descobrir o caminho do dispositivo que usará para gravar a
imagem na unidade USB. Você deseja fazer isso sem o USB inserido naquele
momento. Dentro do terminal, você deseja escrever:

sudo fdisk -l

Você deve obter uma saída que mostre uma única unidade com três
partições.

Neste ponto, conecte seu USB à porta disponível e repita mais uma vez o
comando anterior de sudo fdisk -l e agora você deverá obter uma saída
semelhante mostrando um dispositivo extra este
Machine Translated by Google

tempo que não existia antes - desta vez, é a sua unidade USB.

Agora, você deve criar a imagem do arquivo ISO no dispositivo USB com
um comando semelhante ao que será fornecido a seguir. Este comando
assume que sua imagem ISO se chama “kali-linux-2017.1-amd64.iso”
e está atualmente no diretório de trabalho.
Também pressupõe que o nome da sua unidade USB seja “/dev/sdb” e
você desejará substituir o nome do arquivo e o nome da unidade, se
necessário. Você pode escolher o tamanho do bloco se quiser tentar
acelerar as coisas, mas este é o tamanho mais seguro que criou imagens
confiáveis. O comando aqui é:

dd if=kali-linux-2017.1-amd64.iso of=/dev/sdb bs=512k

O processo de imagem pode levar mais de 10 minutos, por isso seja


paciente enquanto espera por esse processo. Você não receberá nenhum
feedback sobre esse processo até que o sistema esteja concluído.

Quando terminar, seu dispositivo USB estará pronto para inicializar.

Criando um USB inicializável no OS X

Comece com a unidade USB desconectada. Abra o Terminal e digite o


comando:

lista questionável

Você deverá ver vários caminhos de dispositivos, assim como na


versão Linux. Você obterá informações sobre cada uma das partições e
todas as informações de que possa precisar.

Agora, conecte o dispositivo USB e execute novamente a lista diskutil.


Fazer isso agora apresentará uma nova unidade de disco. Agora você pode ver
Machine Translated by Google

uma nova unidade de disco que não estava presente antes, e é assim que
você sabe agora como endereçar o comando.

Agora, desmonte a unidade - desta vez, agiremos como se a unidade tivesse


o nome “/dev/disk6” para o exemplo. Seu comando será algo como:

diskutil desmontar /dev/disk6

Neste ponto, você precisa criar a imagem do arquivo Kali ISO para o
dispositivo com um comando como:

sudo dd if=kali-linux-2017.1-amd.iso of=/dev/disk6 bs=1m

Lembre-se de que não há garantia de que seu arquivo e sua unidade tenham os
mesmos nomes de arquivo. Você precisará alterá-los de acordo.

Novamente, não haverá feedback até que a unidade termine de carregar,


momento em que você terá um USB inicializável.

Neste ponto, você poderá usar qualquer uma das suas unidades USB para inicializar o
sistema operacional. Tudo o que você precisa fazer é abrir o menu de inicialização ao
iniciar o computador com o USB montado e selecionar Kali Linux.

Existem outros métodos que você pode usar para acessar o Kali Linux, como instalá-lo no
próprio computador, mas um dos métodos mais recomendados de acesso ao software é
através do uso do drive USB. Se você tiver interesse em baixar todo o sistema para o seu
hardware, fique à vontade para navegar no site oficial específico do Kali Linux para obter
mais acesso e informações para fazer exatamente isso.
Machine Translated by Google

Capítulo 4: Comandos Básicos do Linux

Deste ponto em diante, as informações que você obterá serão uma mistura de
informações práticas e informações que você poderá usar ativamente de alguma
forma. Este capítulo em particular fornecerá as informações necessárias para
começar a interagir com o Kali Linux. Você receberá uma lista dos comandos mais
comuns e básicos necessários.

Ao ler esses comandos, tente realmente se familiarizar com eles. Você quer ter
certeza de que entende o que eles são e como podem ser melhor usados para
beneficiá-lo. Se você puder fazer isso, você garantirá que também será capaz de
interagir com sua distribuição Linux, independentemente da sua escolha. Lembre-se
que com Kali Linux, você estará como usuário root por padrão e precisará tomar os
cuidados necessários. Ao usar vários desses comandos quando você não tem acesso
root, você se depara com problemas que o impedem de seguir em frente. Porém,
com Kali, se você já estiver no usuário root, o comando é executado instantaneamente,
mesmo que seja prejudicial. É por isso que a atenção aos detalhes, e uma quantidade
meticulosa deles, é crucial se você realmente deseja desenvolver suas habilidades
com o Kali Linux e se tornar hábil em testes de penetração e hacking.

O terminal
Se você está familiarizado com Linux e comandos básicos, também deve estar
familiarizado com o Terminal. É assim que você consegue interagir com o shell do
Linux, comandando-o para fazer o que você espera.
Basicamente, você inserirá informações no servidor e esperará que ele saia do outro
lado com a resposta adequada. Esta é a base dos comandos mais simples do Linux.

Para relembrar rapidamente, se já faz algum tempo, você estará emulando o terminal
em um ambiente gráfico para poder ver a entrada e a saída de uma forma que possa
ler e entender. Se você já possui Linux ou OS X, já tem acesso ao Terminal, podendo
também instalar outros. Se você possui Windows, pode instalar o PuTTY. O Kali
Linux também terá seu próprio terminal que você poderá acessar com facilidade.
Machine Translated by Google

Prompts de comando

Ao interagir com o Terminal, você usa prompts de comando ou prompts de shell


– provavelmente os verá usados de forma intercambiável ao ler vários guias.
Quando você estiver no terminal, há uma composição muito específica do prompt
que você verá. Será o nome de usuário do usuário, o nome do host do servidor, o
diretório em que você está e o símbolo do prompt. Na maioria dos casos, o
símbolo de prompt que você verá é $.

Efetivamente, então, se você for apelidado de hacker como seu usuário, e o servidor em
que você está hackeando e você estiver atualmente no diretório inicial padrão, você poderá
ver um prompt padrão de:

hacker@hacking:~$

No Kali Linux, entretanto, você está sempre conectado à conta de usuário root único. Você
verá o nome de usuário “root” em vez de “hacker” ou qualquer outro nome que possa estar
lá.

Executando os Comandos
Quando você quiser dar seus comandos, você deve especificar o que deseja de
uma forma que o sistema seja capaz de gerenciar adequadamente. Você pode
inserir um script, uma série de informações prescritas que farão com que o
sistema responda de uma maneira específica. Você também pode inserir seus próprios comando
Isto é o que será a maior parte deste capítulo atual: maneiras de interagir e comandar o
servidor.

Quando um comando está em execução, ele é chamado de processo. Quando esse


processo está acontecendo em primeiro plano, você deve esperar que ele termine antes
de fazer qualquer outra coisa. Esta é a maneira padrão de executar o programa.

Você também pode inserir seus comandos de duas formas: Com ou sem argumentos. Ao
inserir um comando sem argumento, você está inserindo um comando simples sem esperar
mais nada. Isso fará com que o computador envie exatamente o que você especificou ou
faça exatamente o que você disse. Se você escrever ls, por exemplo, de repente você terá
tudo listado na sua frente na tela – os arquivos e diretórios do diretório atual.
Machine Translated by Google

No entanto, um argumento procura alterar um pouco esse comando. Ao adicionar um


argumento, você adiciona uma condição extra – você pode dizer ao seu sistema para
abrir os arquivos de um diretório diferente. Você pode solicitar que seu sistema
desligue em 30 minutos, em vez de instantaneamente. Eles adicionam uma mudança
ao significado do comando original. Ao inserir um comando com argumentos, você o
inserirá em uma ordem específica de comando e, em seguida, na especificação ou
localização do que está executando.

Outra maneira comum de executar comandos é com opções – isso significa que eles
precisam seguir algum tipo de modificação. Isto é seguido por um - e uma letra que
informa ao sistema o que você precisa dele. Por exemplo, se voltarmos para ls, você
pode optar por adicionar algo mais a ele, como ls -l que informa ao seu sistema que
você deseja listar uma lista mais longa de permissões, incluindo muito mais detalhes
do que normalmente seriam incluído.

Você também pode misturar e combinar, para poder combinar suas opções e
argumentos - na verdade, é incrivelmente comum misturar os dois para executar o
comando correto.

A partir daqui, você receberá vários comandos no Linux que considerará úteis. Este
será um ótimo curso de atualização ou você não precisava dessas informações em
primeiro lugar. Se você não precisava dessas informações ou se sente confiante em
sua capacidade de navegar em um sistema Linux, sinta-se à vontade para parar aqui
e pular para o próximo capítulo. No entanto, se você não estiver totalmente confiante
em sua capacidade de navegar pelo software, pode ser inteligente pelo menos gastar
algum tempo lendo esta lista abrangente de comandos que foram fornecidos para
você.

Claro, você também pode voltar a essas informações mais tarde, se sentir que precisa
de um comando e quiser ter certeza de que será realmente capaz de aprender como
usá-los.

Arquivos

Os códigos nesta seção estão relacionados especificamente aos arquivos compactados


em seu sistema. Eles ajudarão você a interagir diretamente com os arquivos,
Machine Translated by Google

seja para acessar, mover ou interagir de outra forma com eles.

diretório tar cf archive.tar Isso criará um arquivo tar (archive.tar) que contém o
diretório.

Diretório tar cjf archive.tar.bz2 Semelhante ao acima, mas o arquivo tar será
compactado usando o formato bzip2.

Diretório tar czf archive.tar.gz Outra variação do primeiro comando. Ele criará um
tar compactado com gzip (archive.tar.gz).

tar xf archive.tar Este é o comando oposto ao anterior. Ele extrairá os dados de


archive.tar.

tar xjf archive.tar.bz2 Use isto para extrair dados de um tar compactado bzip2.

tar xzf archive.tar.gz O comando para extrair de um tar que foi compactado no
formato gzip.

Navegação no diretório

Esses códigos permitirão que você navegue pelo diretório de forma rápida e fácil. Ao
fazer isso, você poderá alternar de um espaço para outro sem precisar percorrer
manualmente seus diretórios, um de cada vez.

É mais fácil passar pelo hit com a navegação do diretório.

cd Você será movido para o diretório HOME.

cd É
.. semelhante ao anterior, mas possui dois pontos. Irá mover você um nível acima
na árvore de diretórios. Por exemplo, você está no diretório 2, que fica no diretório 1.
Você irá para o diretório 1 com este comando.

cd /etc Você irá para o diretório /etc.

Uso de disco
Esses comandos específicos estão diretamente relacionados ao uso do disco. Eles permitirão que você veja
todos os tipos de informações sobre o status atual do disco, o que pode ser extremamente necessário quando
você monitora seu sistema de perto.
Machine Translated by Google

df -h Você poderá ver o espaço usado e disponível em seus discos com este comando.

df -i Use isto para ver inodes usados e disponíveis em seus sistemas de arquivos (montados).

du -ah Mostrará o tamanho do arquivo para todos os objetos e diretórios em um formato legível
por humanos (bytes, megabytes, gigabytes).

du -sh Semelhante ao acima, mas exibirá apenas as informações do diretório em que está sendo
trabalhado no momento.

fdisk -l Quando precisar ver os tamanhos e tipos de partição de seus discos rígidos, use este
comando.

Comandos de arquivo e diretório Os

comandos nesta seção o ajudarão a interagir diretamente com o arquivo e o diretório em seu
sistema. Eles permitirão todo tipo de acesso extra e usabilidade de seus arquivos e permitirão que
você aproveite ao máximo seu sistema e eficiência.

cp fileA fileB Este comando copiará o arquivo A para o arquivo B.

cp -r source_directory destino O comando copiará o diretório recursivamente para um destino


selecionado. Se o local já existir, o diretório será copiado. Se o local não existir, ele será criado
com uma cópia dos arquivos do diretório de origem

O comando ls -al listará todos os arquivos em um diretório em um formato detalhado.

mv arquivoA arquivoB Renomeia arquivoA para arquivoB. Também pode mover um arquivo. Se
o arquivoB for um diretório, o comando moverá o arquivoA para esse diretório.

diretório mkdir Cria um diretório.

pwd Exibe o diretório em que você está atualmente.

rm file Remove o arquivo em questão. Mais comumente conhecido como exclusão de um arquivo.
Machine Translated by Google

rm -f file “Força” a exclusão de um arquivo. Nenhum prompt de confirmação seguirá


este comando. Certifique-se de que pretende excluir este arquivo.

rm -r diretório Exclui um diretório, junto com seu conteúdo, recursivamente.

rm -rf directory Use isto quando quiser “forçar” a exclusão de um diretório e seu
conteúdo recursivamente. Novamente, certifique-se de que é isso que você pretende
fazer, pois nenhuma confirmação será solicitada.

Transferências de arquivos

Esses comandos funcionam como um guia para mover os arquivos de um lugar para outro conforme
necessário, a fim de garantir que você sempre possa colocar seus arquivos onde quiser.

rsync -a /home /backups/ Sincronizará o diretório inicial para /backups/home.

rsync -avz /home server:/backups/ A compactação habilitou a sincronização de


arquivos ou diretórios entre um sistema local e remoto.

scp file.txt server:/tmp Secure copia o arquivo (neste caso file.txt) para a pasta /
tmp no servidor.

scp -r server:/var/www /tmp Copia recursivamente todos os diretórios e arquivos


do servidor para o diretório /tmp do sistema atual.

scp server:/var/www/*.html /tmp Copia arquivos .html gerais do servidor para o


diretório local /tmp.

Comandos de informações de hardware

Esses comandos fornecerão todos os tipos de informações sobre o seu hardware,


garantindo que ele esteja funcionando de maneira adequada e eficaz para que você
possa ter certeza de que tudo está bem com o seu sistema.

badblocks -s /dev/sda Isso verificará se há algum bloco ilegível no disco sda (você
pode alterar sda para qualquer unidade de disco que deseja verificar).

cat /proc/cpuinfo Isso fornecerá as informações atuais da CPU, como uso,


velocidade e outros aspectos importantes de sua capacidade de execução.
Machine Translated by Google

cat /proc/meminfo Isso fornecerá informações de memória, como uso, velocidade e


outros aspectos importantes de sua capacidade de execução.

dmidecode Isso mostrará informações de hardware pertinentes do BIOS.

dmesg Isso mostrará mensagens no buffer circular do kernel.

free -h Isso exibirá o espaço de memória livre e usado em seu sistema naquele
momento, especificamente em um formato legível por humanos. Você também pode
selecionar -m em vez de -h para exibição em MB ou -g para obter o resultado em GB.

hdparm –I /dev/sda Isso fornecerá todos os tipos de informações sobre o disco sda.

lspci -tv Isso mostra os dispositivos PCI atuais.

lsusb -tv Mostra seus dispositivos USB atuais.

Instalando Pacotes

Esses comandos tratam da instalação de pacotes a partir de seus arquivos, sejam


eles arquivos zip, arquivos baixados ou outros.

rpm -i package.rpm Instala o pacote a partir de um arquivo local, neste caso


denominado package.rpm.

tar zxvf sourcecode.tar.gz


cd sourcecode ./
configure
make
make install Em vez de instalar a partir de um pacote, você instalará o software a
partir do código-fonte.

yum info package Exibe informações sobre o pacote que você refere.

yum install package Instala um pacote.

yum remove package Desinstala (remove) um pacote.


Machine Translated by Google

yum search keywords Fornece uma busca por um pacote usando uma palavra-chave.

Rede Esses

comandos estão diretamente relacionados à rede, permitindo que você veja o que está acontecendo
com sua própria rede e qualquer coisa com a qual sua rede esteja interagindo.

dig domain Exibe as informações de DNS de um determinado domínio.

dig -x IP_ADDRESS Use isto para executar uma pesquisa reversa de um determinado endereço IP

ethtool eth0 Uma ferramenta para visualizar e alterar drivers de rede e configurações de hardware.

domínio host Exibe o endereço IP DNS para um determinado domínio

hostname -i Este comando é usado para exibir o endereço de rede do “nome do host”.

hostname -I Muito semelhante ao comando acima, mas exibirá todos os endereços IP locais .

ifconfig -a Isso exibirá todas as interfaces de rede e seus endereços IP.

ifconfig eth0 exibirá o endereço eth0 e seus detalhes.

netstat -nutlp Mostrará a você todas as portas tcp e udp de escuta e seus programas relacionados.

ping host Enviará uma solicitação de eco ICMP para “host”.

wget http://domain.com/file Baixa o arquivo da web encontrado no endereço da web fornecido.

domínio whois Exibirá as informações whois para “domínio”.

Monitoramento de desempenho
Machine Translated by Google

Esses comandos são dedicados a garantir que você seja capaz de monitorar o desempenho do seu
sistema. Isso garantirá que seu sistema esteja funcionando bem, de forma eficaz e de acordo com
sua preferência, a fim de garantir que não haja mais nada que você precise fazer para otimizar suas
próprias configurações para o que você deseja ou precisa que sejam.

htop Isso permitirá que você vá para o topo do visualizador de processos.

iostat 1 Isso permitirá que você veja as estatísticas de entrada/saída.

lsof Permite uma lista de todos os arquivos abertos atualmente presentes no sistema.

lsof -u [nome de usuário] Permite uma lista de arquivos abertos presentes atualmente pelo nome de
usuário especificado.

mpstat 1 Isso permitirá que você veja estatísticas relacionadas ao processador.

tail 100 var/log/messages Isso permitirá que você veja as últimas 100 mensagens de log do sistema.

tcpdump –i eth0 Isso permitirá que você veja todos os pacotes listados naquela interface específica
(neste caso, eth0).

tcpdump –i eth0 'port 10' Isso permitirá o monitoramento de dados na porta 10, e você pode alterar
o nome da porta para qualquer porta que esteja tentando gerenciar.

top Isso mostrará os principais processos e permitirá que você os gerencie.

vmstat 1 Isso permitirá que você veja as estatísticas relacionadas à memória virtual .

Gerenciamento de processos

Esses comandos são dedicados ao gerenciamento de processos - eles informam o que os processos
que estão atualmente em andamento estão fazendo, bem como permitem que você mude de
processos em primeiro plano para processos em segundo plano conforme necessário para garantir
que sua própria atividade não seja prejudicada devido a outros processos em execução também.

bg Mostrará tarefas em segundo plano ou que foram interrompidas.


Machine Translated by Google

fg Este comando colocará o processo em segundo plano mais recente em primeiro plano.
fg n
Semelhante ao comando acima, isso empurrará o processo “n” para a frente.

htop permitirá que você monitore interativamente os processos do seu computador.

kill pid Use isto para encerrar ou “matar” um processo específico, onde o ID do processo
corresponde a “pid”.

killall processname Quando você deseja eliminar todos os processos com um nome
específico, utilize este comando.

programa & Isso inicia o programa selecionado em segundo plano.

ps Exibe seus próprios processos em execução no momento.

ps -ef Exibe todos os processos atualmente em execução no sistema.

ps -ef | grep processname Isso exibirá as informações de “processname”.

início Um visualizador de processos. É mais antigo que htop , mas tem o mesmo propósito.
Possui algumas diferenças, como falta de suporte ao mouse (algo que o htop possui).
Escolha sua preferência.

Procurar

Quando você precisar encontrar algo em seu sistema, esses comandos são sua melhor
aposta. Ao usar seus comandos de pesquisa, você será capaz de encontrar com facilidade
os arquivos aos quais precisa de acesso rápido e saber exatamente onde eles estão, para
poder ir até eles e acessá-los em outro lugar.

find /home -size +25M Utilize este comando para localizar arquivos maiores que
25MB em /home
Machine Translated by Google

find /home/mark -name 'prefix*' Isso encontrará arquivos em /home/mark que começam com
“prefix”.

arquivo de padrão grep Isto irá procurar o padrão em “arquivo”.


grep -r pattern directory Executa uma pesquisa recursiva por padrão no “diretório”.

localizar nome Procurará arquivos e diretórios pelo “nome” especificado.

Logins SSH ssh

host Conecta-se ao host usando o nome de usuário que você usa localmente.

ssh user@host Conecta-se ao host como “usuário”.

ssh -p port user@host Conecta-se ao host usando a porta.

Comandos de informações do sistema


Todos esses comandos são usados para algum tipo de informação do sistema para entender
o que o sistema está fazendo e como você pode interagir com ele. Eles são específicos do
Linux - devem funcionar para qualquer forma de Linux em que você esteja operando, incluindo
Kali Linux. Alguns desses comandos podem ser menos úteis no Kali Linux, mas é importante
conhecê-los de qualquer maneira ao interagir com outros sistemas Linux. Considere este o seu
tipo de curso de atualização sobre como interagir com o Linux.

cal Isso mostrará o calendário do mês atual.

cat /etc/redhat-release Mostra qual redhat está atualmente presente em seu computador para
uso.

data Isso mostrará a hora e a data atuais no sistema que você está usando.

hostname Isso lhe dirá qual é o nome do host do sistema.

hostname -I Isso fornecerá o endereço IP do host.


Machine Translated by Google

última reinicialização Isso mostrará a última vez que o sistema foi reinicializado.

uname -a Isso permite a exibição das informações armazenadas do sistema Linux.

uname -r Isso permite que a saída mostre qual versão do kernel você está usando.
uptime
Informa há quanto tempo seu sistema está ativo ou há quanto tempo está carregando.

w Isso mostrará quem está online no sistema.

whoami Isso lhe dirá com quem você está atualmente conectado ao sistema.

Informações do usuário e comandos de gerenciamento


Esses comandos são cruciais para sua capacidade de gerenciar informações do usuário.
Ao dominar esses controles, você pode adicionar e remover pessoas do seu servidor.
Você pode garantir que determinadas pessoas tenham determinadas permissões e muito
mais. Esses comandos podem não ser tão necessários no Kali Linux, onde você foi
projetado para ser usuário root e não outros, eles ainda são fantásticos de conhecer e
entender.

groupadd group1 Permite criar um novo grupo “group1” nesta instância. Você pode
substituir “grupo1 por qualquer outro nome para o seu grupo.

id mostra os IDs de usuário e grupo do usuário atual no sistema.

last Mostra quem foram as últimas pessoas que efetuaram logon.

useradd –c “nome completo” –m “apelido” Permite a criação de uma conta com o


comentário “nome completo” e o diretório inicial de “apelido”.

userdel “nome” permite excluir o usuário “nome”.

usermod –aG group1 “name” Permite mover o usuário “name” para o grupo “group1”.
Machine Translated by Google

parte II

Hackeando Kali Linux


Machine Translated by Google

Capítulo 5: Nmap e detecção e


Explorando vulnerabilidades

Neste ponto, você pode estar bastante ansioso para começar a usar o Kali Linux de
uma vez por todas. Agora você deve ter o sistema operacional instalado ou está se
preparando para fazê-lo. De qualquer forma, a leitura desta seção pode fornecer
informações valiosas. É aqui que você começa a ver o verdadeiro poder do Kali Linux
e como ele pode ser usado. Você começará a ver a força que pode ser conquistada
hackeando e aprendendo a ver e exercer essa força por si mesmo. Você também
deverá ser capaz de começar a ver como é fácil para uma rede ficar desprotegida ou
indefesa. Quando isso acontece, é do seu interesse garantir que você possa descobrir
vulnerabilidades para corrigi-las.

Nmap é apenas uma das muitas ferramentas que o Kal Linux oferece, e este capítulo
em particular se concentra nele. O Nmap é poderoso, permitindo coletar e identificar
informações que devem ser úteis, permitindo detectar tudo no sistema. É
principalmente uma ferramenta de segurança, mas você deve ter em mente que
também pode ser usada para causar danos. Agora é hora de mergulhar no início do
processo de hacking propriamente dito.

Se você já instalou o Kali Linux, vá em frente e abra-o – o Nmap vem por padrão, já
fornecido no sistema.

O que é Nmap?
Nmap significa mapeador de rede – é uma ferramenta incrivelmente popular usada
para descobrir o que está disponível para você. Tal como acontece com todas as
ferramentas fornecidas a você na distribuição Kali Linux, seu uso é gratuito e seguro.
Ao usar o Nmap, você é capaz de mapear redes, permitindo-se ver inventários e
também encontrar portas abertas. É bastante simples de usar – abre um terminal no
qual você pode inserir seus comandos e scripts, permitindo que você faça o que
quiser no sistema depois de entrar.
Machine Translated by Google

Esta ferramenta é capaz de funcionar através de firewalls e roteadores, pode ignorar um filtro de
IP e navegar nos sistemas. Embora tenha sido projetado para ser capaz de passar por redes
massivas, também pode ser usado em escalas menores. Ele é usado principalmente para
varredura de portas, detecção de versão, detecção de sistema operacional e uso de varreduras
de ping. Funciona de forma bastante simples: usa pacotes IP para encontrar hosts em uma rede
e o que eles estão executando. Muitas informações podem ser obtidas apenas descobrindo o que
o computador de alguém está executando.

No geral, o Nmap é incrivelmente poderoso – ele permite que você execute todos os tipos de
ações e procure diversas explorações. Ele não apenas coleta informações, mas também permite
a verificação de segurança, tornando-se uma ferramenta multifuncional que pode beneficiá-lo
muito. Pode ser usado para ações como:

Detectando qualquer host ativo em uma rede

Detectando quaisquer portas abertas que estejam atualmente presentes no host

Detectando SO, hardware e software

Detectando vulnerabilidade através de scripts Nmap

A ferramenta em si é incrivelmente comum e também é compatível com CLI e GUI, o que significa
que não é apenas comum e poderosa, mas também flexível.

Como usar o Nmap para compreender e explorar vulnerabilidades Quando estiver pronto

para usar o Nmap, você terá várias opções diferentes. Você poderá verificar um alvo, alvos
limitados ou vários alvos, todos com base no comando que você pode enviar. A meta determina
exatamente como você passaria pelo processo de uso deste sistema, mas, em última análise, isso
levará algum tempo.

Comandos de varredura Talvez

o uso mais básico do Nmap seja através da varredura. Quando quiser digitalizar, você tem várias
opções diferentes. Você pode escolher o que deseja atingir, seja um indivíduo, vários indivíduos
ou um diretório inteiro. Imagine por um momento que você deseja digitalizar uma única unidade ou
Machine Translated by Google

sistema. Você faria isso com o seguinte comando, alterando os endereços IP


de acordo.

alvo nmap #
nmap target.com #
nmap 192.143.1.1

Isso fará a varredura daquele sistema específico. Se você deseja verificar todas as sub-
redes associadas a esse sistema, seu comando mudará ligeiramente. Em vez disso,
seria:

alvo nmap/cdir #
nmap 192.143.1.1/24

E se, em vez disso, você quisesse verificar vários alvos diferentes, bastaria
rotulá-los e separar os endereços IP com espaços. Por exemplo, talvez você
escrevesse:

nmap alvo alvo1 alvo2 #


nmap 192.143.1.1 192.141.1.2

Você ainda tem a opção de verificar apenas vários endereços IP consecutivos


sem verificar toda a sub-rede. Quando desejar verificar 50 endereços IP
associados, mas não toda a sub-rede, você usará o seguinte comando:

nmap
alvo-50#nmap 192.143.1.1-50

Isso levaria à verificação de todos os endereços IP de 192.143.1.1 a


192.143.1.50 de uma só vez.

Você também pode decidir que o que você precisa é de uma lista de vários
hosts que estão sendo verificados – neste caso, você deseja adicionar o
parâmetro adequado. Neste caso, esse ,parâmetro seria -sL que criaria o
prompt de comando de:

nmap -sL alvo/cdir


Machine Translated by Google

# nmap -sL 192.143.1.1/24

Às vezes, porém, você pode querer verificar toda a sub-rede, mas também sabe que
precisa deixar uma seção dessa sub-rede totalmente sem verificação para evitar a
detecção.
Especialmente se você tiver um único endereço IP que deve evitar, poderá criar seu
código com um parâmetro destinado a excluir esse endereço IP. Isto é bastante simples.
Tudo que você precisa fazer é adicionar o parâmetro -exclude assim:

# nmap 192.143.1.1/24 - -excluir 192.143.1.13

Você pode até inserir um único arquivo que contenha todos os endereços IP excluídos,
se tiver um, inserindo o nome do arquivo na exclusão.

Sua varredura também pode ser ainda mais específica – você pode começar a
especificar exatamente quais portas serão direcionadas se também tiver os códigos corretos.

Técnicas e comandos de digitalização


Claro, existem outros tipos de verificações que você também pode realizar.
O Nmap tem várias técnicas de varredura diferentes disponíveis que você precisará
saber para serem eficazes. Esta seção fornecerá as informações necessárias para usar
também vários outros tipos de verificação.

Varredura TCP SYN


Comandada com o prompt -sS, a varredura TCP SYN é uma varredura básica. É
comumente referido como meia abertura porque coleta informações do host remoto sem
concluir o processo TCP discutido anteriormente neste livro.

Nesse tipo de varredura, o Nmap envia um pacote SYN para o destino certo, mas nunca
se preocupa em realmente criar ou acionar uma sessão. No final, a interação nunca é
registrada pelo computador de destino porque o computador nunca iniciou uma sessão.
Isto é o que torna a varredura TCP SYN tão benéfica. Isso é usado por padrão, embora
você precise de acesso root. Claro, se você estiver usando Kali Linux ao fazer isso, não
haverá problema,
Machine Translated by Google

já que você estará na conta root por padrão. Um comando para esse tipo de verificação
é semelhante a:

# nmap -sS 192.143.1.1

Varredura TCP Connect()


Quando a varredura SYN não puder acontecer por qualquer motivo, esta será a
varredura padrão usada. Com o código -sT para utilizar esta varredura, seu sistema
concluirá o processo de handshake TCP, exigindo que o outro sistema registre a
transação. Isso só é bom para encontrar portas TCP em vez de quaisquer outras. Para
usar este código, você teria um comando como
como:

# nmap -st 192.143.1.1

Varredura UDP

Esta varredura procura portas UDP abertas em qualquer máquina alvo. Ele não faz
uso de um pacote SYN devido ao direcionamento de uma porta UDP. No entanto, você
ainda poderá tornar isso mais eficiente se usar os comandos –sS e –sU juntos.

Ao usar este método de varredura, o Nmap envia um pacote UDP e aguarda algum
tipo de resposta. Uma mensagem de erro indica que a porta está fechada, mas uma
resposta adequada informará que a porta está realmente aberta e acessível. Neste
caso, você usará o seguinte comando:

# nmap -sU 192.143.1.1

Varredura FIN

Às vezes, uma varredura TCP SYN não seria necessariamente a escolha certa com
base nos parâmetros fornecidos. Normalmente, um firewall causará um bloqueio dos
pacotes SYN, então você precisará seguir outro método. Quando isso acontecer, você
pode tentar usar uma varredura FIN
Machine Translated by Google

— isso envia apenas um sinalizador FIN, o que significa que não requer a conclusão da
transação TCP que, de outra forma, acionaria a detecção do Nmap.
O comando adequado para uma varredura FIN é –sF, como:

# nmap –sF 192.143.1.1

O que traz de volta muitas informações – deve fornecer se o host está ativo ou inativo,
qual é a latência e o estado da porta. O destino não registra essa verificação, mas você
consegue obter as informações.

Varredura de
Ping Ao contrário de outras formas discutidas até agora, a varredura de ping é usada
apenas para determinar se o host está ativo ou ativo no momento. Não descobre se uma
porta está aberta. Requer acesso root, pois existe a possibilidade de enviar pacotes
ICMP. Quando não houver acesso root concedido, ele completará o comando usando a
chamada connect(). O comando para uma varredura de ping é -sP e seria usado: # nmap
-sP 192.143.1.1

Detecção de versão
Este é o comando que você precisa se quiser determinar que tipo de software está sendo
usado no computador de destino ou em qualquer porta. Ele não detecta nenhuma porta
aberta, embora precise obter informações de qualquer porta aberta para fornecer
informações sobre o software que foi detectado. O primeiro passo aqui seria encontrar
uma porta que esteja aberta com uma varredura TCP SYN e então direcionar o –sV para
a porta específica disponível.

# nmap –sV 192.143.1.1

Varredura ociosa
Em uma varredura ociosa, você pode manter sua invisibilidade durante a varredura.
Nesta técnica específica, você não envia nenhum pacote real do seu próprio endereço
IP. Em vez disso, é necessário um host de dentro da rede de destino para enviar pacotes.
Isso exigirá que você primeiro descubra uma abertura
Machine Translated by Google

porta dentro do IP e então usa um host zumbi para se comunicar com o alvo.
Neste código, você usará primeiro o IP do host zumbi e depois o IP do alvo
para criar um comando de:

# nmap -sI 192.143.1.4 192.143.1.1

Neste caso, o host zumbi 192.143.1.4 está sendo usado para se comunicar
com 192.143.1.1 sem detecção, pois eles fazem parte da mesma rede.

Teste de penetração
Em última análise, o teste de penetração pode ser dividido em sete etapas ou
fases – quando você consegue passar por essas fases, é mais provável que
encontre algum tipo de fraqueza ou vulnerabilidade. Ao utilizar essas fases,
você descobrirá que sua capacidade de romper um sistema aumenta. Será
mais provável que você consiga quebrar, o que significa que é mais provável
que você identifique qualquer um dos pontos fracos que precisa corrigir em seu
próprio sistema.

As fases do teste de penetração são pré-engajamento, reconhecimento,


modelagem de ameaças, exploração, pós-exploração, relatório e novo teste.
Você será guiado por cada uma das etapas durante esta seção deste capítulo.
Machine Translated by Google

Pré-engajamento
Esta etapa específica é mais como uma precaução, mas é crucial –
quando você está no estágio de pré-engajamento, precisa começar
descobrindo o escopo do teste. Essencialmente, você está procurando
os objetivos exatos de sua tentativa de penetrar na rede. Você precisa
ter certeza de que sabe o que está planejando para não fazer nada não
intencional. Especialmente se você pretende fazer isso como uma
possível carreira, você precisa adquirir o hábito de definir o que vai
fazer e quais são os limites do que você pode ou não fazer. Você
precisa saber exatamente o que se espera que você faça e em quais
redes deve se concentrar. Anote tudo. Se você estiver tentando invadir
a rede de outra pessoa a pedido dela, certifique-se de se proteger
legalmente e de obter documentação assinada declarando que você
está trabalhando a pedido e dentro dos termos dela. Como os testes de
penetração são perigosos porque tentam minar as medidas de
segurança, você quer ter certeza de que não será culpado se algo der
catastroficamente errado, o que pode acontecer ocasionalmente.
Machine Translated by Google

Reconhecimento
Nesta fase, você trabalhará na coleta de informações. Embora você possa preferir pular
isso se conseguir se safar, você estará mais preparado se realmente souber o que está
fazendo. Quando você tiver todas as informações de que precisa bem alinhadas à sua
frente, saberá o que espera. Em particular, você pode querer coletar informações sobre a
rede que está almejando ou sobre os tipos de tecnologia mais prováveis que encontrará.
Você pode querer obter informações pessoais sobre as pessoas que está tentando invadir
ou sobre seus endereços de e-mail.

Quando você está tentando entrar furtivamente em uma rede, você nunca sabe o que é ou
não útil ou necessário. Reúna o máximo de informações possível para estar preparado e
depois passe para a etapa 3, somente depois de estar satisfeito por ter reunido tudo que
será útil para você.

Modelagem de ameaças e identificação de vulnerabilidades


A etapa 3 ainda envolve planejamento – neste ponto, você deseja pegar todas as
informações coletadas nas etapas anteriores e começar a pensar em quais seriam as
vulnerabilidades e ameaças mais realistas que a rede enfrentaria. Utiliza um determinado
tipo de rede que é particularmente vulnerável a um plano de ataque específico? Existe uma
exploração no tipo de hardware que eles estão usando? Vale tudo aqui, desde que seja
uma ameaça relevante que o alvo provavelmente enfrentará.

Este estágio também pode utilizar um scanner de vulnerabilidades para verificar se há


pontos fracos na rede. Isso pode ser feito para encontrar quaisquer vulnerabilidades que
estejam atualmente naquela rede específica, permitindo calcular as vulnerabilidades mais
prováveis presentes. Isso pode ser um recurso fantástico para você quando estiver tentando
entender a melhor forma de acessar a rede que está tentando penetrar. Felizmente, o Kali
Linux vem com Metasploit – uma maneira de verificar vulnerabilidades em uma lista de IPs
de destino específicos.
O Metasploit será discutido em profundidade posteriormente neste livro.

Outra técnica comum neste estágio é usar ferramentas de varredura e scanners de portas
para encontrar portas abertas ou hosts ativos. Ao fazer isso, você poderá descobrir que é
capaz de encontrar outra fraqueza que pode ser explorada para ganhar
Machine Translated by Google

acesso. Esta técnica permite digitalizar dispositivos, permitindo outro ponto de


entrada.

Isso é quase como o reconhecimento v 2.0 – aqui, você está fazendo questão de
obter mais detalhes sobre os sistemas. Você deve ser capaz de identificar quais
sistemas estão presentes, se estão ou não ativos e se há algum tipo de firewall ou
software antivírus instalado. Com sua lista de vulnerabilidades identificada, é hora
de começar a descobrir mais informações também.

Você consegue obter algum formulário de informações valiosas analisando os


funcionários da rede? Existe valor em encontrar dados do cliente? Os clientes têm
acesso aos sintomas? Existe a possibilidade de roubar informações financeiras?
Se houver, então é bem possível que você queira procurar primeiro em algum lugar
que não seja o que cerca as informações financeiras, em um esforço para se
esgueirar e descobrir um plano de ataque melhor, em vez de tentar entrar correndo,
com armas em punho, direto para dentro. uma armadilha ou uma área fortemente
vigiada. Pense nas possibilidades mais prováveis nesta situação e elabore um
plano provisório de ataque, mas lembre-se de que seu teste provavelmente estará
em constante evolução e mudança à medida que você obtém mais e mais informações.

Exploração
Neste ponto, é hora de começar a tentar acessar a rede. Você deve ter vários locais
diferentes que poderá usar para atacar o sistema e é hora de começar a fazer
esses movimentos. Você encontrou algum ponto fraco que pode ser usado para
acessar? Você pode tentar iniciar um shell ou tentar obter algum tipo de credencial
atribuída a você para que possa começar a acessar como usuário root.

Existe algum espaço para usar as informações de outro computador para ajudá-lo
a entender? A parte principal desta fase é tentar obter o máximo de acesso possível
sem ser detectado e bloqueado. Embora seja possível causar muitos danos sem
nunca obter acessos e permissões administrativas, na maioria das vezes, o que
você está tentando fazer é obter essa permissão.

Este estágio dependerá em grande parte da rede que você está tentando romper e
você precisará ser criativo. Certificar-se
Machine Translated by Google

que você documente o que funciona e o que não funciona à medida que avança, para que
possa começar a descobrir as coisas. Lembre-se, se você estiver fazendo isso para si
mesmo ou para um cliente, vai querer saber exatamente o que funcionou e o que não
funcionou. Quando você tiver obtido o máximo de informações possível aqui, é hora de
passar para a próxima etapa.

Pós-exploração Em
seguida vem a fase pós-exploração. Neste ponto, você terá concluído o teste, seja por
ficar sem empate ou por ter atingido o fim de sua capacidade de explorar ou ficar sem
sistema para explorar. Neste ponto, você deve fazer uma lista de todas as vulnerabilidades
e fornecê-las ao cliente. Ao longo do processo, você deveria ter feito anotações, ou
potencialmente capturas de tela, de qualquer coisa que funcionou ou não. Você deve ser
capaz de descobrir o quão significativa é a exploração que você fez – você entrou no
servidor principal ou ficou preso em um computador com pouco acesso sofisticado ao
servidor? Quão valiosas foram as informações que você obteve do sistema, se houver?
Qual é o risco do próprio sistema?

Além disso, você também deve pensar em como corrigir quaisquer vulnerabilidades
descobertas. Você consegue pensar em um patch fácil para resolver o problema?
Há algo mais que você possa fazer para garantir que a rede seja mais segura? O que a
rede pode fazer melhor? O que funcionou bem? Além disso, você também deve certificar-
se de limpar também. Você precisa remover tudo o que foi plantado no sistema e alterar
toda e qualquer configuração para o que costumavam ser. Você quer ter certeza de que
tudo o que você explorou foi removido.

Relatórios
Nesta fase, é hora de elaborar seu relatório. Pode não ser divertido, mas se você passou
pelo teste de penetração para ajudar alguém, precisa ter certeza de que seu relatório foi
redigido de maneira correta e organizada. É aqui que você consegue transmitir quaisquer
fraquezas e vulnerabilidades que colocarão o cliente em risco. Você terá certeza de que
será capaz de informar quais explorações aconteceram e como elas devem ser corrigidas.
Machine Translated by Google

Este estágio deve ser o mais brutalmente honesto possível – você deseja que a outra
parte saiba exatamente o que aconteceu e como consertar. Se o sistema deles for
realmente vulnerável à exploração e você tiver acesso a tudo, deixe-o solto. Diga-
lhes, em termos imparciais, mas honestos, exatamente como as coisas deram errado.
É aqui que eles também recebem um exemplo de plano de ação para garantir que
tudo seja corrigido. Quanto mais claro você deixar esse estágio para o cliente, melhor
você se sairá em seu trabalho e maior será a probabilidade de seu cliente conseguir
resolver os problemas e proteger a rede.

Retestando
Este não é um estágio pelo qual todos estão dispostos a passar como testadores de
penetração, mas é importante se você quiser fazer um trabalho completo ao fazê-lo.
Durante esse estágio, você dará ao cliente tempo para examinar suas próprias
vulnerabilidades e tentar repará-las e reavaliar suas tentativas de reforçar suas
defesas. Basicamente, você testará novamente as partes que foram corrigidas para
ver se elas realmente corrigiram qualquer vulnerabilidade existente. Nem sempre
você será solicitado a fazer isso, mas se for, é sempre um ato de boa fé prosseguir
com isso.
Machine Translated by Google

Capítulo 6: Como se tornar e permanecer


Anônimo
O anonimato é crucial se você espera ser um hacker, não importa o tipo. Se você
não tomar cuidado, será incrivelmente fácil simplesmente colocar seu endereço IP
específico na lista negra e você não terá mais esse acesso. Em vez de conseguir
passar pelo sistema ou encontrar explorações, você acaba banido e incapaz de
fazer qualquer coisa. No entanto, esse não precisa ser o seu destino se você estiver
tentando hackear – em vez disso, você pode encobrir seus rastros.

Assim como muitos ladrões usam luvas para esconder suas impressões digitais do
sistema que estão tentando acessar, certificar-se de calçar suas próprias luvas
digitais metafóricas pode ajudá-lo a permanecer anônimo. Isso significa que suas
informações serão privadas – você poderá disfarçar a si mesmo e ao seu software
para garantir que seu endereço IP real não esteja sendo usado.

Agora, você pode estar pensando: e se estiver usando uma máquina virtual? Isso
não teria um endereço IP digitalizado ou ficaria mais oculto porque tudo é digital?
Sim e não – no entanto, isso ainda é tão seguro quanto a rede que você está
usando. Isso significa que se você realmente deseja o verdadeiro anonimato,
também vai querer envolver o uso de outra coisa. Você vai querer adicionar
ferramentas extras e precauções para se proteger contra a descoberta do seu
endereço IP. Quando você consegue combatê-lo, é mais provável que permaneça
anônimo.

Existem várias ferramentas que podem ajudá-lo no processo de permanecer


anônimo e se proteger, todas construídas no Kali Linux e prontas para serem
usadas. Bastará tempo e esforço para configurar tudo, mas valerá a pena o esforço.
Os três métodos em particular que serão discutidos neste capítulo serão servidores
proxy, VPNs e o uso de TOR. Em cada seção, você será orientado sobre qual é o
método específico, como funciona e como usá-lo com o Kali Linux.
Machine Translated by Google

Proxychains
Talvez um dos métodos mais simples para ocultar seu endereço IP seja
através do uso de um servidor proxy. Ao usar cadeias de proxies, você
pode ocultar seus rastros, tornando-os mais difíceis de seguir. Ao torná-los
mais difíceis de seguir, você terá maior probabilidade de evitar a detecção.
Quando você usa um proxy, é claro que esse proxy registra suas
informações. No entanto, você também pode contornar isso: você pode
agrupar vários proxies em uma cadeia. Contanto que pelo menos um proxy
possa estar fora da jurisdição do alvo, você poderá evitar o problema completamente.
Machine Translated by Google

Felizmente, no Kali, você tem acesso a uma ferramenta conhecida como Proxychains.
Isso pode ser encontrado em seu diretório, que você pode acessar com um comando de
localização. Provavelmente estará no diretório /usr/bin.

Ao usar Proxychains, você usará um comando muito simples:

# proxychains [insira o comando que está em proxy] [adicione quaisquer argumentos]

Agora, imagine que você queira usar isso com o Nmap para escanear anonimamente e
através de um proxy. Talvez, em particular, você queira usar uma varredura TCP SYN no
endereço IP 192.143.1.1, mas deseja fazê-lo por meio de um proxy utilizando a ferramenta.
Nesse caso, você criaria um prompt de comando de:

# proxychains nmap -sS 192.143.1.1

Isso então aciona você para fazer a varredura TCP SYN naquele endereço IP específico
por meio de um proxy.

Com a sintaxe compreendida, você pode prosseguir para a conclusão de um arquivo de


configuração. Como basicamente qualquer outra coisa no Linux, existem arquivos de texto
simples conhecidos como arquivos de configuração que contêm todas as informações
necessárias. Você pode abri-los em qualquer um dos editores de texto que tiver, como via
gedit ou leafpad.
Machine Translated by Google

Abra o arquivo de configuração em seu editor de texto e você verá um arquivo com
todos os tipos de informações. Dentro dele, você descobrirá que uma área específica
possui um local para adicionar o proxy. Você simplesmente inserirá o endereço IP de
todos os proxies que estiver utilizando lá. Normalmente, os proxychains serão
padronizados para o Tor, como você pode ver no seu arquivo. Se você for usar o Tor, deixe como está
Se não estiver usando o Tor, você precisará fazer as edições apropriadas no arquivo.
Este livro avançará com o Tor.

Com o servidor proxy configurado, é hora de testá-lo. Você pode fazer isso enviando
uma varredura através do proxy. Ao enviar a digitalização, você verá o endereço IP
escolhido listado e ele deverá estar alinhado com o do seu proxy.
Além de apenas configurar o proxy, você também pode fazer muitas outras coisas com
isso. Você pode adicionar vários proxies, por exemplo, e encadeá-los para que
encadeiem aleatoriamente, em uma ordem específica ou usem apenas parte deles.

Comece abrindo o arquivo de configuração do proxychains novamente. Você verá


então a linha dynamic_chains – você poderá ver que ela está comentada. Isso significa
que não será usado neste momento. Se você apagar a marca de comentário, ela deverá
ser ativada quando o processo for executado.

Você também pode encontrar encadeamentos aleatórios em seu arquivo. Você pode
adicionar novamente o # para comentar a linha dynamic_chains e, em vez disso,
remover o # da opção random_chain. Você só pode usar uma ou outra dessas opções
a qualquer momento, então você terá que voltar e remover uma se quiser usar a outra.

VPN
Outra camada de segurança que você pode adicionar ao seu sistema é adicionar uma
VPN além do uso de endereços proxy. Esta é uma prática comum – permite maior
proteção contra pirataria ou outros problemas. Também permite que as pessoas evitem,
por exemplo, quaisquer atividades específicas que possam ser ilegais dentro de um
país. Ele também permite que você verifique outras redes sem ser detectado – algo
que é comumente considerado ilegal em vários países. Até mesmo a simples varredura
da rede pode ser suficiente para que ela seja considerada ilegal, mesmo que você não
tenha feito nada com ela. Agora, já que você está lendo sobre a melhor forma de fazer
exatamente
Machine Translated by Google

isso, você descobrirá que a segurança extra é crucial para se proteger.

Existem vários motivos para usar uma VPN, todos incrivelmente atraentes. Uma
VPN não apenas permite ocultar seu endereço IP e, portanto, protegê-lo, mas
também permite que você use qualquer rede, garantindo que ainda haja criptografia.
Além disso, você poderá fazer login em suas informações confidenciais sem se
preocupar com a possibilidade de elas serem sequestradas se você estiver em outra
rede. Você poderá ignorar qualquer monitoramento que possa ter sido instalado ou
acessar sites com restrição regional.

Claro, também é importante reconhecer que a sua VPN não irá encobrir tudo –
haverá algumas maneiras de identificá-lo. Por exemplo, seu mecanismo de pesquisa
normal provavelmente poderá reconhecê-lo simplesmente devido aos cookies e ao
comportamento de navegação, especialmente se você já estiver conectado a uma
conta nesse mecanismo específico. Apesar das deficiências, no entanto, o fato de
uma VPN poder ajudá-lo a ocultar mais significa que você pode confiar nela para
fornecer mais proteção do que teria de outra forma. Assim como o cinto de
segurança não é garantia de segurança em um acidente de carro, uma VPN não é
garantia de segurança – no entanto, é uma camada extra que existe para ajudar a
mantê-lo seguro, se necessário.

Quando quiser habilitar uma VPN no Kali Linux, você terá alguns comandos para
usar e etapas a seguir, mas no final, você adicionará proteção extra ao seu software,
o que significa que poderá se proteger melhor.

Passo 1: Habilitar VPN


Machine Translated by Google

A opção VPN geralmente está desabilitada por padrão quando você usa o Kali Linux,
então você terá que abri-la antes de continuar. Isso exigirá que você insira seu próprio
comando, como:

#apt-get install network-manager-openvpn

Este comando específico é específico para habilitar uma VPN. Neste ponto, pode ser
necessário reiniciar a rede e o gerenciador de rede. Ao reiniciar, você descobrirá que
a VPN agora está disponível.

Passo 2: Baixe e extraia o openvpn Agora,


você precisará baixar o arquivo openvpn.zip. Isso não é particularmente difícil – um
código como:

# wget https://www.privateinternetacess.com/openvpn/openvpn.zip

Para baixar o arquivo. Depois de baixado e salvo, você precisará descompactar o


arquivo e certificar-se de que ele foi depositado no diretório correto para uso posterior.
Você pode fazer isso com o seguinte comando:

# descompacte -q openvpn.zip –d /etc/openvpn

Seu arquivo deve estar pronto e agora é hora de passar para a etapa 3.

Etapa 3: Configurar o Network Manager para usar o PIA


VPN Nesta etapa, você configurará o Network Manager para que ele reconheça e
permita o uso da VPN que você deseja configurar.

Isso envolverá você entrar no Network Manager, editar as conexões e, em seguida,


alternar para a guia VPN e selecionar o que deseja adicionar.
Você clicaria em ADICIONAR e, nesse ponto, definiria o tipo como OpenVPN. Em
seguida, clique em criar.
Machine Translated by Google

Se você acessar a VPN, encontrará vários detalhes importantes que permitirão saber se
você está realmente usando ou não a VPN adequada. Nesse caso, você deverá ver um
nome de conexão PrivateInternetAccess VPN, um gateway que deve estar mais próximo
de sua localização pessoal, um nome de usuário que você pode definir, uma senha que
você pode salvar e, em seguida, o certificado CA.

Para obter o certificado CA, você deve ir para /etc/openvpn para acessar o diretório
correto e, em seguida, selecionar ca.crt para usá-lo neste estágio.

Agora clique em Avançado e escolha a caixa ao lado de Usar compactação de dados


LZO. Você então deve clicar em OK, salvar e fechar a janela.

Neste ponto, se você clicar em Network Manager > VPN Connections >
PrivateInternetAccess VPN, deverá ver um indicador de conexão amarelo.
Sua VPN agora está pronta para uso.

Tor e Kali Linux


Tor é mais uma camada do guarda-chuva de segurança que você pode criar para garantir
que você seja capaz de se proteger. Esta é apenas mais uma precaução de segurança,
mas se você fizer bom uso dela, poderá descobrir que é realmente capaz de se proteger,
especialmente se começar a combinar esses métodos de segurança para proteger seu
anonimato tanto quanto possível.
Lembre-se de que o Kali Linux já é seguro, mas você pode adicionar camadas extras a
ele utilizando as ferramentas de seu repositório. Tor é outra daquelas ferramentas
específicas capazes de ajudar a protegê-lo que vem com o conjunto de ferramentas Kali
Linux.

O Tor em si é um software gratuito e irá protegê-lo através do salto ativo de sua


comunicação em vários pontos de rede diferentes.
Essencialmente, existe uma enorme rede criada por voluntários em todo o mundo. Eles
ajudam a transferir suas informações de forma irregular, de modo que não podem ser
rastreadas facilmente. Ao transferir constantemente suas informações de um lugar para
outro, você basicamente acaba com seus dados altamente protegidos. Seu histórico não
será rastreado facilmente e os sites que você visita não conseguem saber exatamente
onde você está fisicamente. Efetivamente, você evita ser visto porque pessoas de todo o
mundo enviam seus sinais e
Machine Translated by Google

informações em todos os lugares. Um pedido pode ter origem nos Estados


Unidos, enquanto outro surge em Espanha e outro na Alemanha.

Especialmente se você combinar isso com os métodos discutidos anteriormente


para obter anonimato real, ficará incrivelmente difícil de rastrear. Você não
apenas teria uma série de endereços IP diferentes sendo percorridos, mas
também teria esses endereços IP criptografados e protegidos por sua VPN, e
então teria proteção adicional porque seu acesso à Internet está sendo passado
através do Tor em vez de através de seus métodos habituais.

Quando quiser usar o Tor em sua máquina Kali Linux, você terá que instalá-lo
manualmente. Como você está no Kali, você está bloqueado como usuário root,
o que significa que não pode usar o modo de atalho que normalmente consegue
utilizar. Em vez de poder utilizar qualquer atalho, você precisará baixar
manualmente o download do Tor.

Você pode fazer isso através do site oficial do Projeto Tor. Você vai querer fazer
o download do pacote no site deles e, em seguida, baixar o torbrowser-launcher
no GitHub.

Certifique-se de baixar os arquivos apropriados da arquitetura e salvá-los em


algum lugar de acesso. Então, utilizando o comando tar , você deve extrair o
pacote do diretório de download. Você pode fazer isso com o seguinte comando:

# tar –xvf tor

Tenha em mente que este comando acredita que o único arquivo em seu
diretório que começa com “tor” é o arquivo para download tore. Então, você
precisa executar o Tor Browser Bundle. Isso exigirá que você use o script start-
tor-browser que acabou de extrair:

# ./start-tor-browser.desktop

Ao fazer isso, você verá o Vidalia iniciado e se conectará ao Tor.


Com o Tor conectado, o Firefox será iniciado.
Machine Translated by Google

Se você for capaz de utilizar esses três métodos diferentes de privacidade em


conjunto, poderá descobrir rapidamente que é realmente capaz de se proteger
bastante dos riscos do mundo real da Internet. Você será capaz de garantir que
seu endereço IP não seja tão provável de ser descoberto, especialmente se
você estiver mexendo com alguns dos interesses particulares daqueles que
usam o Kali Linux, como testes de penetração que, de outra forma, podem se
tornar problemáticos.
Machine Translated by Google

Capítulo 7: Estrutura Metasploit


O teste de penetração é algo que já foi discutido neste livro, mas será mencionado
novamente. No Kali Linux, você tem acesso a todos os tipos de ferramentas fantásticas
que podem ajudá-lo em seu processo de hacking, testes de penetração e busca de
vulnerabilidades ou pontos de acesso. Uma dessas ferramentas para testes de penetração
que ainda não foi discutida é uma ferramenta conhecida como Metasploit Framework. Esta
ferramenta específica utiliza alterações de linha de comando ou GUI. Também pode ser
usado como uma espécie de método de suporte que pode ser usado para todos os tipos
de fins. Esta ferramenta é incrivelmente poderosa e é usada tanto por cibercriminosos
quanto por hackers éticos devido à utilidade do programa.

Em particular, o Metasploit permite a investigação de quaisquer vulnerabilidades


sistemáticas dentro de uma rede ou servidor e também é de código aberto, o que significa
que a estrutura pode ser facilmente modificada para funcionar para qualquer pessoa e com
praticamente qualquer sistema operacional.

O que é Metasploit?
Em particular, Metasploit refere-se a uma ferramenta específica usada. A equipe de pentest
que o estiver usando poderá usar o código que já foi feito para eles ou o código
personalizado que eles criaram e depois injetá-lo em uma rede. Ao fazer isso, as falhas
nessa rede específica são descobertas e chamadas à atenção. Isto significa então que
eles são capazes de resolver os pontos fracos dessa rede específica para que possam ser
resolvidos.

Na verdade, o Metasploit é apenas mais uma ferramenta de exploração, muito parecida


com o Nmap, embora sirva a um propósito diferente. No entanto, é importante reconhecer
que a ferramenta em si não é má ou antiética. A ferramenta em si foi projetada para ser
usada por hackers éticos.

O Projeto Metasploit surgiu em 2003 para ser usado como uma ferramenta de rede portátil
baseada em Perl. No entanto, em 2007, foi convertido para Ruby e licenciado pela Rapid7,
onde permaneceu. Algumas das ferramentas da estrutura Metasploit, que é maior que o
próprio Metasploit, incluem várias outras ferramentas que são usadas regularmente no Kali
Linux. Todas essas ferramentas
Machine Translated by Google

têm propósitos diferentes e a estrutura Metasploit está se tornando uma das escolhas
padrão em desenvolvimento e mitigação. Antes disso, as sondagens costumavam ser
realizadas manualmente, tornando o teste de caneta incrivelmente lento, exaustivo e
tedioso.

A estrutura cresceu até incluir algumas ferramentas proprietárias em vez das ofertas
gratuitas que foram incorporadas ao Kali Linux. Essas ferramentas, como Metasploit Pro e
Metasploit Express oferecem seus próprios benefícios, porém, são desnecessárias se você
não quiser utilizá-las.

Usuários do Metasploit

Graças à ampla gama de aplicativos do Metasploit, ele é usado desde hackers éticos que
desejam tornar seus próprios sistemas operacionais e servidores mais protegidos até
aqueles que estão legitimamente interessados em invadir um sistema operacional para fins
nefastos. É, no entanto, uma ferramenta incrivelmente confiável, fácil de instalar e útil.

Não importa a linguagem que você escolha usar ou qual plataforma você está utilizando, o
Metasploit deve funcionar, e esta é uma parte bastante significativa do motivo pelo qual o
Metasploit é tão incrivelmente popular em primeiro lugar. É tão útil para garantir que seja
facilmente acessível que se tornou generalizado.

A partir de agora, o Metasploit inclui mais de 1.600 explorações para 25 plataformas


diferentes e carrega quase 500 cargas úteis. Tudo isso se junta para criar uma ferramenta
tão poderosa que as pessoas não podem deixar de aproveitá-la. Algumas das cargas úteis
incluídas são:

Cargas úteis do shell de comando: elas permitem que as pessoas executem


scripts ou comandos em um destino ou host diferente

Cargas dinâmicas: elas permitem que os testadores criem cargas exclusivas


enquanto tentam evitar qualquer software antivírus

Cargas úteis do Meterpreter: elas permitem que os monitores do dispositivo


ultrapassem outras sessões
Machine Translated by Google

Cargas estáticas: elas permitem o encaminhamento de portas e a


comunicação entre redes.

Módulos Metasploit
Existem vários módulos incluídos no Metasploit. Esses são componentes
essenciais – software que possuem ações muito específicas que devem
executar. Eles também representam as ações que você pode realizar na
estrutura do Metasploit. Esses módulos são facilmente localizados: tudo o que
você precisa fazer é encontrar o seguinte
repositório: /path/to/metasploit/apps/pro/msf3/modules

O tipo de módulo será determinado pela finalidade daquele módulo específico,


bem como pela ação pela qual o módulo específico é responsável. Em
particular, há oito que merecem ser discutidos. Esses incluem:

Exploits: Os módulos Exploit são projetados para executar uma


série de comandos que visam uma vulnerabilidade que foi
descoberta no sistema ou aplicativo alvo. Este módulo foi projetado
para tirar vantagem de qualquer vulnerabilidade, a fim de fornecer
acesso a qualquer que seja o sistema alvo. Existem vários
exemplos diferentes de módulos de exploração, como injeção de
código e explorações de aplicativos da web.

Cargas úteis: uma carga útil refere-se a um código shell que é


executado após a exploração ter conseguido comprometer o
sistema em questão. A carga útil permite que você decida
exatamente como deseja se conectar ao shell e o que deseja que
seja feito no destino depois de assumir o controle dele. Pode
envolver a abertura de um meterpreter ou de um shell de comando
diferente. O Meterpreter é especificamente um tipo avançado de
carga útil que permite a gravação de arquivos DLL, permitindo a
criação de novos recursos conforme necessário.
Machine Translated by Google

Codificadores: Os codificadores são ferramentas críticas capazes de converter uma


forma de código em outra.

Ouvintes: malware projetado para se ocultar para ouvir. Quando são capazes de
ouvir, são capazes de reunir todos os tipos de informações importantes, permitindo
que informações confidenciais, como senhas, números de segurança social ou outras
informações que as pessoas gostariam de manter privadas, sejam vazadas.

Função auxiliar: Ferramentas e comandos destinados a complementar as demais


funções do dispositivo

Shellcode: Código programado para ser ativado assim que estiver dentro do alvo
para realizar finalidades específicas, permitindo uma forma mais discreta de entrar e
ativar.

Gerador NOP: Esta é uma ferramenta capaz de produzir uma série de bytes aleatórios
projetados para contornar qualquer ID padrão para passar por firewalls ou bloqueios
importantes.

Código pós-exploração: Os módulos pós-exploração permitem que você obtenha


mais informações ou consiga roubar mais acesso dentro de um alvo explorado. Isso
inclui dumps de hash ou serviço
recenseadores.

Usando o Metasploit

Quando você tiver o Metasploit instalado e pronto para uso, tudo o que você precisa fazer é coletar
informações de alguma forma, seja por meio da varredura da primeira porta ou encontrar um scanner
de vulnerabilidade para encontrar uma maneira de entrar.

Depois de entrar, tudo o que você precisa fazer é escolher um exploit e uma carga útil e o Metasploit
fará o resto para você. Efetivamente, a exploração é a forma como as fraquezas são identificadas e
tornam as redes mais difíceis de defender.

A estrutura foi projetada especificamente para fazer uso de vários modelos e interfaces, como
maldições interativas msfconsole e muito mais. Ele pode funcionar a partir do terminal/cmd e também
é compatível com a Metasploit Community Web Interface, que suportará testes de penetração.

Instalando Metasploit
Machine Translated by Google

Antes de poder usar o Metasploit, entretanto, você deve primeiro instalá-lo. A instalação
exigirá que você primeiro desative todos os seus firewalls e software antivírus. Devido
ao arquivo em si, muitas vezes ele é considerado malicioso quando você tenta instalá-lo
com firewalls e software antivírus em execução. Isso interrompe sua instalação. Por
causa disso, é melhor desabilitar o firewall e o software antivírus antes de continuar.
Isso também significa, no entanto, que você também deve certificar-se de que sua fonte
de download é legítima e segura. Se você não tomar cuidado, poderá baixar
inadvertidamente algo que pode ser perigoso ou problemático para você.

Com os firewalls e o software antivírus desativados, certifique-se de ter também


privilégios administrativos. Isso não deve ser um problema no Kali Linux, pois você já
deve ter acesso de usuário root por padrão, mas se não tiver por algum motivo ou
estiver tentando instalar o Metasploit em uma distribuição diferente do Linux, você vai
querer garantir que você também tem esse privilégio de administrador.

Finalmente, para instalar o Metasploit, sua melhor aposta é instalá-lo no site do Rapid7.
Isso permitirá que você obtenha o instalador para seu sistema operacional específico.
Ele também conterá um ambiente independente que você pode usar para atualizar e
executar a estrutura. Isso significa que tudo o que você precisa será atendido durante o
processo de instalação inicial. Você pode, é claro, configurar manualmente o Metasploit
se desejar fazê-lo, mas essa etapa é desnecessária e será ignorada para os fins deste
livro.

Quando você tiver os arquivos, inicie o instalador. Ele solicitará que você insira uma
estrutura específica. Como usuário do Kali Linux, você descobrirá que ele está pré-
instalado e não precisará continuar.

Gerenciando o banco de dados Metasploit

Agora é hora de parar e finalizar as informações do banco de dados antes de continuar.


Quando estiver pronto para gerenciar seu banco de dados, você precisará usar o script
msfdb para configurar o postgresql para ser executado a fim de armazenar o banco de
dados em ~/.msf4/db/

Quando estiver pronto para iniciar isso, você usará o seguinte comando:
Machine Translated by Google

$ msfdb inicialização

Isso acionará o início do banco de dados e você poderá usar qualquer um dos vários comandos que
funcionarão melhor para você. Esses comandos adicionam funcionalidade extra e ajudam a gerenciar
o espaço disponível.
Os comandos mais comuns nesta fase que você precisará incluir: msfdb reinit Isso fará com

que seu banco de dados seja excluído e reinicializado para atualizá-lo.

msfdb delete Usar este comando específico fará com que seu banco de dados seja totalmente
excluído, sem que ele seja reinicializado como o comando anterior causou.

msfdb start Este comando inicia o backup do banco de dados novamente, permitindo que ele
comece a ser

executado msfdb stop Este comando, quando usado, interromperá a execução do banco de dados

msfdb status Este comando permitirá que o terminal imprima o status atual do banco de dados,
mostrando todas as informações críticas dentro do terminal.

O armazenamento de dados do

Metasploit Além de ter tudo o que foi listado até agora, há também o armazenamento de dados –
outro componente central da estrutura do Metasploit que muitas vezes é totalmente esquecido. Esta
é uma série de valores que permitirão configurar qualquer comportamento que desejar dentro da
estrutura Metasploit.
O armazenamento de dados permite que as interfaces alterem as configurações, enquanto as cargas
são capazes de corrigir opcodes e as explorações são capazes de especificar parâmetros específicos.
Isso também permite que a estrutura passe entre os módulos.

Em particular, o Metasploit possui dois armazenamentos de dados diferentes: o armazenamento de


dados global e o de módulo. Você precisará estar familiarizado com ambos para usar o Metasploit de
maneira eficaz.

O armazenamento de dados global pode permitir que todos os módulos o utilizem. Quando a opção
datastore estiver definida, todos os módulos terão acesso a ela. Para definir o mundo
Machine Translated by Google

opção datastore, você precisará usar o comando: setg O


módulo datastore, por outro lado, é projetado para que apenas módulos designados
possam utilizá-lo, e não qualquer pessoa.

Os espaços de trabalho do

Metasploit Os espaços de trabalho do Metasploit permitem segmentar os hosts e


os dados no banco de dados. Isso permite usar os espaços de trabalho para criar
separações entre qualquer um dos segmentos que você deseja testar. Por
exemplo, imagine que você deseja um espaço de trabalho para cada sub-rede da
sua organização porque deseja limitar o número de hosts a uma rede específica.
Isso levaria à criação de espaços de trabalho, como um por departamento. Isso
significa que cada departamento da organização teria seus próprios espaços de
trabalho.
Ao usar um espaço de trabalho, você pode importar dados, manipulá-los e, em
seguida, exportá-los novamente para garantir que os dados possam ser reutilizados
automaticamente. Isso também permite que o mesmo espaço de trabalho relate
automaticamente qualquer coisa sobre qualquer host atual com o qual esteja
envolvido. Isso permite que informações como vulnerabilidades sejam transmitidas.

Se desejar criar um espaço de trabalho, você deve usar o comando workspace


com a opção –a para fazer isso. Qualquer espaço de trabalho que você criar se
tornará o que está sendo usado atualmente.
Imagine por um momento que você deseja um para os três departamentos, A, B
e C da sua organização.

Você escreveria:

espaço de trabalho msf –a

A espaço de trabalho msf –

a B espaço de trabalho ms –a C

No geral, é claro, se você estiver pronto para usar o Metasploit, descobrirá que é
incrivelmente fácil se envolver nele. Tudo que você precisa saber é como percorrer
o sistema e como entender o que você está vendo. Quando você sabe quais tipos
de módulos estão disponíveis, por
Machine Translated by Google

por exemplo, você poderá escolher aqueles que funcionam para você. Como o
Metasploit já vem repleto de todos os tipos de informações para você, projetadas
para garantir que você seja capaz de fazer quase qualquer coisa com apenas alguns
comandos, em vez de ter que dizer constantemente manualmente ao seu sistema o
que você deseja que ele faça, ele é na verdade incrivelmente fácil de usar. É
exatamente por isso que se tornou tão popular.
No final das contas, você deve ficar bem com a versão gratuita que vem com o Linux,
embora existam atualizações disponíveis se você quiser pagar por elas e, em última
análise, isso será uma opinião pessoal e você terá que decidir com base em seus
próprios pensamentos e desejos. É claro que as versões atualizadas, embora tenham
preços bastante elevados, são projetadas para serem incrivelmente poderosas para
você. Eles são voltados para profissionais altamente qualificados em testadores de
caneta que sabem exatamente o que estão fazendo e exatamente o que estão
obtendo, e são capazes de justificar esse preço enorme. No entanto, você não
precisa fazer isso também.
Machine Translated by Google

Capítulo 8: Certificado Digital


Assim como no mundo real, precisamos portar identificação para provar quem somos,
especialmente quando estamos fazendo algo importante, como comprar um carro ou
fazer um empréstimo, sua conexão com a internet também precisa de algum nível de
identificação. É aqui que entram os certificados digitais. Quando você tem servidores
cheios de informações valiosas, provavelmente deseja garantir que suas informações
estejam o mais protegidas possível em todos os momentos – isso faz sentido.
No entanto, como você pode ter certeza de que aqueles que estão acessando as
informações em seu servidor são realmente quem disseram ser ou realmente têm
permissão para acessá-las?

Especialmente nos dias de hoje, quando estamos tão preocupados com o roubo ou
apropriação de dados, é fácil sentir que os nossos dados estão em risco, e por uma
boa razão – e estão. No entanto, ao introduzir uma camada de certificados digitais,
você adiciona uma camada extra de segurança aos seus servidores ou faz com que
suas informações privadas estejam protegidas. Você pode ter certeza de que, embora
esteja usando sites que podem estar na Internet pública, seus próprios dados sejam certificados.

Se você tiver uma LAN, no entanto, talvez não precise desse tipo de certificação
importante que acompanha o uso da rede pública para dados.
O custo do pagamento desses certificados pode ser desnecessário comparado ao
risco. Nesses casos, a melhor ideia para proteger uma rede é usar sua própria CA local
ou autoridade de certificação – isso assinará automaticamente quaisquer certificados
que estejam ativamente instalados em sua LAN para proteger seus servidores.

Na maioria das vezes, isso é feito com uma ferramenta conhecida como OpenSSL –
algo que vem pré-empacotado com o Kali Linux. Discutiremos como criar um certificado
em breve, mas, por enquanto, voltaremos nosso foco primeiro às informações básicas.

Este capítulo discutirá primeiro o que é um certificado digital e as autoridades de


certificação existentes. A partir daí, você aprenderá como criar um certificado digital em
seus servidores web baseados em Kali Linux. Ser capaz de criar seu próprio certificado
digital definitivamente tem suas próprias utilidades, mas também traz seus próprios
problemas. No entanto, se você acha que pode ser útil
Machine Translated by Google

para você, você é mais que bem-vindo para persegui-lo. No mínimo, é mais linguagem
de comando que você pode usar. Na melhor das hipóteses, você poderá encontrar
algum uso legítimo nele.

O que é um Certificado Digital?


O certificado digital é essencialmente a forma de vincular a propriedade de uma
chave pública na internet ao indivíduo que a possui. Eles são usados para compartilhar
chaves públicas para criptografar e autenticar dados. Ao usá-los, você efetivamente
terá uma maneira de proteger a assinatura digital.
Dentro de um certificado digital, existem várias camadas de informações que servem
a propósitos diferentes – existe a chave pública que é certificada. Existem informações
que identificam quem é o dono da referida chave pública.
Existem metadados que estão diretamente relacionados ao certificado digital e existe
uma assinatura digital dessa chave pública específica, gerada pelo emissor do
certificado.

Efetivamente, a chave pública vem em pares – há a chave pública que é usada para
bloquear os dados que precisam ser autenticados, e há a chave privada que é
mantida pelo proprietário, usada para assinar e descriptografar os dados protegidos.
Efetivamente, isso faz com que o proprietário do certificado digital compartilhe a
chave pública com seus dados que foram criptografados, para que possam acessá-
los com a chave privada que os acompanha.

Hoje em dia, a maioria dos principais navegadores da web utiliza certificados digitais
– isso permite que as pessoas saibam que o conteúdo que estão visualizando não foi
alterado por alguém que não teve permissão para fazê-lo e permite descriptografar e
criptografar o conteúdo da web. Efetivamente, esta é apenas mais uma forma de
desenvolver a privacidade e a proteção que as pessoas procuram nas suas interações
com a Internet.

Embora você seja capaz de emitir sua própria PKI (infraestrutura de chave pública) e
discutiremos isso em breve, na maior parte, existe algum tipo de organização que
geralmente gerencia a criação e distribuição de PKIs.
Esta organização é conhecida como autoridade certificadora.

Autoridades de certificação
Machine Translated by Google

A autoridade certificadora é um terceiro confiável que mantém a PKI, emitindo


certificados digitais e protegendo-os contra ataques ou exploração de
qualquer forma. Ao usar terceiros para autenticar um site e garantir que ele
esteja protegido, os sites são capazes de provar que são realmente mais
seguros do que as pessoas poderiam pensar. Eles são capazes de provar
que estão legitimamente interessados e preocupados em manter a segurança
dos clientes e de outras pessoas que acessam ativamente seu site, porque
estão pagando ativamente por esse nível extra de segurança. Os indivíduos
sentem que seus dados estão mais protegidos, o que aumenta a probabilidade
de as pessoas retornarem novamente a esse site específico. Eles estão
dispostos a atirar se sentirem que podem confiar na fonte.

Tipos de certificados
Em última análise, existem vários tipos de certificados que podem ser
fornecidos para um indivíduo. Esses certificados vêm de uma fonte diferente
ou têm uma finalidade diferente e serão tratados de forma diferente
dependendo do tipo de certificado. Os vários certificados que podem ser
usados serão discutidos nesta seção. Os certificados existem em uma
espécie de cadeia entre si, com um validando o outro.
Machine Translated by Google

Certificado Raiz
O certificado raiz é um certificado de chave pública destinado a identificar uma
autoridade de certificação raiz (CA raiz). Qualquer pessoa é capaz de gerar uma
chave de assinatura e assinar esse novo certificado, embora ele não seja
considerado válido até que seja assinado pela CA confiável ou válida. O certificado
raiz é essencialmente o topo da cadeia – deve ser fornecido por um certificado
confiável. Normalmente, eles estão relacionados ao software que você está usando
– se você estiver usando a Microsoft, por exemplo, é provável que seu certificado
raiz seja assinado pela Microsoft.

Efetivamente, cada um dos programas de certificação possui seu próprio tipo de


diretrizes e armazenamentos de certificados raiz que podem ser usados. Eles têm
os padrões mais rígidos por um motivo: se você tiver um desses certificados, será
considerado confiável. O certificado raiz é necessário para garantir que outros
certificados sejam emitidos e verificados.

Certificado Intermediário
Machine Translated by Google

O certificado intermediário é aquele que está no meio – as autoridades de certificação


não tendem a emitir diretamente seus próprios certificados. Por causa disso, eles
usam o que é conhecido como raiz intermediária. Este certificado é usado pela CA
para fazer login e permitir a emissão de quaisquer certificados SSL de usuário final.
Ao fazer isso, pode haver várias paradas raiz intermediárias antes de você chegar
ao certificado SSL. Eventualmente, porém, você chega ao usuário final, que obtém o
SSL.

Certificado SSL
O certificado final, o resultado final, é a camada de soquetes seguros – esta é a
tecnologia padrão global que permite o uso de comunicação criptografada entre um
navegador e um servidor. Eles são usados por milhões de pessoas e empresas em
todo o mundo para proteger dados contra hackers ou ladrões de identidade.
Efetivamente, o SSL permite que a conversa entre o usuário e o servidor seja mantida
privada, mesmo que esteja acontecendo na rede pública da web. Normalmente, são
emitidos por uma autoridade de certificação, em quem se confia para garantir que os
dados serão, de fato, protegidos conforme prometido.
A camada SSL vem em vários tipos diferentes de certificados – eles podem ser
validados por domínio, validados por organização ou validação estendida.
Os certificados SSL validados por domínio dizem o mínimo e prometem o mínimo –
tudo o que você precisa fazer para obter esse SSL é provar que está usando o nome
de domínio correto. Isso mostra que os dados estão sendo enviados e recebidos
conforme pretendido para quem possui o certificado, não há como provar quem é
esse titular do certificado.

Os certificados SSL validados pela organização fornecem um pouco mais de garantia


– eles confirmam que o titular tem algum tipo de direito ou reivindicação de usar um
domínio específico, mas também passam por uma confirmação extra para garantir
que o indivíduo com o certificado é, de fato, o proprietário do domínio.
O certificado de validação estendida, por outro lado, é emitido depois que os
requerentes conseguem provar que são quem dizem ser de acordo com os padrões
de qualquer CA que os esteja examinando.
Machine Translated by Google

Este processo exige a verificação da existência da pessoa física ou jurídica que


deseja solicitar o certificado, garantindo também que a identidade coincide com os
registros oficiais. Efetivamente, a entidade é verificada e autorizada a utilizar esse
domínio e certificado.

Gerando certificados SSL autoassinados Como

você provavelmente já esperava, o Kali Linux vem com seu próprio programa que
permite criar certificados. Isso é feito através do OpenSSL. Embora isso nem sempre
funcione para você e possa, de fato, ser rejeitado quando você tentar usá-lo, você
pode fazê-lo. Você pode fornecer todos os benefícios de criptografia com seu
certificado SSL autoassinado, mas não obterá os benefícios de autenticação. Isso
significa que muitas pessoas não poderão confiar no seu site e é provável que
qualquer pessoa que tentar acessá-lo receba um aviso informando que seu site ou
servidor não é, de fato, verificado e, portanto, não pode ser garantido.

Apesar disso, pode ser útil tê-lo, mesmo que seja apenas para você. Esta seção
discutirá as etapas necessárias para criar seus próprios certificados SSL.
Primeiro, abra o OpenSSL. Lá, você deve usar os seguintes comandos:

openssl genrsa –out key.pem 2048

openssl req –new –sha256 –key key.pem –out csr.csr

oepnssl req –x509 –sha256 –dias 365 –key key.pem –in csr.csr –out
certificado.pem

O primeiro comando aciona uma chave privada RSA de 2.048 bits – este é o formato
recomendado para sua chave e ela será gerada no primeiro comando.

O segundo comando aciona a criação de uma solicitação de assinatura de certificado


– você provavelmente receberá perguntas nesse segundo comando e é sua função
respondê-las com a maior precisão possível para garantir que você seja visto como
confiável.
O terceiro comando aciona a geração de um certificado x509 autoassinado que pode
ser usado em servidores web. Isso é exatamente o que você estava procurando.
Machine Translated by Google

Lembre-se de que eles criptografarão o site e garantirão que seus dados estejam
protegidos, mas na verdade não oferecem benefícios de autenticação.
Obviamente, eles ainda podem ter sua utilidade, como ao proteger um site
durante os estágios iniciais, mas devido ao aviso, é provável que você não queira
manter isso como sua única forma de verificação se estiver esperando tráfego
de longo prazo ou se você lidará com qualquer tipo de informação sensível, como
métodos de pagamento ou endereços.

Em última análise, você precisará descobrir até que ponto pode valer a pena
pagar por um certificado legítimo se não quiser lidar com avisos de segurança
que afugentam as pessoas.
Machine Translated by Google

Capítulo 9: Scripts Bash e Python

O próprio Bash é um shell – significa Bourne Again SHell e serve a um propósito


importante. Permite iniciar o servidor, confirmar se o servidor está aberto e trabalhar
para manter tudo funcionando perfeitamente.
Efetivamente, o shell de um sistema destina-se a receber quaisquer comandos
inseridos por meio do teclado para informar ao sistema operacional o que fazer.
Antigamente, essa era a única maneira real de interagir com seu sistema semelhante
ao Unix, mas hoje em dia temos acesso a muito mais. Atualmente, você pode usar
GUIs junto com CLIs, o que significa que você não precisa mais digitar o que deseja
que seu computador faça, se desejar. É por isso que, em vez de digitar onde está o
seu arquivo para localizá-lo, você pode simplesmente ir ao menu Iniciar, clicar,
pesquisar os arquivos manualmente e abri-lo.

Não há como negar que o bash tem uma história – é o que foi efetivamente usado
inicialmente por aqueles que acessavam seus sistemas originais e, embora fosse
absolutamente útil na época, há dúvidas agora sobre se ainda é a melhor maneira de
interagir. É como a velha colega de trabalho teimosa que está no trabalho desde
sempre e se recusa a mudar, apesar de seu jeito ser desajeitado, ineficiente e, na
verdade, redundante. Todos ficariam mais felizes se ela adotasse a versão mais fácil,
e a produtividade e a facilidade do trabalho aumentariam, mas ela recusa.

Esse mesmo tipo de resistência aparece com o bash e a transição do bash para outra
linguagem, como o Python, que atualmente é um dos principais candidatos como
substituto.
A ideia hoje em dia é que o shell pode estar se tornando obsoleto – existem maneiras
melhores de interagir com o seu sistema operacional. Em particular, o shell possui
vários recursos preocupantes:

A sintaxe às vezes é obscura


Está lento

É fácil acidentalmente deixar de fora algo crucial


Machine Translated by Google

A estrutura de dados da linguagem do shell é uma string


É difícil testar unidades no shell

Cada um deles dá a mão à ideia de substituir a casca. Embora o shell tenha sido usado
como uma linguagem de programação legítima, ele é incompleto – não foi projetado para
ser uma linguagem de programação completa, mas o Python é.

O próprio Python é uma linguagem de programação interpretada de alto nível que deve ser
dinâmica. Ele foi criado para ser orientado a objetos, deve ser em camadas. Ele deve ser
usado como uma linguagem de script ou até mesmo como uma espécie de agente de
ligação entre dois aplicativos ou componentes diferentes. Python é bastante simples de
aprender e está focado em fornecer um sistema de fácil leitura, permitindo que seja mais
fácil de acessar do que algumas linguagens mais complexas que podem enfatizar frases ou
sintaxes antigas e desatualizadas que são simplesmente usadas por tradição e familiaridade
neste momento. . No entanto, a familiaridade nem sempre é uma coisa boa. Às vezes, o
que é mais necessário do que nunca é uma mudança, ou pelo menos uma adaptação de
alguma forma para garantir que você seja capaz de continuar crescendo. É aqui que Python
e bash se encontram.

Efetivamente, então, a melhor maneira de aumentar a produtividade seria abandonar o uso


do shell e, em vez disso, trabalhar com código Python.
Como o Python é mais fácil de ler, é mais rápido e permite testes legítimos, parece que
mudar para ele, pelo menos em alguma capacidade, seria benéfico.

Curiosamente, o Python já vem instalado por padrão nas principais distribuições Linux. Se
você abrir um prompt de comando e digitar “python”, deverá receber um interpretador
Python. Isso por si só sugere que pode valer a pena usar Python em vez de bash ao
considerar a criação de scripts. Graças apenas à facilidade de uso, isso economizaria tempo.

Dê uma olhada em alguns dos motivos mais convincentes para deixar de focar em scripts
de shell e passar a usar Python como um substituto:

Ele é instalado por padrão

É fácil de ler e a sintaxe é simples

É uma linguagem interpretada


Machine Translated by Google

É uma linguagem de programação completa

Python tem acesso a uma biblioteca padrão e a muitas bibliotecas de


terceiros para usar todos os tipos de utilitários

A biblioteca padrão do Python é classificada por data e hora, permitindo


que você coloque uma data em qualquer formato para compará-la com
outras datas

Python é um link de transição mais simples

A afirmação aqui não é abandonar totalmente a casca – a casca tem absolutamente seus
próprios propósitos. No entanto, a casca também é fraca em vários aspectos. Pense em
como seria muito melhor navegar por várias de suas tarefas de uma maneira muito mais
simples - seria bom ter sintaxe e comandos que fizessem mais sentido, em vez de serem
lembrados simplesmente por sua causa, agora que você deveria se lembrar deles .

Claro, existem áreas onde o bash é, sem dúvida, mais simples. É exatamente por isso que
os dois deveriam ser reunidos. Quando estão juntos, eles são capazes de trazer à tona o
que há de melhor um no outro – você terá o melhor dos dois mundos graças a um sistema
que é capaz de fazer a transição entre os dois com facilidade. Python é mais completo e
mais facilmente usado em vários contextos diferentes, enquanto o bash foi projetado com
o Linux em mente. É impossível negar que parte do bash é simplesmente mais agradável
de usar. Por exemplo, considere mover um arquivo da sua área de trabalho para um
diretório no bash:

# cd Desktop# diretório da pasta mv

Observe como isso é legal e legal.

Agora, em Python, seria mais parecido com:

Importe os globpara fname em glob.glob ('pasta):os.rename (fname, 'diretório')


Machine Translated by Google

Não há como negar que o código Python é desnecessariamente volumoso, especialmente


quando se está ao lado daquela sinopse curta e agradável do bash. É exatamente por isso
que seria melhor utilizar os dois juntos, em vez de tentar separá-los e substituir um ou outro.

Embora já tenhamos discutido que é possível trazer seu código Python dentro de seu shell,
também é possível ir na outra direção - você pode introduzir seu script Python dentro de seu
shell e inserir seus scripts de shell dentro Python também. Tudo que você precisa fazer é
importar o módulo do sistema operacional. Se você fizer isso, também poderá usar seus
comandos bash no Python - isso significa que você será capaz de misturar e combinar seus
comandos com facilidade. Pense em como as crianças que cresceram falando duas línguas
em casa tendem a mudar perfeitamente de uma para outra na mesma frase, inserindo
algumas palavras em uma língua e ao mesmo tempo inserindo algumas das outras línguas
de forma intercambiável, criando o que soa como algo que seria impossível de entender, mas
eles o fazem com facilidade. Isso é o que você faria com Python inserindo o bash também.

Para trazer a linguagem bash para python, tudo que você precisa fazer é:

$ python >>>from os import *>>> system ('sudo apt-get update')

E agora você deve ter acesso aos dois idiomas.

Você deve absolutamente tentar mexer nos dois idiomas. Se você ainda não está familiarizado
com Python, você pode se sentir inclinado a se esforçar para aprendê-lo - é incrivelmente
simples de aprender e se você já foi capaz de aprender a se comunicar com o Linux, você
deve ser capaz de aprender a entender Python também.

Tudo o que você precisa fazer é dedicar alguns dos esforços que antes eram necessários
para desenvolver suas habilidades com o Linux para aprender esse sistema também. Você
provavelmente descobrirá que, com o aumento da produtividade, rapidamente passará a
gostar da mudança.

Se você não tem certeza se possui o Python instalado atualmente em seu sistema, você está
com sorte – para descobrir, você precisará inserir o seguinte comando:
Machine Translated by Google

$ python –versão

Você provavelmente obterá uma forma mais antiga e estável de Python que seja
suficiente, mas provavelmente desejará atualizar essa forma para a versão mais
recente. Esta versão está mudando constantemente, então é melhor verificar a
versão que está disponível para você ao ler este livro – você pode fazer isso
simplesmente procurando pela versão mais recente on-line e depois atualizando.

Se você decidir seguir Python em particular, você vai querer encontrar alguns guias
e livros, não muito diferentes deste que você está lendo agora para descobrir o que
precisa saber. Tutoriais e aulas na web são sempre pontos de partida fantásticos
para você começar a experimentar Python.
Eventualmente, à medida que você se sentir mais confortável e familiarizado, poderá
decidir começar a entrelaçar suas tentativas de usar os dois idiomas juntos. Você
pode até decidir que prefere Python a usar o shell, e isso também é bom. Em última
análise, a tecnologia está mudando tão rapidamente que você não pode se dar ao
luxo de se conter com medo de mudar, crescer ou mudar para algo novo – a transição
e o aprendizado são absolutamente benéficos para você.

Agora que este capítulo e este livro chegam ao fim, é hora de você começar a pensar
em como juntar tudo. É hora de considerar se você está realmente interessado no
Kali Linux ou se prefere aprender outra coisa. O que é certo, porém, é que, em última
análise, você deve orientar a si mesmo e às suas próprias decisões para garantir que
está satisfeito com o que escolheu fazer.
Machine Translated by Google

Conclusão

Parabéns – você chegou ao fim do Kali Linux Hacking . Este


livro foi projetado para ser um curso intensivo de aprendizado do Kali Linux - o
sistema operacional projetado especificamente para testes de penetração por
profissionais de testes de penetração para encontrar e reparar qualquer tipo de
fraqueza ou exploração encontrada no sistema. Se você chegou até aqui, deve
estar bastante interessado em instalar o Kali Linux ou usou este livro como guia
e, independentemente de qual dessas opções for verdadeira, obrigado por se
juntar a mim nesta jornada.

Neste livro, você recebeu informações básicas sobre o Kali Linux.


Como lembrete mais uma vez, Kali Linux não é uma distribuição Linux para
iniciantes. Se você leu este livro e está totalmente perdido em vários assuntos,
tudo bem – mas talvez seja melhor começar com um livro para iniciantes, em
vez de um projetado para pessoas que sabem o que estão fazendo e estão
interessadas em fazer melhor e mais.

Em última análise, o próximo passo depende inteiramente de você e do que


você pensa que deseja fazer. Você quer praticar a distribuição real do Kali Linux?
Você pode passar pelas informações e esforços necessários para instalar sua
própria cópia que poderá começar a usar e descobrir. Se você acha que o Kali
Linux não é adequado para você, seja por ser muito difícil, muito diferente ou
simplesmente porque você não sabe o que está fazendo, então provavelmente
é melhor começar com algo mais simples, como o Ubuntu e hortelã.

Sim, este ponto foi reiterado várias vezes porque é muito importante.
Mesmo depois de ler este guia, se você não estiver totalmente confiante em si
mesmo e em suas habilidades, pode ser melhor renunciar temporariamente ao
Kali Linux enquanto desenvolve suas habilidades - e está tudo bem.

Talvez neste ponto você tenha seguido o conselho do capítulo final deste livro e
tenha decidido examinar o Python também, aprimorando suas habilidades de
script para poder utilizar melhor seus próprios comandos. Essa também é uma
decisão fantástica de se tomar e também ajudará a orientá-lo em sua jornada,
simplesmente porque você terá muito mais conhecimento.
Machine Translated by Google

Não importa o que você escolha fazer a seguir, seja buscar mais conhecimento sobre
Linux em geral ou tentar descobrir a melhor forma de interagir com o Kali Linux que
você já instalou, uma coisa é certa: esperamos que você tenha aprendido alguma
coisa durante o processo de leitura deste livro. É com grande esperança que, ao
chegar ao fim deste livro, você o tenha considerado informativo, útil e esclarecedor
sobre o grande mundo do Kali Linux e tudo o que ele tem a oferecer. Não importa se
você é um novato ou alguém familiarizado com outras distros Linux, boa sorte em
seus empreendimentos e lembre-se: só porque você sente que as coisas podem
estar complicadas agora, não significa que você tenha que desistir. Você pode se
esforçar para aprender se quiser, e com esse esforço virão resultados.

Boa sorte e lembre-se de manter seus testes de penetração éticos.

E, finalmente, se você achou este livro informativo, perspicaz, agradável, prático ou


de alguma forma benéfico para você, não hesite em deixar uma resenha com sua
visão e feedback sobre a Amazon. Seu feedback e opinião são sempre muito
apreciados. Obrigado mais uma vez por me acompanhar nesta jornada e boa sorte!

Você também pode gostar