Análisis de redes, servicios y sistemas operativos con Nmap

Nmap es la herramienta de red más completa para administradores de sistemas, al monitorizar redes y equipos y detectar vulnerabilidades antes de que sean aprovechadas por atacantes para entrar sin autorización a nuestro equipo o red. Las funciones integradas en Nmap permiten analizar cualquier red y equipo, sin importar si

Artículos recientes

Nmap es la herramienta de red más completa para administradores de sistemas, al monitorizar redes y equipos y detectar vulnerabilidades antes de que sean aprovechadas por atacantes para entrar sin autorización a nuestro equipo o red.

Las funciones integradas en Nmap permiten analizar cualquier red y equipo, sin importar si los objetivos del escaneo están en una red local o en un servidor remoto de Internet. Mediante los ejemplos que veremos a continuación aprenderemos a utilizar los comandos esenciales de Nmap escaneando servicios, puertos, redes y sistemas operativos.

En todos los ejemplos aquí descritos podemos indicar tanto la dirección IP como el nombre del servidor a realizar los análisis.

PUERTOS, SERVICIOS Y DEMONIOS

La ejecución sin parámetros de Nmap

$ nmap IP

realiza un análisis en busca de los puertos abiertos de la dirección IP escaneada. Los resultados obtenidos en este análisis se muestran en un listado con los puertos y protocolos abiertos y el tipo de servicio a la escucha. Por ejemplo, si se encuentra el puerto 21 abierto, se muestra la línea

21/tcp  open  ftp

El estado del puerto, open, puede variar a los valores: filtered, filtrado, y closed, cerrado. Aunque la mayoría de servicios y demonios escuchan en puertos concretos —por ejemplo, 80 para un servidor web—, la información del tipo de servicio obtenido con este análisis no es del todo fiable, ya que un servidor puede ser configurado para que escuche por cualquier puerto.
Para obtener un mayor grado de detalle de los servicios y demonios que están escuchando en cada puerto ejecutamos

$ nmap -sV IP

Este comando muestra, junto al listado de puertos abiertos, el servicio concreto que está escuchando en cada puerto y su número de versión.

Si queremos limitar los análisis de Nmap a uno o varios puertos concretos, podemos especificarlos con el parámetro -p.

Por ejemplo, para escanear los puertos 21, 80 y 110 de FTP, web y POP3, ejecutamos

$ nmap -p 21,80,110 IP

También podemos indicar rangos de puertos para no tener que escribir cada uno individualmente. Por ejemplo, para los puertos 1000 a 2000 ejecutamos

$ nmap -p 1000-2000 IP

SISTEMAS OPERATIVOS Y SERVIDORES

Conocer qué sistemas operativos están en ejecución en un servidor concreto se logra mediante la técnica fingerprinting. Con esta técnica, mediante una conexión TCP se recupera un conjunto de datos que permiten reconocer casi inequívocamente un sistema operativo, incluyendo su número de versión.

Para realizar este análisis ejecutamos el comando

# nmap -O -v IP

Se mostrarán en pantalla los puertos abiertos e información extra con el sistema operativo en ejecución del equipo escaneado. Tras el análisis de un equipo con Windows XP obtendremos en pantalla la información

Running: Microsoft Windows XP
OS details: Microsoft Windows 2000 SP4, or Windows XP SP2 or SP3

Si no es posible detectar el sistema operativo con el comando anterior, mediante la ejecución de

# nmap --osscan-guess IP

forzamos a Nmap a que muestre en pantalla el sistema operativo que más se asemeje al del equipo analizado.
Para realizar este tipo de escaneos con el objetivo de conocer el sistema operativo en ejecución de un equipo, es necesario ejecutar Nmap con permisos de superadministrador.

EQUIPOS Y DISPOSITIVOS EN UNA RED LOCAL

Si desconocemos las interfaces de red disponibles en una red local o queremos monitorizar qué equipos están encendidos y conectados en ella, ejecutamos el comando:

$ nmap -sP 192.168.0.0/24

Aquí indicamos el rango de direcciones en el que se encuentran los equipos y su máscara de red. Se mostrarán en pantalla las direcciones IP de las interfaces de red encontradas.