El análisis de vulnerabilidades es un proceso fundamental en la ciberseguridad que permite identificar, evaluar y remediar debilidades en los sistemas informáticos y redes. Estas debilidades, conocidas como vulnerabilidades, pueden ser explotadas por actores maliciosos para obtener acceso no autorizado o causar daños. La explotación de vulnerabilidades es uno de los vectores de ciberataques más comunes, lo que subraya la importancia de implementar programas de gestión de vulnerabilidades proactivos.
Este artículo explora el proceso de detección, análisis y explotación de vulnerabilidades en una IP pública, utilizando diversas herramientas y técnicas. Se detallará un escenario de laboratorio práctico donde se identificaron y explotaron vulnerabilidades, además de comparar el rendimiento de diferentes escáneres.
¿Qué es una IP Pública y por qué es Importante su Análisis?
La dirección IP pública es la que identifica a una red hacia el exterior. Es la dirección que los servidores y otros dispositivos en Internet ven cuando un usuario se conecta. Es asignada por el Proveedor de Servicios de Internet (ISP) y puede ser dinámica (cambiar con el tiempo) o estática (permanente). Este número es fundamental para interactuar con el mundo digital, permitiendo que los datos lleguen al dispositivo de forma precisa.
Por ejemplo, cuando se visita una página web, la dirección IP pública es lo que el servidor utiliza para enviar la información de vuelta al dispositivo. Sin esta dirección, la comunicación no sería posible.
Importancia de Conocer la IP Pública
Conocer la IP pública puede ser útil en varias situaciones, tales como:
- Solución de problemas de conexión: Esencial para diagnosticar problemas de acceso a servicios en línea.
- Configuraciones de red: Necesaria en configuraciones avanzadas como servidores, cámaras de seguridad o juegos en línea.
- Seguridad: Permite monitorear accesos no autorizados o detectar posibles intentos de ataques.
- Servicios personalizados: Algunos servicios en línea adaptan sus funciones o precios según la IP, ya que esta revela la ubicación geográfica aproximada.
Funcionamiento de la Dirección IP en Internet
Cuando se introduce un nombre de dominio en el navegador (ej. example.com), el sistema lo traduce a una dirección IP específica mediante el Sistema de Nombres de Dominio (DNS). Una vez identificada la IP, el dispositivo solicita la información al servidor y carga la página web.
Diferencia entre IP Pública e IP Privada
Es crucial no confundir la IP pública con la IP privada. La IP pública identifica la red hacia el exterior, mientras que las IP privadas son asignadas dentro de la red local para identificar dispositivos como ordenadores, móviles o impresoras. Por ejemplo:
- IP Pública: 192.45.76.32 (visible para Internet)
- IP Privada: 192.168.1.10 (solo visible dentro de la red local)
Seguridad al Compartir la IP Pública
Aunque no es peligroso que alguien sepa la dirección IP pública, ya que es visible para cualquier servicio en línea, es importante tomar precauciones. Tener una IP pública es esencial para realizar auditorías de seguridad en ambientes productivos, ya que permite simular ataques reales que un atacante externo podría llevar a cabo, proporcionando una evaluación realista de la exposición del sistema a riesgos externos.
Configuración del Escenario de Laboratorio
Para este análisis, se configuró un entorno de laboratorio compuesto por dos máquinas virtuales:
- Una máquina virtual con Metasploitable (versión 3), diseñada específicamente para pruebas de intrusión y pentesting, con varias aplicaciones vulnerables.
- Una máquina virtual con Kali Linux, equipada con herramientas de escaneo de red y puertos (Nmap) y escáneres de vulnerabilidades (Nessus y Greenbone CE, antes conocido como OpenVAS).
Ambas máquinas virtuales se configuraron en modo "Host-only adapter" para permitir la comunicación entre sí. Se identificaron las siguientes direcciones IP:
- Kali Linux: 192.168.56.4
- Metasploitable 3: 192.168.56.3

