Nmap
Mapeador de red es un popular escáner de red que permite descubrir puertos y servicios, proporcionando información relevante sobre una red. Además del escaneo básico de puertos, Nmap ofrece una amplia gama de opciones y funcionalidades avanzadas. Puede realizar escaneos TCP, UDP y SCTP, escaneos de detección de sistemas operativos, detección de versiones de servicios, escaneos de scripts y mucho más. También permite personalizar los escaneos y generar informes detallados.
Instalación
Nmap suele venir preinstalado en la mayoría de las distribuciones de Linux. En caso de que no lo tengas, puedes instalarlo fácilmente con el siguiente comando:
apt-get install nmap
Scan Port Oneliner
Si desea probar esta herramienta de forma rápida y sencilla, aquí tiene un ejemplo que puede utilizar como punto de partida:
nmap -sS -Pn -p 1-65535 -T4 -A
Este comando utiliza las siguientes opciones:
-sS: Realiza un escaneo SYN para determinar qué puertos están abiertos en el objetivo.
-Pn: Omite el descubrimiento del host y asume que el objetivo está en línea.
-p 1-65535: Escanea todos los puertos posibles en el objetivo.
-T4: Establece el valor de tiempo de espera en 4, lo que indica una velocidad de exploración moderada.
-A: Realiza un análisis detallado que incluye la detección del sistema operativo, la detección de la versión de software y la detección de secuencias de comandos.

