
NTLMRawUnhide.py é um script Python3 projetado para analisar arquivos de captura de pacotes de rede e extrair hashes NTLMv2 em um formato que pode ser quebrado. Os seguintes formatos binários de captura de pacotes de rede são suportados: *.pcap *.pcapng *.cap *.etl
Autor : Mike Gualtieri
Blog : https://www.mike-gualtieri.com
Twitter : https://twitter.com/mlgualtieri
GitHub : https://github.com/mlgualtieri/NTLMRawUnhide
Artigo : https://www.mike-gualtieri.com/posts/live-off-the-land-and-crack-the-ntlmssp-protocol
NTLMRawUnhide.py é um script Python3 projetado para analisar arquivos de captura de pacotes de rede e extrair hashes NTLMv2 em um formato quebrável. A ferramenta foi desenvolvida para extrair hashes NTLMv2 de arquivos gerados por binários nativos do Windows, como NETSH.EXE e PKTMON.EXE, sem conversão.
Os seguintes formatos binários de captura de pacotes de rede são suportados:
Usage: NTLMRawUnhide.py -i <inputfile> [-o <outputfile>] [-f] [-h] [-q] [-v]
Main options:
-f, --follow Continuously "follow" (e.g. "read from")
input file for new data
-h, --help
-i, --input <inputfile> Binary packet data input file
(.pcap, .pcapng, .cap, .etl, others?)
-o, --output <outputfile> Output file to record any found NTLM
hashes
-q, --quiet Be a lot more quiet and only output
found NTLM hashes. --quiet will also
disable verbose, if specified.
-v, --verbose
Extrair hashes NTLMv2 de examples/capture.pcap:
python3 NTLMRawUnhide.py -i examples/capture.pcap
O mesmo, mas com saída verbose:
python3 NTLMRawUnhide.py -i examples/capture.pcap -v
Extrair hashes NTLMv2 de examples/capture.pcap e continuar monitorando o arquivo por novos hashes (como tail -f):
python3 NTLMRawUnhide.py -i examples/capture.pcap -f
Extrair hashes NTLMv2 de examples/capture.pcap e escrever hashes extraídos em /tmp/hashes.txt:
python3 NTLMRawUnhide.py -i examples/capture.pcap -o /tmp/hashes.txt
Para criar um arquivo de captura de pacotes compatível, qualquer um dos seguintes métodos pode ser usado:
Set capture filter as "tcp port 445"; Save as .pcapng
tcpdump -i eth0 -w capture.pcap "port 445"
netsh.exe trace start persistent=yes capture=yes TCP.AnyPort=445 tracefile=C:\Users\Public\capture.etl
netsh.exe trace stop
pktmon.exe filter add SMB -p 445
:: List all filters
pktmon.exe filter list
:: Find id of the network adapter (example > Id: 9)
pktmon.exe comp list
:: pktmon.exe start --etw -p 0 -c [Adapter ID]
pktmon.exe start --etw -p 0 -c 9
:: Will create the file PktMon.etl in current directory
pktmon.exe stop
:: Cleanup
pktmon.exe filter remove
A seguinte URL foi muito útil ao construir esta ferramenta: The NTLM Authentication Protocol and Security Support Provider http://davenport.sourceforge.net/ntlm.html