Identificación de Servicios y Vulnerabilidades con Nmap
Nmap es una herramienta de código abierto muy reconocida en el mundo de la seguridad informática por su funcionalidad de escaneo de redes, puertos y servicios. Permite escanear una red en busca de vulnerabilidades mediante la ejecución de scripts.
Análisis Inicial de Servicios
Se utilizó Nmap para identificar los servicios disponibles en Metasploitable. En un primer escaneo, se detectó que el servicio de ping estaba deshabilitado, lo que llevó a una consulta más detallada.
Escaneo Detallado con Nmap
La consulta detallada nmap -Pn -A -sV 192.168.56.3 reveló que el sistema operativo de la máquina víctima es Windows y proporcionó información adicional sobre los servicios expuestos:
- OpenSSH: Muestra la llave pública RSA-2048 y ECDSA-521. Utiliza el protocolo 2.0.
- HTTP: Identifica métodos potencialmente peligrosos como TRACE, lo que podría permitir ataques de tipo Cross-Site Tracing (XST). No tiene http-title.
- HTTPS: Certificado SSL no válido desde 2023-05-13. El http-title es "Login". Se reportó un problema con el análisis XML de la ruta '/evox/about'.
- Elasticsearch (puerto 9200): Es muy probable que sea Elasticsearch, ya que este servicio utiliza frecuentemente el puerto 9200 para su API REST. El servidor responde con 400 Bad Request cuando se intenta acceder a rutas como '/nice ports, Trinity.txt.bak'.
Nmap también tiene la capacidad de generar informes detallados en formato XML.

Uso de Scripts de Nmap para Detección de Vulnerabilidades
Nmap permite la ejecución de scripts para ampliar sus capacidades de detección:
- Script 'auth': Comprueba la existencia de usuarios con contraseñas vacías o por defecto. Se detectó el ingreso de usuarios anónimos (sin requerir usuario y contraseña).
- Scripts predeterminados: Un escaneo con la configuración por defecto muestra información de la llave SSH en el puerto 22.
- Script 'safe': Utilizado para ejecutar secuencias de comandos menos intrusivas, con menor probabilidad de interrumpir aplicaciones.
- Script 'vuln': Permite identificar algunas de las vulnerabilidades más conocidas en el sistema.
- Script 'all': Ejecuta todos los scripts disponibles, pero no es recomendado debido al "ruido" que genera en los archivos de logs.
Análisis de Rendimiento de Escáneres de Vulnerabilidades: Nessus y Greenbone CE
Para medir el desempeño de las herramientas Nessus y Greenbone CE (GCE), se utilizaron Performance Monitor e iperf3. Se creó un recopilador de datos personalizado en Metasploitable, llamado "UsoRecursosEscaneo", para monitorear el consumo de recursos.

