Escolar Documentos
Profissional Documentos
Cultura Documentos
Cibernético_
Maximiliano de Carvalho Jacomo
2022
SUMÁRIO
Capítulo 1. Conceito de Pentester (Teste de Intrusão) .................................. 4
2
1
Capítulo 1. Conceito de Pentester (Teste de Intrusão)
De acordo com Fontes (2006), segurança da informação trata-se de
um conjunto de procedimentos, políticas e ações para a proteção das
informações, permitindo que o negócio da organização seja contínuo e sua
missão alcançada. Assim sendo, a segurança da informação precisa ser um
componente crítico de todas as empresas.
4
Um teste de intrusão com um escopo bem definido pode garantir
que os controles de segurança testados foram configurados de acordo com
as boas práticas, as normas e as políticas estabelecidas pela alta
administração da empresa, bem como a existência de vulnerabilidades
comuns ou conhecidas publicamente nos componentes testados no
momento do teste.
5
De qualquer modo, uma dessas lacunas poderia fornecer uma rota
direta para o vazamento ou roubo dados digitais confidenciais, como dados
financeiros, informações sobre novos produtos e serviços, documentos
estratégicos ou classificados.
6
meio de um processo conhecido como “Three-way Handshake”, ou
simplesmente aperto de mão.
• Servidor responde: Sim, por que não? Vou enviar a você a minha
sequência que é a 2000, ok? Já estou enviando também o SYN e
pode enviar a próxima sequência ACK da sua mensagem (1001).
7
Figura 1 – Tree-Way Handshake.
8
Por definição, o Ethical Hacker é um indivíduo que realiza avaliações
de segurança da informação e segurança cibernética em uma infraestrutura
de TI com o consentimento da alta administração da empresa; enquanto o
Black Hacker é um indivíduo desconhecido da empresa que não possui
acordo e muito menos autorização da alta administração. Seu principal
propósito é realizar um ataque contra os sistemas de segurança da empresa,
visando prejudicar a empresa em algum aspecto ou roubar de dados e
informações para obter algum lucro pessoal ou financeiro.
9
uma conferência de segurança da informação em uma faculdade americana.
Sua prisão estava relacionada ao seu trabalho em derrotar a cópia proteção
de e-books, por meio da quebra da criptografia inserida nestes e-books,
projetada pela companhia americana Adobe Systems.
10
dados confidenciais serão tratados durante um Pentest e sua postura
perante a ética, que, convenhamos, é bastante subjetiva. Por exemplo,
entidades como ISSAC, CISSP e ISC, reconhecidas mundialmente em
formar profissionais Ethical Hacker, impõem códigos de ética e conduta
rigorosos para os candidatos que desejam obter a certificação de Ethical
Hacker.
11
As técnicas que uma equipe vermelha usa variam de tentativas entre
explorar falhas humanas por meio de técnicas de engenharia social (arte de
enganar pessoas) em colaboradores, com o objetivo de obter acesso a
sistemas, dados ou informações de diversos tipos de classificação, como a
utilização de códigos e scripts de programação desenvolvidos
exclusivamente para explorar falhas (bugs) em sistemas operacionais,
protocolos etc.
12
Uma equipe vermelha, conforme estudado anteriormente, realiza o
processo de uma invasão, valendo-se de táticas e técnicas características e
utilizadas por um Black Hacker. Já no caso de uma equipe azul, por sua vez,
está lá para encontrar maneiras de defender, mudar e reagrupar
mecanismos de proteção e defesa para tornar a resposta a incidentes muito
mais forte. Em resumo, o Red Team busca explorar vulnerabilidades por meio
de ações ofensivas de ataque. Já o Blue Team busca detectar ações
ofensivas e defender os ativos de TI contra diversos tipos de ameaças.
13
Figura 3 - Resultado da Pesquisa realizada pela revista Infotec.
14
Não há tal coisa como “time vermelho é melhor que azul e vice-
versa”, não há benefício em escolher lados ou investir em apenas um. O
importante é lembrar que o objetivo de ambos os lados é evitar crimes
cibernéticos.
15
Nascida da tentativa de conciliar equipes vermelhas e azuis, a equipe
roxa é um conceito que não descreve verdadeiramente a existência de uma
equipe totalmente nova. Ela é uma combinação das equipes vermelha e azul,
promovendo o envolvimento e a integração entre ambas, para que trabalhem
juntas em prol da segurança da informação e segurança cibernética de uma
empresa.
16
os dois times se unam, compartilhem histórias e conversem sobre vários
ataques e defesas.
17
É importante ressaltar que empresas e equipes de segurança são
afetadas por vulnerabilidades e configurações incorretas e todas têm a
mesma fonte: a pessoa ou grupo que realizou o desenvolvimento do
software. Como diz o ditado: se a depuração é o processo de remoção de
bugs, a programação é o processo de colocar bugs no aplicativo. O teste
prova apenas a presença de bugs, não a ausência deles.
A partir do conceito difundido por April C. Wright, que por sinal foi
recebido com esplendor por várias entidades e pessoas que estão envolvidas
direta ou indiretamente com a segurança da informação, cibersegurança e
afins no mundo a fora, novas estruturas de times foram criadas com base
nas três cores básicas: vermelho, azul e amarelo. Isso fez com que
habilidades e competências fossem misturadas, criando-se, assim,
conceitos e mecanismos de proteção novos para diversas áreas e ambientes
de TI.
18
Figura 2 - Paleta de Cores da Segurança da Informação
19
Figura 6 - Yellow Team + Blue Team = Green Team.
20
ambos se enquadram na mesma categoria "Segurança ofensiva". Porém, há
diferenças entre os dois.
21
Um teste de intrusão ajuda a determinar se um sistema ou
infraestrutura de TI é vulnerável a um ataque cibernético, se as medidas
defensivas são suficientes e quais medidas de segurança falharam no teste.
Ele mostra os pontos fortes e fracos de qualquer infraestrutura de TI em um
determinado ponto do tempo. O processo de teste de intrusão não é casual,
envolve muito planejamento e, principalmente, não deve obstruir o fluxo de
trabalho regular do ambiente corporativo.
22
Pentest Ethical Hacking
O principal objetivo é encontrar O objetivo é abranger vários
vulnerabilidades no ambiente de ataques através de diferentes
destino. técnicas de hackers para encontrar
falhas de segurança.
O teste de intrusão concentra-se na Hacking ético é um termo
segurança de uma área específica abrangente e o teste de intrusão é
definida para o teste. uma das funções do hacker ético.
Espera-se que o ético hacker esteja O hacker ético deve ter um
ciente da execução de diferentes conhecimento abrangente das
metodologias e conheça o objetivo metodologias de hacking.
de cada metodologia, como e
quando executar.
É necessário ter experiência prévia O hacking ético é um passo em
em hacking ético para ser um bom direção ao teste de intrusão. A
analista. menos que se conheça as
metodologias, elas não podem
conduzir um teste.
Um hacker ético pode trabalhar em Sendo um hacker ético, você deve
um domínio e rede específica. O estar ciente dos aspectos técnicos
conhecimento esperado é mais do software e hardware e de
específico em nível de especialista. dispositivos digitais conectados à
rede.
23
identificar e resolver problemas de segurança nas redes, infraestrutura,
aplicativos e outras áreas de TI de uma empresa. Essas avaliações e testes
compartilham um objetivo comum, mas os métodos e ferramentas usados
para encontrar e corrigir falhas de segurança são diferentes.
24
Já um Pentest (teste de intrusão), usa uma abordagem direcionada
para tentar romper a segurança e as defesas de TI, tentando simular um
ataque real por Black Hacker e outros maus atores, que buscam obter acesso
a sistemas críticos e a informações confidenciais da empresa.
25
• As avaliações de vulnerabilidade são baseadas em lista, enquanto
testes de intrusão são baseados em objetivos;
26
de novos sistemas, testando e corrigindo falhas no ambiente de
desenvolvimento ou teste antes de entrar em produção.
27
• Pode apresentar falsos positivos;
28
Bem, é comum que as empresas fiquem na dúvida sobre qual tipo de
Pentesting deve ser escolhido e realizado. Afinal, existem inúmeros. A
seguir, expomos os mais comuns, de acordo com Moreno (2017):
29
• Pentest Interno: normalmente alocado no cliente, para encontrar
vulnerabilidades que possam ser exploradas de dentro para fora do
ambiente corporativo.
30
Para definir o tipo e a metodologia a ser seguida, é preciso
compreender o cliente. Esse é um passo primordial para o sucesso de um
teste de intrusão. Assim sendo, antes de definir um escopo para a
construção de um teste de intrusão, é preciso ouvir o cliente para dar no
andamento ao processo, e perguntas importantes precisam ser feitas a ele,
visando atender às suas expectativas e necessidades. Schultz (2018)
apresenta como exemplo as seguintes perguntas:
b) É o primeiro teste?
31
Figura 9 - Tipos de Pentest
32
Segundo o artigo publicado por Porto (2019), no site
https://escolaeducacao.com.br/, o termo metodologia é derivado de método, do
latim “methodus”, cujo significado representa o caminho ou a via para a
concretização de algo. Método é, portanto, o meio pelo qual se percorre para
alcançar um determinado fim ou a condição fornecida para se chegar a
respectivo conhecimento.
Modalidades de um Pentest
Quanto as modalidades de um teste de intrusão, ou seja, métodos
que podem ser adotados para a realização de um teste de intrusão, podemos
classificá-los de três formas:
33
teste mais próximo de uma invasão real. Isso porque nenhuma
informação sobre o ambiente de TI é fornecida ao Ethical Hacker,
fazendo com que este adote métodos específicos para adquirir o
máximo possível de informações sobre os ativos e recursos de TI
disponíveis no alvo, identificando os pontos fracos
(vulnerabilidades) e os possíveis impactos associados à exploração
desses pontos fracos;
34
2
Capítulo 2. Fases do Teste de Penetração
Antes de apresentar os conceitos relacionados às fases de um teste
de penetração, precisamos entender que para cada uma das fases será
necessária a utilização de ferramentas e técnicas específicas e aderentes à
fase em questão. Porém, adquirir as técnicas necessárias requer por parte
das equipes de segurança um processo de estudos contínuo e acumulativo.
36
Atualmente, o Kali Linux é adotado mundialmente por diversas
equipes de segurança para realização de auditorias em segurança da
informação e segurança cibernética, permitindo que elas executem testes
de penetração em seus ambientes de TI.
37
No geral, um teste de penetração, possui entre cinco ou seis fases,
dependendo da metodologia a ser seguida, e cada fase poderá receber
diversas nomenclaturas. Como exemplo, podemos citar a primeira fase de
um teste de penetração. Essa fase costuma ser denominada por alguns
autores e Ethical Hackers como: Informação do Alvo. Já para outros autores
e Ethical Hackers, essa fase pode ser denominada como: Coleta de
Informações ou Reconhecimento.
Eliminação /
Exploração; Pós Exploração;
Reporte
38
acordos relacionados ao projeto, como por exemplo os acordos de
confidencialidade, os contratos que garantem ao executor do teste as
devidas autorizações para a realização do teste por parte da alta
administração da empresa, entre outras questões legais.
39
2.2. Fase 2: Reconhecimento do Alvo
Aqui, nada pode ser deixado de lado. Isso porque o máximo possível
de informações sobre o alvo deverá ser coletado para garantir o objetivo do
teste de intrusão. Trata-se da realização da maior parte do trabalho realizado
pelo Ethical Hacker durante todo o teste de intrusão, garantindo, assim, a
maior probabilidade de acesso ao alvo auditado.
40
colaboradores envolvidos em processos críticos da empresa acabam sendo
suscetíveis às investidas de ameaças, fornecendo informações valiosas.
41
Nessa fase, o Ethical Hacker pode, por exemplo: verificar as
estruturas de diretórios e arquivos contidos em um sistema operacional, as
configurações adotadas em senhas, os compartilhamentos de redes
existentes na infraestrutura de TI, os bancos de dados existentes e várias
outras ações que permitam extrair o máximo de dados e informações dos
sistemas que a empresa utiliza.
• Entre outras.
42
Essa prática realizada pelo Ethical Hacker, além de possibilitar o seu
retorno, consolida todo o trabalho realizado anteriormente, validando,
assim, o sucesso do teste de intrusão.
43
Nesse contexto, as equipes de segurança e um Ethical Hacker devem pensar
e agir como os invasores, entendendo seus métodos de operação e as
tecnologias utilizadas durante a invasão. Essa ação contribuirá no processo
de investigação de incidentes de segurança.
44
3
Capítulo 3. Ferramentas e Técnicas Ethical Hacker
Neste capítulo, iremos estudar algumas das principais ferramentas
e técnicas utilizadas para a realização de um teste de penetração. Vale
ressaltar que um Ethical Hacker deverá adquirir habilidades e competências
em diversos planos para realizar o seu trabalho. Para isso ele pode com um
“cardápio” completo que contém milhares ferramentas e técnicas
disponíveis.
46
de maneira estratégica antes que esse possa ser atacado e conquistado, por
meio de táticas de reconhecimento detalhado.
47
Figura 12 - Resultado da pesquisa utilizando a expressão intext:
48
Figura 14 - Acesso ao conteúdo
49
o conteúdo deste pendrive? Observe que, nesse momento, pelo menos o
fator “curiosidade” exposto será o fator motivador que irá explorar uma
vulnerabilidade humana.
Agora, vamos supor que você foi tomado pela curiosidade de abrir o
conteúdo existente no pendrive encontrado, inserindo-o em seu
computador no trabalho. Desse modo, caso o arquivo contido no pendrive
seja um arquivo malicioso, por exemplo, um malware do tipo Backdoor ou
Trojan, todas as medidas de proteção implementadas pelas equipes de
segurança no ambiente corporativo, tais como firewall, IPS, IDS e outras,
não servirão de nada. Isso porque a vulnerabilidade explorada está
relacionada ao fator humano.
50
É importante ressaltar que a melhor tática para mitigar a engenharia
social e tratar as vulnerabilidades relacionadas ao fator humano são as
políticas de treinamentos e conscientização envolvendo todos os
colaboradores da organização.
51
3.1.2. Netcraft
Conforme mencionei, às vezes, as informações que os servidores
web e as empresas de web hosting reúnem e tornam publicamente
disponíveis podem dizer muito a respeito de um site ou empresa. Por
exemplo, uma empresa chamada Netcraft faz o log do uptime e faz consultas
sobre o software subjacente. (Essas informações estão publicamente
disponíveis em http://www.netcraft.com/.) O Netcraft também provê outros
serviços e suas ofertas relacionadas ao antiphishing e segurança cibernética
são de particular interesse para a segurança de informações. Por exemplo, a
figura 13 mostra o resultado ao fazermos uma consulta no endereço
http://www.igti.edu.br.
52
Figura 15 - Resultado da pesquisa utilizando Netcraft
53
Figura 16 - Resultado obtido com o comando whois
54
A execução de outros comandos no shell, como por exemplo o
comando ping podem retornar esse tipo de informação. Mas, lembre-se que
o propósito é diferente. Por exemplo, o comando ping tem como propósito
verificar se um determinado host se encontra ativo, através do protocolo
ICMP e o envio de pacotes ICMP_ECHO e o recebimento de mensagens
ICMP_ECHO_REPLAY.
55
Outro utilitário para coletar informações de um DNS é o “host”.
Podemos pedir ao “host” que forneça os servidores de nome para um
domínio por meio do comando host -t ns domínio.
56
• A – Associa um nome a um endereço IP;
57
Figura 19 - DIG − resolução servidor mail (MX)
58
Por questões éticas, ocultamos o domínio, mas percebe-se
claramente que esse domínio possui configurado a transferência de zonas
entre seus servidores DNS, prática comum e necessária para garantir a
disponibilidade do serviço de DNS da empresa. Porém, a questão está
relacionada a não proteção da transferência de informações entre os
servidores primário e secundário de DNS, permitindo, assim, um Black
Hacker coletar informações para si, apenas direcionando a saída das
informações para um arquivo texto, por exemplo, e posteriormente examiná-
lo com calma para entender os serviços disponíveis como: e-mail, web, ftp
etc.
59
• Edite o arquivo lista.txt com o comando vi e acrescente algumas
palavras como por exemplo: curso, ftp, painel, admin, canvas, mysql
e salve o arquivo;
60
executar o comando: fping -f alvos.txt. Endereços IP que
apresentarem no final “is alive” significa que estão ativos.
61
junto ao payload definindo se elas estão disponíveis, ou não, para conexão,
por exemplo, a flag=SA significa disponível, já a flag=RA significa
indisponível. Agora, faremos outro teste, pela qual bloquearemos a
comunicação ICMP utilizando o firewall Iptables do Kali Linux.
62
3.1.6. Fingerprint
Outro método importante realizado na fase de reconhecimento é o
Fingerprint. Esse método consiste na tentativa de obter dados e
informações sobre os sistemas operacionais que estão sendo executados no
alvo. Por meio da captura de banners, um invasor ou Ethical Hacker pode
determinar qual a melhor alternativa para explorar o alvo, através do
conhecimento, por exemplo, de informações como: versão do sistema
operacional, releases do sistema operacional e outras.
63
Note que além do nmap retornar as portas que estão abertas,
mostrou também o sistema operacional.
64
No exemplo a seguir, utilizamos o nmap para detectarmos o banner
do protocolo SSH do alvo. Observe:
65
canivete suíço. É muito poderosa, com ela também podemos realizar
varreduras de porta e conexões reversas.
66
Figura 22 - Interface Sparta
67
Figura 23 - Resultados obtidos com Sparta
68
Figura 24 - Captura da página HTTP do alvo
69
Figura 25 - Site Grabify
70
Figura 26 - Obtendo informações com Grabify
71
Após o cadastro, o site abre uma página administrativa, na qual
permitirá você acompanhar os “passos” do receptor do e-mail após o seu
recebimento, como por exemplo em que data e hora o e-mail foi aberto, se
no caso desse e-mail possuir anexo, em que momento esse anexo foi aberto
e assim por diante. Daí, você me pergunta: professor, mas por que um Ethical
Hacker ou um Black Hacker precisa dessas informações?
72
Para realizar um rastreamento de um e-mail, basta enviar um e-mail
e, ao final do endereço eletrônico, acrescentar: .mailtracking.com no final do
e-mail observe:
73
Figura 29 - Leitura e abertura do e-mail recebido
74
várias fontes públicas com o propósito de auxiliar as equipes de segurança
a investigarem dados e informações disponíveis do ambiente de forma fácil,
visando mitigar diversos tipos de vulnerabilidades que podem ser utilizadas
pelos Black Hackers. Com o Maltego, podemos descobrir os relacionamentos
existentes entre todas as entidades e tecnologias que um ambiente de TI
possui.
75
Figura 33 - Exibição dos relacionamentos existentes no domínio igti.edu.br
76
técnicas mais comuns e utilizadas por um Ethical Hacker ou Black Hacker
para descobrir serviços/recursos vulneráveis em um sistema-alvo.
77
3.2.1. Varredura com NMAP
Ferramenta criada em setembro de 1997, por Gordon Fyodor Lyon, o
NMAP (Network Mapper), em português “mapeador de redes”, é utilizado em
grande escala no Pentest. As principais funcionalidades do NMAP são
varreduras de portas, descoberta de serviços e a detecção de versões.
Existem versões para UNIX ou para Windows, em modo texto ou modo
gráfico NMAP (Zenmap). De acordo com seu criador, os métodos suportados
pelo NMAP são:
78
A seguir, faremos uma varredura do tipo TCP Connect ou conexão
completa Three-Way handshake, este tipo de varredura não é aconselhável,
pois qualquer IDS ou Firewall poderia detectar facilmente.
Observe que o nmap nos retorna algumas portas abertas, dentre elas
80 HTTP e, diante do resultado, podemos deduzir a existência de um servidor
WEB rodando nesta porta. Porém, para termos a certeza, vamos usar o
comando nmap –sV para detecção de versão de serviços e vamos varrer
somente a porta 80.
79
Agora, obtivemos a certeza de que há um servidor WEB sendo
executado neste host e que está respondendo na porta 80 do protocolo TCP
utilizando o serviço HTTP. Quanto ao tipo do servidor, observamos que se
trata do Apache na versão 2.4.41 em um sistema operacional Linux Debian.
Desse ponto em diante, poderíamos buscar vulnerabilidades associadas ao
servidor Apache na versão 2.4.41 e, caso encontradas, explorá-las por meio
por exemplo de exploits.
80
foi registrada a conexão, possivelmente não será detectada por um firewall
ou IDS.
81
Agora, podemos observar que a porta 80 está sendo filtrada. Ou seja,
existe um mecanismo de proteção (no caso o firewall) verificando as
solicitações de conexões da porta 80 do protocolo tcp e serviço http.
82
3.2.1.3. Zenmap
Não podemos deixar de fora o Zenmap, versão gráfica do poderoso
NMAP. Interativa, que exibe os resultados de forma organizada, mostrando
detalhes com a varredura em andamento, podendo desenhar o mapa
topológico da rede testada e é de fácil utilização.
83
84
3.2.2. Scanner OpenVas
Descobrir vulnerabilidades em sistemas computacionais é uma
tarefa árdua para muitos administradores de sistemas e analistas de
segurança, principalmente, porque existem diversos equipamentos,
sistemas e recursos para serem gerenciados, além do trabalho de pesquisa
que precisa ser feito para entender as vulnerabilidades encontradas e
encontrar as melhores soluções. Então, agora, imagine você poder fazer todo
esse trabalho de verificação e análise de vulnerabilidades que afetem a
segurança usando uma única ferramenta! Portanto, conheça o OpenVas
(Open Vulnerability Assessment System).
85
Figura 37 - Interface OpenVas.
86
CVEs (do inglês, Common Vulnerabilities and Exposures) ou
Vulnerabilidades e Exposições Comuns é uma lista de entradas criada em
1999 pela empresa MITRE1, que tem como objetivo identificar e categorizar
vulnerabilidades em dispositivos computacionais (hardware e software)
para auxiliar as equipes de segurança da informação e segurança
cibernética. NTVs (do inglês, National Vulnerability Database) ou Banco de
Dados Nacional de Vulnerabilidades é um repositório controlado e mantido
pelo governo dos Estados Unidos que tem como objetivo realizar o
gerenciamento de vulnerabilidades baseado em padrões usando o SCAP –
Security Content Automation Protocol, que permite medição de segurança
e conformidade em conjuntos de hardwares e softwares desenvolvidos.
1 Mitre é uma organização sem fins lucrativos que opera centro de pesquisas e
desenvolvimentos financiados pelo governo federal nos Estados Unidos.
87
Um ponto importante que não podemos deixar de mencionar, para
melhor compreensão, são os conceitos relacionados aos seguintes itens:
88
3.2.3. Nmap Scripting Engine
Agora, vamos discutir outra ferramenta que oferece o recurso de
scanning de vulnerabilidades. Assim como o OpenVas evoluiu a partir de um
framework de exploração de falhas até se tornar um pacote completo de
análise de vulnerabilidades, com centenas de bibliotecas de
vulnerabilidades e módulos, o Nmap, de modo semelhante, evoluiu além de
seu objetivo inicial, que era o de efetuar scanning de portas. O NSE (Nmap
Scripting Engine) permite executar scripts publicamente disponíveis e
possibilita a criação de seus próprios scripts. Você encontrará os scripts
empacotados com o NSE no Kali em /usr/share/nmap /scripts. Os scripts
disponíveis se enquadram em diversas categorias, incluindo coleta de
informações, avaliação ativa de vulnerabilidades, pesquisa de sinais de
comprometimentos anteriores e assim por diante. A listagem (figura 40)
mostra os scripts NSE disponíveis em sua instalação default do Kali.
89
Se a flag -sC for usada para dizer ao Nmap para executar um scan de
scripts, além de um scanning de portas, ele executará todos os scripts da
categoria default, como mostrado a seguir:
Como você pode ver, o Nmap Scripting Engine descobriu uma boa
quantidade de informações interessantes. Por exemplo, vemos que o
servidor SMTP na porta 25 do alvo Windows Server 2008R2 permite o uso
do comando VRFY, que permite ver se um nome de usuário existe no
servidor de e-mails. Se tivermos um nome de usuário válido, o uso desse
comando fará com que ataques para adivinhar credenciais tenham muito
mais chances de serem bem-sucedidos.
90
3.2.4. Metasploit Modo Scanner
O Metasploit, também pode ser utilizado como um scanning de
vulnerabilidades por meio de vários módulos auxiliares. De modo diferente
dos exploits, esses módulos não nos permitirão o controle do computador-
alvo, porém nos ajudarão a identificar vulnerabilidades a serem exploradas
posteriormente. Como exemplo da funcionalidade desses módulos observe
o resultado do metasploit após uma análise para descobrir qual o software
utilizado como servidor FTP no nosso alvo (Windows Server).
91
No caso, verificamos se o alvo possui a vulnerabilidade MS17-010,
bem comum em diversos sistemas operacionais da família Microsoft
Windows e que possibilitou mais de 300 mil computadores serem infectados
com o Ransomware WannaCry no ano de 2018, causando um grande
transtorno para diversas empresas e equipes de TI e segurança da
informação.
92
Observe que, após a análise realizada, percebe-se que o servidor
WEB em referência possui diversos métodos habilitados, o que pode
proporcionar uma exploração mais avançada e posteriormente um roubo de
dados e informações.
93
3.2.6. Captando o Tráfego - Whireshark
Antes de prosseguirmos para a exploração de falhas (4ª fase),
usaremos a ferramenta de monitoração Wireshark, para efetuar o sniffing e
a manipulação do tráfego de modo a obter informações úteis de outros
computadores da rede local. Em um teste de invasão interno, quando
estivermos simulando uma ameaça interna ou um invasor que tenha
conseguido acessar a periferia do sistema, capturar o tráfego de outros
sistemas da rede pode nos proporcionar informações adicionais
interessantes (quem sabe até mesmo nomes de usuário e senhas) que
poderão nos ajudar na exploração de falhas. O problema é que a captura de
tráfego pode gerar uma quantidade massiva de dados potencialmente úteis.
Capturar todo o tráfego somente em sua rede local pode fazer com que
várias telas do Wireshark sejam preenchidas rapidamente, e descobrir qual
tráfego é útil em um teste de invasão pode ser difícil. Vamos dar uma olhada
em diversas maneiras de manipular uma rede para ter acesso ao tráfego ao
qual não deveríamos ter permissão para visualizar.
94
modo promíscuo) em todas as interfaces no Wireshark. Isso diz ao nosso
NIC (Network Interface Controller) para acessar tudo o que for visto por ele,
o que, em uma rede com hub, corresponde a todos os pacotes. De modo
diferente dos hubs, os switches enviam tráfego somente para o sistema
desejado, portanto, em uma rede com switches, não podemos ver, por
exemplo, todo o tráfego de e para o controlador de domínio sem que
enganemos a rede para que ela nos envie esse tráfego. A maioria das redes
com as quais você se deparar nos testes de invasão provavelmente será
composta de redes com switches; até mesmo alguns hardwares de redes
legadas que argumentam ser um hub podem ter a funcionalidade de um
switch.
95
Para uma demonstração do tráfego que podemos capturar em uma
rede com switches, vamos começar nos conectando ao nosso alvo Windows
Server a partir de nosso computador Kali por meio de FTP.
96
Observe que, no exemplo apresentado, ao capturarmos os pacotes
de dados por meio do Wireshark, coletamos algumas informações que “não
deveriam” ser visualizadas. Aqui já temos um ponto de vulnerabilidade – a
exposição de informações como usuário e senha para conexão ao serviço de
FTP, trafegando livremente na rede!
Mesmo após ter filtrado o tráfego, pode haver várias conexões FTP
capturadas durante o mesmo intervalo de tempo, portanto pode continuar
sendo difícil dizer o que está acontecendo. Mas, depois que encontrarmos
um pacote interessante, por exemplo, o início de um login FTP (demonstrado
anteriormente), podemos explorar a conversação mais detalhadamente ao
clicar no pacote com o botão direito do mouse e selecionar Follow TCP
Stream.
97
revelar informações importantes a um invasor. No exemplo abaixo, veja que
um simples e-mail trocado entre funcionários pode ser capturado utilizando-
se o Wireshark e posteriormente, após uma análise minuciosa dos dados,
podemos encontrar por exemplo dados bancários da empresa ou outras
informações.
98
Figura 43 - Datagrama contendo informações importantes
Dados descobertos!
“segue dados para acesso as contas bancárias:
• Banco Orangecolor
• Ag 001 conta:0012-3
• Usuário: morangecolor
• Senha: m2020orange
99
uma edição de código aberto continua disponível, com o desenvolvimento
amplamente direcionado pela comunidade de segurança a segurança da
informação e cibersegurança.
100
fazer esse exploit funcionar em seu teste de invasão. Nosso tempo
provavelmente será mais bem empregado em tarefas que sejam difíceis de
automatizar e felizmente podemos usar o Metasploit para fazer com que
explorar vulnerabilidades conhecidas, como o MS17-010, seja rápido e
descomplicado.
101
Observe que, após seu início, o Metasploit nos informa a quantidade
de exploits, módulos auxiliares e assim por diante, que constam em sua base
de dados (seta vermelha na figura 44).
Vale lembrar que esta base está em constante atualização por parte
da Rapid7 e da comunidade de segurança da informação e segurança
cibernética. Para manter seu Metasploit devidamente atualizado, basta
executar no terminal do shell do Kali Linux o comando: msfupdate e
aguardar até o final das atualizações.
Aqui, vai uma dica: caso em algum momento você se sinta perdido
ao utilizar o msfconsole, basta digitar “help” para obter uma lista de todos
os comandos disponíveis e consecutivamente a descrição de cada um deles.
Caso deseje uma informação mais detalhada sobre o comando, digite “help”
seguido pelo nome do comando. Veja o exemplo:
102
ausente em nosso alvo Windows Server 2008R2? Bem, realizando uma
varredura de vulnerabilidades, com o comando nmap, por exemplo:
103
Conforme podemos observar, há pelo menos cinco módulos que
podem ser acionados no msfconsole e que poderemos utilizar para realizar
o ganho de acesso. Vamos utilizar para o nosso teste de penetração o
exploit: eternalblue_doublepulsar (aquele utilizado pelo Ransomware
WannaCry em 2018) e, posteriormente, iremos configurar o “payload” e as
informações como: IP e Porta do equipamento remoto (alvo) e do
equipamento local (invasor); sistema operacional e processo do alvo, entre
outras informações que coletamos na fase de varredura. Mas, antes, vou
apresentar alguns conceitos básicos que você precisa saber para realizar a
configuração junto ao msfconsole:
104
• LHOST e LPORT – refere-se ao endereço IP (LHOST) e porta de
comunicação (LPORT) que será utilizada pelo invasor;
105
Feito as configurações, vamos executar o comando “exploit”. Se tudo
estiver correto, haverá então o ganho de acesso ao sistema-alvo.
106
conectando-se a banco de dados, instalando novos serviços, entre outras
coisas mais. Ou seja, realizando as fases 5 e 6 de um teste de penetração.
107
para aumentar as falhas de vulnerabilidades, possibilitando que invasores e
ameaças comprometam o ambiente corporativo e sua infraestrutura de TI,
representado um risco sério a empresa.
O problema com a força bruta é que à medida que senhas mais fortes
são usadas, o tempo necessário para descobri-las por meio dessa técnica
pode ultrapassar horas, anos e até mesmo a duração de uma vida.
Provavelmente, poderemos descobrir credenciais funcionais mais
facilmente se fornecermos palpites embasados sobre as senhas corretas a
uma ferramenta automatizada de login. Palavras que se encontram em
dicionários são fáceis de serem lembradas, portanto, apesar dos avisos de
segurança, muitos usuários as incorporam nas senhas.
108
Figura 48 - Varredura de vulnerabilidades com Sparta
109
serviço do sistema-alvo que deseja ganhar o acesso. Dica: um ótimo
dicionário com mais de 14 milhões de combinações de senha é o rockyou.txt,
que pode ser encontrado facilmente na internet.
110
Podemos ainda realizar o mesmo processo de ataque de força bruta,
através do terminal shell do Kali Linux, observe:
111
formato texto simples. Entretanto, podemos fornecer um palpite para uma
senha, gerar sua hash usando a função unidirecional de hash e comparar o
resultado com a hash conhecida. Se as duas hashes forem iguais, é porque
descobrimos a senha correta.
112
depende da complexidade da senha criada pelo usuário. Porém, para
acelerar o processo, alguns Ethical Hackers utilizam dicionários, como por
exemplo o Hydra e Medusa, visto anteriormente.
113
empresa ou até mesmo na sala do servidor. O departamento de suporte de
TI pode receber um telefonema desesperado da secretária de um diretor,
argumentando que o diretor não estar conseguindo acessar sua conta de
webmail.
114
ela possa passar”. Outras orientações para ter ciência quanto à segurança
podem ser novidade para muitos funcionários. Por exemplo, em um recente
de testes de invasão realizado na empresa em que trabalho, tive bastante
sucesso ao deixar pen drives USB em uma mesa qualquer com uma etiqueta
em que se lia “Folha de pagamento”. Usuários curiosos começam
conectando esses dispositivos, abrem os arquivos e me concedem acesso a
seus sistemas. Treinamentos para conscientização a respeito de segurança
no que diz respeito a arquivos maliciosos, pen drives USB e outros ataques
podem ajudar a impedir que usuários se tornem vítimas desses tipos de
ataques de engenharia social.
115
Figura 54 - Interface SET
116
A primeira opção, Perform a Mass Email Attack (Realizar um ataque
em massa via e-mail), permite enviar um arquivo malicioso a um endereço
predefinido de e-mail ou a uma lista de endereços, assim como instalar um
listener no Metasploit para o payload selecionado. A segunda opção, Create
a FileFormat Payload (Criar um payload fileformat), permite criar um arquivo
malicioso com um payload do Metasploit. A terceira opção permite criar um
template de e-mail a ser usado em ataques com o SET. Selecione a opção 1
para criar um ataque por e-mail. (Teremos a opção de enviar um único e-mail
ou vários e-mails posteriormente.)
117
Você será solicitado a escolher um payload para o seu arquivo
malicioso, escolha o Windows Meterpreter Reverse_TCP x64 (para sistemas
operacionais 64bits).
118
template de e-mail padrão ou se deseja criar um template personalizado.
Vamos escolher template padrão.
119
Sessão conectada, após o usuário abrir o arquivo PDF.
120
digitadas. Quem sabe o usuário faça login em sites ou em outros sistemas
da rede enquanto nossa sessão Meterpreter estiver ativa. Inicie o keylogger
na sessão Meterpreter do sistema-alvo digitando keyscan_start, e
posteriormente key_dump para capturar o que está sendo digitado no
teclado. Para finalizar a captura, use key_stop.
121
O processo para limpeza utilizando o meterpreter é bem simples,
basta executar o comando “clearev” para apagar todos os eventos.
122
4
Capítulo 4. Tópicos Especiais: HoneyPot
Por definição, um HoneyPot é um recurso computacional de
segurança dedicado a ser sondado, atacado ou comprometido. Podendo ser
compreendido melhor como uma configuração de um computador ou rede
que tem como principal objetivo aprimorar o conhecimento das equipes de
segurança atraindo Black Hackers ou Crackers para posteriormente analisar
suas ações e determinar os melhores mecanismos e medidas de proteção
em um ambiente de TI real.
124
TI, sua implementação requer muito cuidado e atenção, pois caso contrário,
pode-se tornar uma porta de acesso aos Black Hackers.
125
Quanto à classificação de um HoneyPot, este pode ser classificado
de acordo com a sua localização em um ambiente de TI, podendo estar
localizado no ambiente de produção, no qual busca-se obter informações
sobre as técnicas usadas para tentar violar os sistemas que compõem essa
infraestrutura.
126
porque haverá a necessidade de, “vamos dizer”, criar toda uma
infraestrutura de TI do zero.
127
contém não é relevante em nenhum caso. Como exemplo, podemos
citar: HI-HAT (Kit de Ferramentas de Análise de Honeypot de Alta
Interação), uma ferramenta que transforma aplicativos php em
aplicativos de honeypot de alta interação. Também oferece uma
interface web que permite consultar e monitorar os dados gravados;
HoneyBow, uma ferramenta de coleta de malware que pode ser
integrada ao honeypot de baixa interação da Nephentes para criar
uma ferramenta de coleta muito mais completa; Sebek, que funciona
como um HIDS (Sistema de Detecção de Intrusão Baseado em Host
), permitindo capturar uma grande variedade de informações sobre a
atividade em um sistema, uma vez que atua em um nível muito baixo.
É uma arquitetura cliente-servidor, com capacidade
multiplataforma, que permite que Honeypots de clientes sejam
implantados nos sistemas Windows, Linux, Solaris etc., responsáveis
por capturar e enviar a atividade coletada para o servidor Sebek.
Poderíamos dizer que faz parte de uma terceira geração de
honeypots.
128
Referências
BRUYNE, Paul de. Dinâmica da pesquisa em Ciências Sociais: os polos da
prática metodológica. 5. ed. Rio de Janeiro: Francisco Alves, 1991.
129
MOTA FILHO, José Eriberto. Análise de Tráfego em Redes TCP/IP. São Paulo:
Editora Novatec, 2014.
7
10
6
9
8
5
Techniques for Resolving Security Issues. Índia: Apress, 2018.
130