En este writeup vamos a resolver la máquina Eternal dificultad Low de VulNyx.

Estructura del contenido
TL;DR – RESUMEN DE LA MÁQUINA ETERNAL (VULNYX)
Te resumo a continuación la resolución de la máquina pero si quieres ver el detalle, te invito a leer el resto del write-up:
| Tras confirmar la vulnerabilidad MS17-010 mediante el módulo auxiliar smb_ms17_010, utilizamos el exploit ms17_010_eternalblue de Metasploit contra el servicio SMB expuesto en el puerto 445. La explotación permitió ejecutar código remoto sobre el sistema Windows 7 Enterprise SP1 sin necesidad de credenciales previas. Como resultado, obtuvimos una sesión Meterpreter con privilegios NT AUTHORITY\SYSTEM. Desde esta sesión accedimos al sistema de archivos del equipo comprometido y navegamos hasta el directorio Desktop del usuario MIKE, donde se encontraban las flags user.txt y root.txt. |
Resumen de conceptos trabajados
- Escaneo de puertos con Nmap
- Enumeración del servicio SMB e identificación de SMBv1 activo
- Detección de vulnerabilidad MS17-010
- Explotación con Metasploit (EternalBlue)
- Obtención de sesión Meterpreter y acceso como NT AUTHORITY\SYSTEM
Si es tu primera máquina de VulNyx y no sabes cómo conectarte a la máquina del laboratorio, te recomiendo que visites este post donde te cuento paso a paso cómo empezar en esta plataforma.
Cómo Verificar que estamos conectados a la máquina víctima
Lo primero que tendrás que hacer cuando vayas a trabajar sobre alguna de las máquinas de VulNyx, es descargarla en tu equipo. Una vez descargada y descomprimida, irás a tu VMWare o VirtualBox y la importarás para virtualizarla.
Después de importarla, configura la conexión de red a Adaptador Puente, para que nuestra máquina atacante tenga acceso y la encuentre.
Comenzando con el reconocimiento de la máquina víctima
Iniciamos sesión siendo root y creamos previamente una nueva carpeta dentro de nuestro Kali para esta máquina y poder crear allí todo lo que analicemos.
Para asegurarnos de que la máquina víctima está conectada en la red (192.168.1.163)
arp-scan -I eth0 --localnet

y de esta forma vemos todas las IPs conectadas para empezar a analizarla (podemos comprobar que se encuentra la IP de la máquina VulNyx cuando la ejecutamos anteriormente). Vemos que la IP «is up» está activa y su ttl es de 128, es decir, SO Windows.

Fase de Enumeración / Escaneo de Puertos
Comenzamos el análisis con la fase de enumeración y escaneo de puertos mediante el comando:
nmap -p- --open -sS --min-rate 5000 -vvv -n -Pn 192.168.1.163 -oG Escaneo_TCP

El escaneo de puertos nos devuelve 10 puertos abiertos. Vamos a ver qué servicios corren:
nmap -sCV -p135,139,445,5357,49155,49153,49154,49157,49152,49156 192.168.1.163

Lo más relevante del análisis de servicios y versiones es:
- SO → Windows 7 Enterprise SP1
- Puerto 445 SMB abierto SMB signing enabled but NOT required (para compartir archivos con Windows)
- Hostname → MIKE-PC (¿usuario mike?)
- RPC dinámicos abiertos (49152–49157)
- HTTPAPI en 5357
Si buscamos por esa versión del SO para el puerto 445 en Google por vulnerabilidades conocidas, vemos que nos detecta un RCE reportado y asociado al exploit EternalBlue (MS17-010) cuya CVE es la 2017-0144.

Vamos a confirmar si efectivamente es vulnerable a EternalBlue ejecutando:
nmap -p445 --script smb-vuln-ms17-010 192.168.1.163
o con:
nmap --script vuln -p445 192.168.1.163
nmap --script "auth,vuln" -p445 192.168.1.163

Y efectivamente nos dice que es VULNERABLE con criticidad alta a RCE y nos muestra el CVE-2017-0143 que ya detectamos antes en nuestra investigación con Google.
Enumeración del servicio SMB
A continuación realizamos una enumeración de recursos SMB con smbclient para comprobar si existen recursos compartidos accesibles sin autenticación. El servidor permite login anónimo (guest), lo que indica una posible mala configuración de seguridad y confirma que el servicio SMB es accesible desde red.

Y en nuestro caso recibimos la respuesta de «Anonymous login successful» nos lo confirma.
Ahora usamos enum4linux para automatizar la enumeración del servicio SMB. La herramienta permite identificar usuarios potenciales confirmando que el servicio expone información sensible útil para fases posteriores de explotación.

Detección de vulnerabilidad MS17-010
A continuación se comprueban los protocolos SMB soportados mediante el script smb-protocols de Nmap. El servidor mantiene habilitado SMBv1, un protocolo obsoleto y vulnerable a múltiples ataques conocidos como MS17-010 (EternalBlue).

Ya tenemos las evidencias que apuntan a que la máquina víctima es vulnerable al Eternal Blue.
Explotación con Metasploit Eternal Blue
Ahora pasamos a hacer la explotación con Metasploit. Si buscamos por el CVE nos aparece este listado de exploits que podemos usar, por lo que vamos a usar el 0 (comando «use 0»).

Y ahora con show options pedimos a Metasploit que nos diga qué valores tenemos que configurar antes de ejecutarlo.

En este caso serían el RHOSTS (IP víctima – 192.168.1.163) ya que el LHOST (IP atacante – 192.168.1.211) nos lo detecta automático.

Obtención de sesión con Meterpreter y acceso como NT AUTHORITY\SYSTEM
Y si ahora volvemos a ejecutar «show options» veremos todas las opciones configuradas que se marcan como obligatorias, por lo que ya solo nos quedaría ejecutarla con «run»:

Ya tenemos acceso a la sesión del meterpreter por lo que vamos a asegurarnos y ver el usuario y privilegios que somos con el comando «getuid«:

y nos muestra que somos el usuario en Windows con mayores privilegios (el equivalente a root en Linux) por lo que vamos a ejecutar una «shell» para poder navegar por la máquina víctima Windows.


Y si vamos navegando dentro del Windows de MIKE hasta el escritorio, podemos ver las flags de usuario y de root (usaríamos el comando «type root.txt»).