Configuración y Ejecución de Escaneos
- Nessus: Se configuró un escaneo avanzado de vulnerabilidades.
- Greenbone CE: Se configuró un escaneo avanzado ("full and fast").
Resultados de Rendimiento y Vulnerabilidades
El monitoreo de recursos y el escaneo de vulnerabilidades con ambas herramientas arrojaron las siguientes observaciones:
Uso de Recursos del Sistema
GCE parece tener una mayor utilización de los recursos del sistema (procesador, memoria y disco), con más fallos de página, lecturas/escrituras de páginas y transferencias de disco, lo cual sugiere que maneja una carga de trabajo más intensa o menos eficiente. Por otro lado, Nessus presenta más interrupciones y cambios de contexto, lo que sugiere que maneja más eventos de hardware o procesos simultáneos, pero con menor uso general de memoria y disco.
Resumen de diferencias en métricas de desempeño:
- Memoria disponible: GCE tiene una mayor media, lo que podría indicar una mayor disponibilidad de recursos de memoria.
- Uso del procesador: GCE muestra un uso del procesador más alto en promedio, lo que podría sugerir que está manejando una carga de trabajo más alta.
- Cambios de contexto: Nessus tiene una tasa mayor, lo que puede indicar una mayor carga de trabajo multitarea.
- Cola de procesos: GCE tiene una cola de procesos más larga, lo que puede indicar que el procesador estuvo más ocupado.
- Fallos de página: GCE es relativamente más alto en algunos puntos, mientras que Nessus mostró menos picos.
- Actividad de lectura/escritura de páginas: GCE muestra más actividad en comparación con Nessus.
- Bytes paginados: GCE muestra mayor uso, indicando más datos en memoria virtual. Nessus, menor uso.
- Transferencias de disco por segundo: GCE muestra mayor cantidad, indicando más actividad en el subsistema de almacenamiento. Nessus, menos.
- Interrupciones por segundo: GCE menor cantidad, Nessus mayor cantidad.
Tiempo de Ejecución
GCE tomó más del doble de tiempo de ejecución que Nessus.
¡Cómo obtener un escaneo de vulnerabilidades rápido y gratis!
Impacto en la Red con iperf3
- Greenbone CE (GCE): La transferencia de datos oscila entre 10 y 665 MBytes, con fluctuaciones significativas y una caída abrupta. La tasa de bits varía considerablemente, con un máximo de 665 Mbits/seg y caídas hasta los 10 Mbits/seg. Esto sugiere inestabilidad en la conexión.
- Nessus: La transferencia de datos es más estable, con un rango de 450 a 704 MBytes. La tasa de bits es mucho más constante, con valores en su mayoría por encima de los 450 Mbits/seg y un máximo de 742 Mbits/seg. Esto indica un mejor rendimiento general y una red más confiable.
Vulnerabilidades Detectadas
Si bien el desempeño es importante, los resultados en cuanto a las vulnerabilidades detectadas son clave. GCE obtiene datos más detallados e incluso encuentra credenciales para servicios abiertos, a diferencia de Nessus.
Según el análisis de las herramientas, el servicio Apache Tomcat es probablemente el que tiene la posibilidad de ser explotado, dado que ambas sugieren vulnerabilidades. Se detectó en el puerto 8282/tcp, aunque Nmap no detectó nada expuesto en ese puerto, sino en el 8383/tcp HTTP Apache.
Análisis Comparativo de Informes
- Nessus: Genera informes claros y organizados, clasificando las vulnerabilidades (críticas, altas, medias, bajas) con descripciones, soluciones recomendadas y referencias. Es intuitivo para profesionales de seguridad con diferentes niveles de experiencia. Sin embargo, puede presentar menos detalles técnicos.
- Greenbone CE: Ofrece informes más detallados y técnicos, incluyendo credenciales descubiertas y configuraciones específicas de los servicios. Aunque esta riqueza de detalles puede hacer que los informes sean más complejos de interpretar sin familiaridad con el análisis técnico de vulnerabilidades.
La elección entre Nessus y Greenbone CE debe basarse en las necesidades específicas de la organización, el nivel de detalle requerido en los informes y la capacidad del sistema para soportar el impacto del escaneo de vulnerabilidades.
Explotación de Vulnerabilidades Detectadas con Metasploit
El servicio Apache Tomcat 8.0.33 expuesto en el puerto 8282/tcp fue identificado como un objetivo potencial. Se utilizó Metasploit para la explotación.

Escaneo de Directorios y Acceso a Servicios
- Se realizó un escaneo de directorios utilizando Metasploit, encontrando 4 directorios disponibles.
- Se exploró el directorio Axis2, ya que GCE encontró credenciales para este servicio. Utilizando las credenciales reportadas por GCE (admin/axis2), fue posible acceder al módulo web de administración.
- GCE también reportó credenciales para los servicios de FTP y SSH. Se accedió al servidor utilizando SSH con las credenciales vagrant:vagrant.
Explotación del Directorio "Manager"
El directorio "Manager" solicitaba credenciales. Al intentar acceder con credenciales erróneas, se generó un error 401 que reveló información relevante: las credenciales para la aplicación web se encontraban en el archivo conf/tomcat-users.xml. Utilizando la consola SSH establecida, se leyó el archivo con el comando findstr "^" "C:\Program Files\Apache Software Foundation\tomcat\apache-tomcat-8.0.33\conf\tomcat-users.xml". En este archivo, se identificaron las credenciales username="sploit" password="sploit" roles="manager-gui".

