Introducción
Bienvenido a este laboratorio sobre escaneo básico de vulnerabilidades con Nmap. Nmap (Network Mapper) es una potente herramienta de código abierto utilizada por administradores de redes y profesionales de seguridad para el descubrimiento de redes y la auditoría de seguridad. Puede identificar qué hosts están disponibles en una red, qué servicios ofrecen esos hosts, qué sistemas operativos están ejecutando y mucho más.
En este laboratorio, obtendrá experiencia práctica con Nmap. Comenzará instalándolo en un sistema Ubuntu, luego lo usará para escanear su propia máquina (localhost) para encontrar puertos abiertos y, finalmente, aprenderá a interpretar los resultados del escaneo para identificar los servicios en ejecución y sus versiones, que es el primer paso para evaluar posibles vulnerabilidades.
Instalar Nmap en Ubuntu 22.04
En este paso, instalará la herramienta Nmap en su sistema Ubuntu 22.04. Antes de poder utilizar cualquier software, primero debe asegurarse de que esté instalado. Utilizaremos el gestor de paquetes apt, que es el estándar para distribuciones de Linux basadas en Debian como Ubuntu.
Primero, es una buena práctica actualizar la lista de paquetes de su sistema. Esto asegura que está obteniendo las últimas versiones disponibles de software. Abra una terminal y ejecute el siguiente comando:
sudo apt update
Verá una salida mientras apt obtiene la información más reciente de los paquetes de los repositorios.
A continuación, instale Nmap usando el comando apt install. La bandera -y responde automáticamente "sí" a cualquier solicitud, haciendo que la instalación sea no interactiva.
sudo apt install -y nmap
Una vez que la instalación esté completa, puede verificar que Nmap se instaló correctamente comprobando su versión.
nmap --version
Debería ver una salida similar a la siguiente, confirmando la instalación y mostrando la versión instalada.
Nmap version 7.80 ( https://nmap.org )
Platform: x86_64-pc-linux-gnu
Compiled with: liblua-5.3.3 openssl-1.1.1f libz-1.2.11 libpcre-8.39 nmap-libpcap-1.9.1 nmap-libdnet-1.12 ipv6
Compiled without:
Available nsock engines: epoll poll select
Ahora que Nmap está instalado, está listo para realizar su primer escaneo.
Realizar un Escaneo de Puertos en Localhost para Identificar Servicios Abiertos
En este paso, realizará un escaneo de puertos básico en su máquina local para identificar cualquier puerto abierto y los servicios asociados a ellos. Escanear localhost (que tiene la dirección IP 127.0.0.1) es una forma segura de practicar el uso de Nmap, ya que solo está escaneando su propio sistema.
Un escaneo de puertos busca "puertas" abiertas en una computadora que los servicios utilizan para comunicarse a través de la red. Por defecto, Nmap escanea los 1000 puertos TCP más comunes.
Para realizar un escaneo básico en su máquina local, ejecute el siguiente comando en su terminal:
nmap localhost
Nmap ahora escaneará su máquina e informará sus hallazgos. La salida se verá algo así. Tenga en cuenta que el entorno de laboratorio ha sido preconfigurado para tener un servicio ejecutándose en el puerto 8000.
Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:00 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000087s latency).
Not shown: 998 closed ports
PORT STATE SERVICE
22/tcp open ssh
3001/tcp open nessus
8000/tcp open http-alt SimpleHTTPServer 0.6 (Python 3.10.12)
Nmap done: 1 IP address (1 host up) scanned in 0.08 seconds
Analicemos esta salida:
PORT: El número de puerto y protocolo (por ejemplo,8000/tcp).STATE: El estado del puerto.opensignifica que un servicio está aceptando activamente conexiones en este puerto.SERVICE: El nombre común del servicio que se encuentra típicamente en ese puerto (por ejemplo,sshpara el puerto 22).
A partir de este escaneo, ha identificado que los puertos 22 y 8000 están abiertos en su máquina.
Interpretar Resultados de Escaneo Nmap para Vulnerabilidades Potenciales
En este paso, aprenderá a interpretar los resultados del escaneo de Nmap para recopilar información más detallada, lo cual es crucial para identificar posibles vulnerabilidades. Saber que un puerto está abierto es útil, pero conocer el software y la versión exactos que se ejecutan en ese puerto es mucho más potente.
Un puerto abierto en sí mismo no es una vulnerabilidad. El riesgo proviene del servicio que se ejecuta en ese puerto. Si el servicio está desactualizado o mal configurado, podría ser explotado.
Para obtener más información sobre los servicios, puede utilizar la función de detección de versiones de Nmap con la bandera -sV. Esto sondeará los puertos abiertos para determinar la información del servicio y la versión.
Ejecute el siguiente comando para realizar un escaneo de versiones en localhost:
nmap -sV localhost
La salida ahora será más detallada. Preste mucha atención a la columna VERSION.
Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:05 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00012s latency).
Not shown: 998 closed ports
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 8.9p1 Ubuntu 3ubuntu0.10 (Ubuntu Linux; protocol 2.0)
3001/tcp open ssl/nessus?
8000/tcp open http SimpleHTTPServer 0.6 (Python 3.10.12)
Nmap done: 1 IP address (1 host up) scanned in 6.54 seconds
Como puede ver, Nmap ha identificado la versión específica de los servicios que se ejecutan. Por ejemplo, en el puerto 8000, no es solo un servicio web genérico (http-alt), sino específicamente SimpleHTTPServer 0.6 (Python 3.10.12).
Con esta información de versión, un analista de seguridad (o un atacante) podría buscar en bases de datos de vulnerabilidades en línea (como CVE) exploits conocidos que afecten a "SimpleHTTPServer 0.6 (Python 3.10.12)". Este es el proceso fundamental de un escaneo de vulnerabilidades básico.
Resumen
¡Felicitaciones por completar este laboratorio! Ha dado sus primeros pasos en el mundo del escaneo de redes con Nmap.
En este laboratorio, aprendió a:
- Instalar la herramienta Nmap en un sistema Ubuntu usando
apt. - Realizar un escaneo de puertos básico en
localhostpara descubrir puertos abiertos. - Utilizar el escaneo de detección de versiones (
-sV) para identificar el software y la versión específicos que se ejecutan en esos puertos. - Comprender el principio básico de interpretación de los resultados del escaneo para identificar posibles áreas de debilidad.
Estas son habilidades fundamentales para cualquier persona en ciberseguridad, administración de sistemas o ingeniería de redes. Le animamos a seguir explorando las muchas otras características de Nmap, como su potente motor de scripts (NSE) para escaneos más avanzados.



