Original article: What is Nmap and How to Use it – A Tutorial for the Greatest Scanning Tool of All Time

Nmap es la herramienta de escaneo más famosa utilizada por los pentesters. En este artículo, veremos algunas características principales de Nmap junto con algunos comandos útiles.

¿Qué es Nmap?

Nmap es la abreviatura de Network Mapper. Es una herramienta de línea de comandos de Linux de código abierto que se utiliza para escanear direcciones IP y puertos en una red y para detectar aplicaciones instaladas.

Nmap permite a los administradores de red encontrar qué dispositivos se están ejecutando en su red, descubrir puertos y servicios abiertos y detectar vulnerabilidades.

Gordon Lyon (seudónimo Fyodor) escribió Nmap como una herramienta para ayudar a mapear una red completa fácilmente y encontrar sus puertos y servicios abiertos.

Nmap se ha vuelto muy popular y aparece en películas como The Matrix y la popular serie Mr. Robot.

¿Por qué usar Nmap?

Hay una serie de razones por las que los profesionales de la seguridad prefieren Nmap a otras herramientas de análisis.

Primero, Nmap te ayuda a mapear rápidamente una red sin comandos ni configuraciones sofisticados. También admite comandos simples (por ejemplo, para verificar si un host está activo) y secuencias de comandos complejas a través del motor de secuencias de comandos Nmap.

Otras características de Nmap incluyen:

  • Capacidad para reconocer rápidamente todos los dispositivos, incluidos servidores, enrutadores, conmutadores, dispositivos móviles, etc. en redes únicas o múltiples.
  • Ayuda a identificar los servicios que se ejecutan en un sistema, incluidos los servidores web, los servidores DNS y otras aplicaciones comunes. Nmap también puede detectar versiones de aplicaciones con una precisión razonable para ayudar a detectar vulnerabilidades existentes.
  • Nmap puede encontrar información sobre el sistema operativo que se ejecuta en los dispositivos. Puede proporcionar información detallada, como las versiones del sistema operativo, lo que facilita la planificación de enfoques adicionales durante las pruebas de penetración.
  • Durante la auditoría de seguridad y el escaneo de vulnerabilidades, puedes usar Nmap para atacar sistemas usando scripts existentes del motor de scripting de Nmap.
  • Nmap tiene una interfaz gráfica de usuario llamada Zenmap. Te ayuda a desarrollar mapeos visuales de una red para una mejor usabilidad y generación de informes.

Comandos

Veamos algunos comandos de Nmap. Si no tienes Nmap instalado, puedes obtenerlo desde aquí.

Escaneos básicos

Escanear la lista de dispositivos activos en una red es el primer paso en el mapeo de la red. Hay dos tipos de escaneos que puedes usar para eso:

  • Escaneo de ping: Escanea la lista de dispositivos en funcionamiento en una subred determinada.
> nmap -sp 192.168.1.1/24
  • Escanear un solo host: Escanea un solo host en busca de 1000 puertos conocidos. Estos puertos son los que utilizan servicios populares como SQL, SNTP, apache y otros.
> nmap scanme.nmap.org
1-3

Escaneo sigiloso

El escaneo sigiloso se realiza enviando un paquete SYN y analizando la respuesta. Si se recibe SYN/ACK, significa que el puerto está abierto y puedes abrir una conexión TCP.

Sin embargo, un escaneo sigiloso nunca completo el protocolo de enlace de 3 vías , lo que dificulta que el objetivo determine el sistema de escaneo.

> nmap -sS scanme.nmap.org

Puedes usar el comando '-sS' para realizar un escaneo sigiloso. Recuerda, el escaneo sigiloso es más lento y no tan agresivo como los otros tipos de escaneo, por lo que es posible que debas esperar un tiempo para obtener una respuesta.

Escaneo de versiones

Encontrar versiones de aplicaciones es una parte crucial en las pruebas de penetración.

Te facilita la vida, ya que puedes encontrar una vulnerabilidad existente en la base de datos de Vulnerabilidades y Exploits Comunes (CVE) para una versión particular del servicio. Luego puedes usarlo para atacar una máquina usando una herramienta de explotación como Metasploit .

> nmap -sV scanme.nmap.org

Para hacer un escaneo de versión, usa el comando '-sV'. Nmap proporcionará una lista de servicios con sus versiones. Ten en cuenta que los escaneos de versiones no siempre son 100% precisos, pero te acercan un paso más para ingresar con éxito a un sistema.

1-5

Escaneo del sistema operativo

Además de los servicios y sus versiones, Nmap puede proporcionar información sobre el sistema operativo subyacente mediante huellas dactilares de TCP/IP. Nmap también intentará encontrar el tiempo de actividad del sistema durante una exploración del sistema operativo.

> nmap -sV scanme.nmap.org

Puedes usar las banderas adicionales como osscan-limit para limitar la búsqueda a algunos objetivos esperados. Nmap mostrará el porcentaje de confianza para cada conjetura del sistema operativo.

Una vez más, la detección del sistema operativo no siempre es precisa, pero contribuye en gran medida a ayudar a un pen tester a acercarse a su objetivo.

1-6

Escaneo agresivo

Nmap tiene un modo agresivo que permite la detección del sistema operativo, la detección de versiones, el escaneo de scripts y el rastreo de rutas. Puedes utilizar el argumento -A para realizar un análisis agresivo.

