Nmap, o Network Mapper, es una herramienta de código abierto utilizada para descubrir hosts y servicios en una red. Es especialmente conocida por su capacidad de escaneo, proporcionando una visión profunda de las configuraciones de los sistemas y ayudando en tareas de auditoría de seguridad. Con apenas unos comandos, es posible obtener información valiosa sobre los dispositivos conectados a una red.
Índice de la Noticia
Instalación de Nmap
Para sistemas Linux
La mayoría de las distribuciones de Linux incluyen Nmap en sus repositorios. Puedes instalarlo fácilmente usando el gestor de paquetes correspondiente.
- Debian/Ubuntu:
sudo apt install nmap
- CentOS/RHEL:
sudo yum install nmap
- Arch Linux:
sudo pacman -S nmap
Para Windows
Los usuarios de Windows pueden descargar el instalador de Nmap desde la página oficial de Nmap. Su instalación es sencilla y, por lo general, no requiere configuraciones adicionales.
Para macOS
En macOS, Nmap se puede instalar fácilmente usando Homebrew. Solo necesitas abrir la terminal y escribir:
brew install nmap
El primer paso para usar Nmap es ejecutar un escaneo básico. La sintaxis es sencilla:
nmap [dirección IP o nombre de host]
Por ejemplo, si quisieras escanear la dirección de Google:
nmap www.google.com
Una vez que Nmap complete el escaneo, presentar á un resumen de la información recopilada:
- Host: Indica si el host está activo.
- Dirección IP: Muestra la dirección IP del host escaneado.
- Puertos abiertos: Enumera los puertos que están en estado open (abiertos).
- Servicios: Indica qué servicios están disponibles en los puertos abiertos.
Tipos de escaneo disponibles en Nmap
Escaneo de puertos TCP
El escaneo TCP es el tipo de escaneo más común. Para realizar un escaneo de puertos TCP, puedes usar el siguiente comando:
nmap -sT [dirección IP]
Este método se basa en el establecimiento de una conexión completa TCP, lo que puede ser detectable por sistemas de seguridad.
Escaneo SYN (Stealth scan)
Para escanear de manera más discreta, puedes utilizar el escaneo SYN, que es menos detectable:
nmap -sS [dirección IP]
Este tipo de escaneo envía paquetes SYN y, dependiendo de la respuesta recibida, deduce el estado del puerto. Es menos probable que se registre en un firewall.
Escaneo de puertos UDP
El escaneo UDP puede ser útil ya que muchos servicios utilizan este protocolo:
nmap -sU [dirección IP]
Ten en cuenta que los escaneos UDP pueden tardar más en completarse porque no requieren de conexiones establecidas.
Opciones avanzadas para escaneo
Escaneo de rangos de IP
Si deseas escanear un rango de direcciones IP, utiliza:
nmap [inicio IP]-[fin IP]
Por ejemplo:
nmap 192.168.1.1-10
Esto escaneará desde la dirección 192.168.1.1 hasta la 192.168.1.10.
Escaneo de una red completa
Puedes escanear toda una subred usando la notación CIDR:
nmap 192.168.1.0/24
Nmap permite guardar los resultados en varios formatos como XML, grepable o como un simple archivo de texto. Para hacer esto, utiliza la opción -oN (para texto), -oX (para XML) o -oG (para grepable):
nmap -oN resultados.txt [dirección IP]
Trucos útiles en Nmap
Identificación de sistemas operativos
Nmap tiene la capacidad de identificar el sistema operativo de un host. Para habilitar esta función, usa:
nmap -O [dirección IP]
Esto activa la detección de sistema operativo, proporcionando información adicional sobre el host.
Detección de versiones de servicios
Si deseas saber qué versiones de software están corriendo en los puertos abiertos, añade la opción -sV:
nmap -sV [dirección IP]
Escaneo de scripts NSE
Nmap incluye un motor de scripts (NSE) que permite alinear respuestas más específicas y obtener información adicional. Para ejecutar scripts simples, utiliza:
nmap --script [nombre del script] [dirección IP]
Por ejemplo, para detectar vulnerabilidades:
nmap --script=vuln [dirección IP]
Precauciones al usar Nmap
Legalidad de la exploración
Siempre asegúrate de tener permiso para escanear cualquier red o sistema. Escanear sin autorización es ilegal y puede tener graves consecuencias legales.
Un escaneo a gran escala puede provocar cargas en la red y, en algunos casos, disparar sistemas de alerta de intrusión.
Protección contra detección
Utiliza técnicas como el escaneo disperso (con la opción -D) para minimizar la posibilidad de ser detectado. Esto enviará los paquetes a través de diferentes direcciones IP, dificultando la trazabilidad.
Para profundizar en los aspectos técnicos y explorar más funciones, puedes consultar la documentación oficial de Nmap. Este libro online contiene una guía extensa donde se abarcan todos los comandos e intervalos de opciones disponibles.
Ejercicios prácticos
Escanear un servidor local
Puedes comenzar a practicar escaneando tu propia máquina local. Para ello, primero descubre tu dirección IP y luego ejecuta un escaneo básico:
nmap [tu_dirección_IP]
Comparar resultados con diferentes tipos de escaneo
Ejecuta varios tipos de escaneo en un host o red que controles, usando -sT, -sS y -sU para observar cómo varían los resultados.
Uso de diferentes scripts NSE
Elige un sitio o servicio conocido y experimenta con distintos scripts de Nmap para detectar vulnerabilidades específicas. Por ejemplo:
nmap --script=http-enum [dirección IP]
Esto evaluará los servicios HTTP y proporcionará un análisis de las aplicaciones web en ejecución.
nmap -sn [dirección IP]
(escaneo de ping para ver qué hosts están activos).nmap -p 1-65535 [dirección IP]
(escaneo de todos los puertos).nmap --top-ports 100 [dirección IP]
(escanea los 100 puertos más comunes).