Nmap como escáner de vulnerabilidades
NSE (Nmap Scripting Engine) es un potente motor de scripts que permite automatizar y ampliar las capacidades de Nmap. NSE permite a los usuarios escribir y ejecutar scripts personalizados para realizar tareas específicas durante la exploración de la red.
NSE está diseñado para interactuar con los resultados del escaneo de Nmap y realizar acciones adicionales como obtener información extra sobre los servicios y sistemas descubiertos, realizar pruebas de seguridad, detectar vulnerabilidades conocidas y ejecutar varias acciones de scripting.
Algunas de las principales características de NSE son:
- Guiones predefinidos: Nmap viene con una extensa colección de scripts predefinidos que pueden utilizarse para realizar tareas comunes como detección de servicios, enumeración de sistemas, búsqueda de vulnerabilidades conocidas, etc.
- Desarrollo de scripts personalizados: Los usuarios pueden escribir sus propios scripts utilizando el lenguaje de programación Lua. Esto permite adaptar Nmap a necesidades específicas y ampliar sus capacidades.
- Exploraciones especializadas: NSE puede realizar escaneos especializados que van más allá de la simple detección de puertos abiertos. Por ejemplo, se pueden realizar escaneos HTTP para buscar configuraciones inseguras, o escaneos SSL/TLS para verificar la configuración de cifrado.
- Integración con otros sistemas: Los scripts de NSE también pueden integrarse con otras herramientas y sistemas, como bases de datos de vulnerabilidades o sistemas de gestión de eventos e información de seguridad (SIEM), para facilitar la correlación de datos y mejorar la respuesta ante incidentes.
Nmap - vuln
Los scripts de NSE se clasifican en función de una serie de categorías predefinidas a las que pertenece cada script, como Autenticación, Descubrimiento, Fuerza bruta, Malware, Versión y Vuln, por nombrar algunas. Puede encontrar información más detallada sobre las diferentes categorías de scripts en lo siguiente enlace.
Los scripts categorizados bajo vuln están pensados para buscar vulnerabilidades conocidas e informar si se identifican en el destino objetivo.
nmap -sV --script vuln
Nmap - vulners
Nmap-vulners es uno de los scripts más populares de NSE que utiliza el protocolo Vulners base de datos de vulnerabilidades para buscar y detectar vulnerabilidades potenciales en servicios y sistemas encontrados durante un escaneo de red con Nmap.
La principal diferencia entre nmap-vulny nmap-vulners reside en la base de datos de vulnerabilidades utilizada. Nmap-vuln utiliza su propia base de datos interna que se actualiza periódicamente con nuevas reglas y firmas de vulnerabilidades. Por otro lado, nmap-vulners utiliza la base de datos Vulners, que se actualiza periódicamente y es conocida por su amplia cobertura de vulnerabilidades. Vulners recopila información de diversas fuentes, como bases de datos de vulnerabilidades, boletines de seguridad, informes públicos, etc.
Para instalarlo, basta con clonar el repositorio en el directorio de scripts utilizado por Nmap:
cd /usr/share/nmap/scripts/
clonar git https://github.com/vulnersCom/nmap-vulners.gitEjecutarlo es muy sencillo, basta con pasarle el -.-scripta nuestro comando Nmap para indicar qué script de NSE utilizar:
nmap -sV --script vulners [--script-args mincvss=]
En caso de que desee escanear un puerto específico, simplemente añada la opción -p al final del comando, indicando el número de puerto a escanear:
nmap -sV --script nmap-vulners/ -p80,443
TOP 10 NSE
Nmap dispone de un gran número de scripts, actualmente más de 600. Estos scripts están diseñados para automatizar tareas específicas de sondeo de puertos y análisis de seguridad en sistemas y redes. La mayoría de estos scripts están preinstalados en Nmap y se pueden ejecutar utilizando la opción -script o -sC. Como se menciona en este post, también se pueden descargar scripts adicionales del sitio web oficial de Nmap o de la comunidad Nmap Scripting Engine (NSE).
Para que puedas probarlo, compartimos una lista de los 10 mejores scripts de Nmap, en mi opinión, que pueden ser útiles en diversas situaciones:
http-title: Este script recupera el título de la página web y puede ayudar a identificar qué aplicación o servicio está alojado en el servidor.
- ssl-cert: Este script muestra información sobre el certificado SSL/TLS del servidor y puede ayudar a determinar su validez.
- dns-brute: Este script realiza un ataque de fuerza bruta al servidor DNS para obtener información sobre los registros DNS.
- ftp-anon: Este script intenta acceder al servidor FTP como usuario anónimo para ver si se permite la conexión sin credenciales.
- smb-os-discovery: Este script muestra información sobre el sistema operativo que se ejecuta en el servidor SMB.
- smtp-enum-users: Este script realiza un ataque de enumeración de usuarios en el servidor SMTP para descubrir nombres de usuario válidos.
- snmp-brute: Este script realiza un ataque de fuerza bruta al servidor SNMP para obtener información sobre el dispositivo.
- ssh-auth-methods: Este script muestra los métodos de autenticación permitidos en el servidor SSH.
- vuln: Este script identifica vulnerabilidades conocidas en el servidor.
- whois-dominio: Este script recupera información sobre el propietario de un nombre de dominio.Centralice y gestione sus vulnerabilidades con Faraday.
Si desea centralizar e integrar sus exploraciones de seguridad con Faraday, eche un vistazo a esto documentación que muestra cómo ejecutar fácilmente comandos Nmap e importarlos a nuestra plataforma.
Tenga en cuenta que para integrar Nmap con Faraday, tendrá que seguir estos pasos:
- Instala Nmap: Asegúrese de tener instalado Nmap en su sistema. Puede descargarlo e instalarlo desde el sitio web oficial de Nmap (https://nmap.org/).
- Instalar Faraday: Descargue e instale Faraday en su sistema. Puede obtenerlo en el sitio web oficial de Faraday (http://faradaysec.com/).
- Configura Faraday: Abra Faraday y configure una instancia cliente para conectarse al servidor Faraday. Esto le permitirá gestionar los resultados del análisis de Nmap desde la interfaz de Faraday.
- Configure Nmap para enviar los resultados a Faraday: Abra un terminal y ejecute el siguiente comando para generar un archivo XML con los resultados del escaneo Nmap: nmap -oX escaneo_resultados.xml
Asegúrese de sustituir <scan options> con las opciones de escaneado específicas que desee utilizar, y <target> con la dirección IP o el rango de IP que desea escanear.
- Importa los resultados a Faraday: Una vez que haya generado el archivo XML con los resultados del escaneo de Nmap, puede importarlo a Faraday utilizando faraday-cli o la GUI.
Sus primeras exploraciones integradas con Faraday.
Aquí tienes algunos fragmentos de diferentes flujos de trabajo que puedes generar utilizando faraday-cli:
Escaneado continuo de una línea: Escanee activos desde un espacio de trabajo.
$ faraday-cli host list -ip -w other_ws | nmap -iL - -oX /tmp/nmap.xml && faraday-cli tool report -w other_ws /tmp/nmap.xml
One-Line para nmap todos los hosts en el espacio de trabajo e importar los resultados de nuevo a Faraday:
Para escanear todas las listas de hosts dentro de un espacio de trabajo con nmap e importar los resultados a Faraday.
for ip in $(faraday-cli host list -ip); faraday-cli tool run "nmap -Pn -p443,80 -sV --script=+http-enum -vvv $ip"
!!! info En este caso, deberías tener un espacio de trabajo llamado “other_ws” con nombres de host en él.
Faraday procesará el comando o archivo XML y mostrará los resultados del escaneo Nmap en su interfaz. Podrá ver información sobre los servicios y puertos encontrados, así como cualquier vulnerabilidad detectada.
Esta integración le permite gestionar de forma centralizada los resultados de las exploraciones de Nmap y mantener un registro de las vulnerabilidades encontradas en Faraday. Además, Faraday proporciona funciones adicionales de gestión de vulnerabilidades y generación de informes que pueden facilitar aún más el análisis de seguridad.
Recuerde leer el Faraday documentación para obtener información más detallada sobre cómo integrar Nmap con Insights y Blog y aprovechar al máximo sus capacidades combinadas.