> nmap -A scanme.nmap.org

Los escaneos agresivos brindan mucha mejor información que los escaneos regulares. Sin embargo, un análisis agresivo también envía más sondeos y es más probable que se detecte durante las auditorías de seguridad.

1-7

Escaneo de varios hosts

Nmap tiene la capacidad de escanear múltiples hosts simultáneamente. Esta característica es muy útil cuando administras una gran infraestructura de red.

Puedes escanear múltiples hosts a través de numerosos enfoques:

  • Escribe todas las direcciones IP en una sola fila para escanear todos los hosts al mismo tiempo.
> nmap 192.164.1.1 192.164.0.2 192.164.0.2
  • Utiliza el asterisco (*) para escanear todas las subredes a la vez.
> nmap 192.164.1.*
  • Agrega comas para separar las terminaciones de las direcciones en lugar de escribir los dominios completos.
> nmap 192.164.0.1,2,3,4
  • Usa un guion para especificar un rango de direcciones IP
> nmap 192.164.0.0–255

Escaneo de puertos

El escaneo de puertos es una de las características más fundamentales de Nmap. Puedes buscar puertos de varias maneras.

  • Usando el parámetro -p para buscar un solo puerto
> nmap -p 973 192.164.0.1
  • Si especificas el tipo de puerto, puedes buscar información sobre un tipo particular de conexión, por ejemplo, para una conexión TCP.
> nmap -p T:7777, 973 192.164.0.1
  • Se puede escanear un rango de puertos separándolos con un guion.
> nmap -p 76–973 192.164.0.1
  • También puede usar el indicador -top-ports para especificar los n puertos principales para escanear.
> nmap --top-ports 10 scanme.nmap.org

Escaneo desde un archivo

Si deseas escanear una gran lista de direcciones IP, puedes hacerlo importando un archivo con la lista de direcciones IP.

> nmap -iL /input_ips.txt

El comando anterior producirá los resultados del escaneo de todos los dominios dados en el archivo "input_ips.txt". Además de simplemente escanear las direcciones IP, también puedes usar opciones y banderas adicionales.

Verbosidad y exportación de resultados de escaneo

Las pruebas de penetración pueden durar días o incluso semanas. Exportar los resultados de Nmap puede ser útil para evitar trabajo redundante y ayudar a crear informes finales. Veamos algunas formas de exportar los resultados del escaneo de Nmap.

Salida detallada

> nmap -v scanme.nmap.org

La salida detallada proporciona información adicional sobre el análisis que se está realizando. Es útil monitorear paso a paso las acciones que Nmap realiza en una red, especialmente si eres un extraño que escanea la red de un cliente.

1-8

Salida normal

Los escaneos de Nmap también se pueden exportar a un archivo de texto. Será ligeramente diferente de la salida de la línea de comandos original, pero capturará todos los resultados de escaneo esenciales.

> nmap -oN output.txt scanme.nmap.org
1-9

Salida XML

Los escaneos de Nmap también se pueden exportar a XML. También es el formato de archivo preferido de la mayoría de las herramientas de prueba de penetración, lo que lo hace fácilmente analizable al importar resultados de escaneo.

> nmap -oX output.xml scanme.nmap.org
1-10

Múltiples Formatos

También puedes exportar los resultados del escaneo en todos los formatos disponibles a la vez usando el comando -oA.

> nmap -oA output scanme.nmap.org

El comando anterior exportará el resultado del escaneo en tres archivos: salida.xml, salida. Nmap y salida.gnmap.

Ayuda Nmap

Nmap tiene un comando de ayuda incorporado que enumera todas las banderas y opciones que puedes usar. A menudo es útil dada la cantidad de argumentos de línea de comandos con los que viene Nmap.

> nmap -h
1-12

Motor de secuencias de comandos Nmap

Nmap Scripting Engine (NSE) es una herramienta increíblemente poderosa que puedes usar para escribir scripts y automatizar numerosas funciones de red.

Puedes encontrar muchos scripts distribuidos en Nmap o escribir tu propio script según tus requisitos. Incluso puedes modificar scripts existentes usando el lenguaje de programación Lua .

1-13

NSE también tiene secuencias de comandos de ataque que se utilizan para atacar la red y varios protocolos de red.

Repasar el motor de secuencias de comandos en profundidad estaría fuera del alcance de este artículo, por lo que aquí hay más información sobre el motor de secuencias de comandos Nmap.

Zenmap

Zenmap es una interfaz gráfica de usuario para Nmap. Es un software gratuito y de código abierto que te ayuda a comenzar a utilizar Nmap.

1-15

Además de proporcionar mapeos de red visuales, Zenmap también te permite guardar y buscar tus escaneos para uso futuro.

Zenmap es excelente para los principiantes que desean probar las capacidades de Nmap sin pasar por una interfaz de línea de comandos.

Conclusión

Nmap es claramente la "navaja suiza" de las redes, gracias a su inventario de comandos versátiles.

Te permite escanear y descubrir rápidamente información esencial sobre tu red, hosts, puertos, firewalls y sistemas operativos.

Nmap tiene numerosas configuraciones, indicadores y preferencias que ayudan a los administradores de sistemas a analizar una red en detalle.

Si deseas aprender Nmap en profundidad, este es un gran recurso.

¿Te encantó este artículo? Únete a mi Newsletter y recibe un resumen de mis artículos y videos todos los lunes.