masscan: port scanning em escala de internet, usado com segurança
masscan · AGPL-3.0
O masscan envia seus próprios pacotes em vez de usar a pilha do SO, e é por isso que consegue varrer um grande espaço de endereços em minutos. Ele responde uma pergunta — quais portas estão abertas — e responde rápido. Não faz detecção de serviço bem; combine com o nmap para isso.
Instalação
sudo apt install masscan # Debian / Ubuntu / Kali
brew install masscan # macOS Compilar do fonte te dá uma versão mais nova:
git clone https://github.com/robertdavidgraham/masscan && cd masscan && make -j
sudo make install Comandos principais
# uma faixa, portas comuns, deliberadamente lento
sudo masscan 10.0.0.0/24 -p80,443,8080,8443 --rate 1000
# faixa TCP completa
sudo masscan 10.0.0.0/24 -p0-65535 --rate 5000 -oJ masscan.json
# alimenta os resultados no nmap para detecção de versão
sudo masscan 10.0.0.0/24 -p0-65535 --rate 1000 -oL -
| awk '/open/{print $4":"$3}' > open.txt
# exclui faixas que você não está autorizado a tocar
sudo masscan 10.0.0.0/8 -p443 --rate 2000 --excludefile out-of-scope.txt Saída
{"ip":"10.0.0.14","timestamp":"1756468800","ports":[{"port":8443,"proto":"tcp","status":"open"}]} Onde ele entra no Tandera
O masscan roda em active_scan apenas no recon_web_full, depois que o cdncheck removeu endereços de CDN e de provedor compartilhado do conjunto de alvos. Seu papel é abrangência — achar toda porta aberta rápido — com o nmap seguindo para profundidade no que ele encontra.
Usando em um pentest
--rate é um controle de segurança. O padrão é rápido o bastante para saturar um link e derrubar alvos pequenos. Comece em 1000 pps, tenha o número acordado com o cliente por escrito, e registre na seção de metodologia.
Sempre use --excludefile. É o mecanismo que mantém você dentro do engajamento ao escanear blocos CIDR. Construa-o a partir do seu documento de escopo antes do primeiro scan, não depois da primeira reclamação.
Ele reporta portas abertas, não serviços. Não escreva “porta 8443 aberta” num relatório. Re-escaneie os hits com nmap -sV e reporte o serviço e a versão.