
Um auxiliar de geração de impressões digitais para modelos de rede nuclei
Captura pares de requisição/resposta de pacotes para uma porta e/ou IP para auxiliar na criação de Templates Nuclei baseados em protocolos de rede.
▶ network-fingerprint -h
Isso exibirá a ajuda da ferramenta. Você pode encontrar todas as opções suportadas abaixo:
| Flag | Descrição | Exemplo |
|---|---|---|
| iface | Interface na qual realizar a captura (padrão lo0) | network-fingerprint -iface eth0 |
| ip | IP para filtrar pacotes | network-fingerprint -ip 127.0.0.1 |
| port | Porta na qual capturar pacotes | network-fingerprint -port 27017 |
network-fingerprint requer go1.17+ para instalar com sucesso e ter libpcap-dev instalado no sistema.
Para instalar libpcap-dev:
▶ apt install -y libpcap-dev
▶ go install -v github.com/projectdiscovery/network-fingerprint@latest
Para executar a ferramenta em um alvo e capturar tráfego em uma porta, basta usar o seguinte comando.
▶ network-fingerprint -port <port>
onde <port> é a porta na qual você deseja capturar tráfego.
Para também filtrar por IP ao executar em portas mais comuns, como 80, onde há muito ruído, você pode usar a flag ip.
▶ network-fingerprint -port <port> -ip <destination-ip>
Aqui está um blog detalhado mostrando os usos do network-fingerprint - https://blog.projectdiscovery.io/writing-network-templates-with-nuclei/
testing@local# network-fingerprint -port 27017 -ip 127.0.0.1
2021/04/08 23:15:07 network-fingerprint: nuclei-helper by @pdiscoveryio
2021/04/08 23:15:07 [device] en0 IP: 192.168.1.9
2021/04/08 23:15:07 [device] bridge100 IP: 192.168.64.1
2021/04/08 23:15:07 [device] lo0 IP: 127.0.0.1
{
"data": "\ufffd",
"hex": "dd",
"request": true
}
{
"data": "?\u0001",
"hex": "3f01",
"response": true
}
Mensagens de Requisição (Cliente para Destino) possuem request: true enquanto respostas (Destino para Cliente) possuem response: true definido para ajudar a identificar facilmente as impressões digitais corretas.