masscan: port scanning a escala de internet, usado con seguridad
masscan · AGPL-3.0
masscan envía sus propios paquetes en lugar de usar la pila del SO, y por eso puede barrer un gran espacio de direcciones en minutos. Responde una pregunta — qué puertos están abiertos — y la responde rápido. No hace bien la detección de servicios; combínalo con nmap para eso.
Instalación
sudo apt install masscan # Debian / Ubuntu / Kali
brew install masscan # macOS Compilar desde el fuente te da una versión más nueva:
git clone https://github.com/robertdavidgraham/masscan && cd masscan && make -j
sudo make install Comandos principales
# un rango, puertos comunes, deliberadamente lento
sudo masscan 10.0.0.0/24 -p80,443,8080,8443 --rate 1000
# rango TCP completo
sudo masscan 10.0.0.0/24 -p0-65535 --rate 5000 -oJ masscan.json
# alimenta los resultados en nmap para detección de versión
sudo masscan 10.0.0.0/24 -p0-65535 --rate 1000 -oL -
| awk '/open/{print $4":"$3}' > open.txt
# excluye rangos que no estás autorizado a tocar
sudo masscan 10.0.0.0/8 -p443 --rate 2000 --excludefile out-of-scope.txt Salida
{"ip":"10.0.0.14","timestamp":"1756468800","ports":[{"port":8443,"proto":"tcp","status":"open"}]} Dónde encaja en Tandera
masscan se ejecuta en active_scan solo en recon_web_full, después de que cdncheck haya quitado direcciones de CDN y de proveedor compartido del conjunto de objetivos. Su papel es amplitud — encontrar todo puerto abierto rápido — con nmap siguiendo para profundidad en lo que encuentra.
Uso en un pentest
--rate es un control de seguridad. El valor por defecto es lo bastante rápido como para saturar un enlace y tumbar objetivos pequeños. Empieza en 1000 pps, ten el número acordado con el cliente por escrito, y regístralo en la sección de metodología.
Usa siempre --excludefile. Es el mecanismo que te mantiene dentro del engagement al escanear bloques CIDR. Constrúyelo a partir de tu documento de alcance antes del primer escaneo, no después de la primera queja.
Reporta puertos abiertos, no servicios. No escribas “puerto 8443 abierto” en un informe. Re-escanea los hits con nmap -sV y reporta el servicio y la versión.