Adicionalmente, se realizó una enumeración de usuarios en el directorio "Manager" del servicio Apache Tomcat.
Tareas de Post-Explotación con Meterpreter
Una vez que se han realizado varias tareas de explotación, se procede con las tareas de post-explotación utilizando Meterpreter.
Establecimiento de Consolas con Meterpreter
- Se estableció una consola utilizando el exploit multi/http/tomcat_mgr_upload, obteniendo una consola con el usuario METASPLOITABLE3.
- Utilizando el mismo exploit, se cambió el payload a Windows/meterpreter/reverse_tcp, lo que permitió establecer una consola con el usuario NT AUTHORITY\SYSTEM, otorgando permisos más elevados en la máquina.
- Es posible también utilizar un exploit para Axis2 para establecer una consola con Meterpreter.
- En la pantalla de administración de Apache Tomcat, se observó un servicio /struts2-rest/showcase, el cual también puede aprovecharse para establecer una consola con Meterpreter.

¡Cómo obtener un escaneo de vulnerabilidades rápido y gratis!
Se registraron múltiples maneras de establecer una consola utilizando Meterpreter y diferentes servicios/vulnerabilidades que permitirían continuar con tareas de post-explotación.
Consideraciones sobre la Detección de Vulnerabilidades en Hoteles y Hostales
La inspección de la gestión tecnológica en hoteles y hostales es un concepto poco habitual. A pesar de que la operativa interna (reservas, Wi-Fi, sistemas de gestión) funcione con normalidad, la creciente dependencia de servicios digitales ha ampliado significativamente la superficie de exposición digital de estas organizaciones. La infraestructura tecnológica de muchos alojamientos turísticos rara vez se diseña como un sistema integral desde el inicio, evolucionando con múltiples proveedores y accesos remotos habilitados.
Una inspección externa del perímetro digital permite identificar direcciones IP públicas asociadas al establecimiento, detectar servicios accesibles y verificar si existen vulnerabilidades conocidas vinculadas a esos sistemas de forma no intrusiva. La mayoría de los alojamientos turísticos no revisa su exposición externa porque la operación diaria funciona con normalidad. Un análisis de vulnerabilidades externas permite realizar esta inspección sin requerir acceso a la red interna.
Gestión Integral de Vulnerabilidades y Herramientas Complementarias
El análisis de vulnerabilidades es un proceso sistemático de identificación, evaluación y solución de problemas de seguridad en sistemas y redes. Implica escanear en busca de vulnerabilidades, priorizarlas según su gravedad e impacto (como los CVE - Common Vulnerabilities and Exposures) y solucionarlas con parches o controles de seguridad.
Tipos de Análisis de Vulnerabilidades
- Análisis externos: Escanean la red desde fuera, enfocándose en defectos en activos orientados a Internet y probando controles perimetrales.
- Análisis internos: Examinan las vulnerabilidades desde el interior de la red.
- Análisis autenticados (acreditados): Requieren privilegios de acceso de un usuario autorizado.
- Análisis no autenticados (sin credenciales): No tienen permisos ni privilegios de acceso, viendo los activos desde la perspectiva de un usuario externo.
Diferencia entre Análisis de Vulnerabilidades y Pruebas de Penetración
Los análisis de vulnerabilidades son escaneos automatizados y de alto nivel que encuentran fallas y las reportan. Las pruebas de penetración (pen tests) son un proceso manual en el que los evaluadores utilizan habilidades éticas de hacking para explotar vulnerabilidades en ataques simulados. Aunque los análisis de vulnerabilidades son más económicos y fáciles de ejecutar para el monitoreo continuo, si se usan en conjunto con las pruebas de penetración, pueden hacer que la gestión de vulnerabilidades sea más eficaz.
Herramientas como PRTG para Monitoreo Continuo
Herramientas como Paessler PRTG actúan como escáneres de vulnerabilidades de red, explorando dispositivos y aplicaciones en busca de brechas de seguridad. Ofrecen características como escaneo exhaustivo, precisión, personalización, interfaz amigable, capacidades de integración y monitoreo en tiempo real con alertas personalizadas. Esto facilita la detección de actividades sospechosas, el seguimiento del estado de parches, el monitoreo del acceso de usuarios, la detección de dispositivos no autorizados y el cumplimiento normativo (GDPR, HIPAA, PCI DSS).