viernes, 4 de julio de 2014

Explotando MailPoet (<= 2.6.6) con g0jira

¡Saludos!

   Alguna vez he hablado por aquí (o por el blog de estación informática de @n0ipr0cs) de g0jira, esa pequeña herramienta para auditar / atacar la plataforma WordPress. Todavía está en fase de corregir bugs y añadir muchas cosas (apenas tiene 61 exploits), pero aun así me está encantando usarla. Podeis descargaroslo desde el GitHub del blog => https://github.com/0verl0ad/g0jira

   Imagino que si os moveis en el mundo de la seguridad  web, o al menos os toca lidiar con la seguridad de algún WordPress, os habreis enterado de la noticia de que MailPoet (versiones de la 2.6.6 e inferiores) con 1.7 millones de descargas  sufre de una vulnerabilidad crítica que permite a un atacante subir una webshell al servidor (aqui noticia del reporte de Sucuri => http://blog.sucuri.net/2014/07/remote-file-upload-vulnerability-on-mailpoet-wysija-newsletters.html). He creado un exploit para la vulnerabilidad y lo he añadido a g0jira. Ahora os toca a vosotros jugar :)

   Como siempre, lo primero que haremos será una enumeración de los plugins instalados en nuestro laboratorio:

perl gojira.pl --enum=dic_populares.txt --url=http://localhost/wordpress --max=2000

Limitamos la búsqueda a los 2.000 plugins más populares


Vemos como aparece el plugin (MailPoet) con una versión vulnerable. Lo siguiente será comprobar si tenemos algún exploit en g0jira:

perl gojira.pl --exploit

 Elegimos la opción 3 y buscamos "mailpoet". Observamos como tenemos un exploit para el plugin.


  Al ser vulnerable a arbitrary file upload lo que vamos a hacer es usar shell2me para crear un webshell pequeña que reciba los comandos desde las cookies. De esta forma pasará más desapercibido en los logs. Asi que procedemos a abrir otra pestaña y ejecutar:

perl gojira.pl --tools

 Elegimos la opción 3 y escribimos "shell2me" para ejecutar la herramienta. Una vez dentro de shell2me, crearemos el PHP llamado shell.php.

Sin cerrar esta pestaña volvemos a la anterior y elegimos la opción 2 para poder ejecutar el exploit. Como vimos anteriormente el código de este exploit es el "OTHER-0061". Rellenamos los datos que nos pida el exploit y se lanzará automáticamente:


  Podemos ver que el exploit ha tenido éxito y que la shell se ha subido. Copiamos la URL de donde está nuestra webshell y volvemos a la pestaña donde estaba shell2me para poder conectarnos a ella y mandar comandos:


Y ya está. WordPress pwned!

Como bola extra podemos usar g0jira para realizar un escaneo de un listado de dominios para ver si alguno es vulnerable, para ello:

perl gojira.pl --check=/wysija-newsletters/ --url=lista_dominios.txt

   El archivo .txt contiene el listado de dominios a comprobar. Nos devolverá aquellos dominios que tenga ese plugin y su versión.

Byt3z!

5 0verl0ad Labs: Explotando MailPoet (<= 2.6.6) con g0jira ¡Saludos!    Alguna vez he hablado por aquí (o por el blog de estación informática de @n0ipr0cs) de g0jira, esa pequeña herramienta pa...

No hay comentarios:

< >