Top

Cargando cosas bonitas...

Recargar...

Hacking Wi-Fi: Redes WPA


Los hackers suelen abrir 5000 ventanas. Por eso no usan Windows.

Hola a todos!

En esta ocasión os enseñaré parte de un método para hackear redes Wi-Fi de tipo WPA o WPA2, las más comunes actualmente. Para poder entender plenamente lo que vamos a hacer os aconsejo que hayáis leído mis anteriores artículos. Para poder llevar a cabo este hacking necesitaremos aircrack-ng y un diccionario de contraseñas o alternativamente un Rainbow Table.

Éste ataque consta de tres pasos:

  • Sniffing selectivo.
  • Handshake al objetivo.
  • Desencriptación de paquetes con librería.

Lo que vamos a hacer para este hacking es fácil de entender: Eso sí, necesitamos primero que haya un cliente conectado a la red para poder llevarla a cabo, desgraciadamente. Además necesitamos estar cerca de la red (dependiendo de si tenemos una buena antena o no esto variará) y nuestra tarjeta de red tiene que ser capaz de inyectar paquetes. Para comprobar si tu tarjeta de red puede hacerlo puedes usar el parámetro -9 en aireplay-ng que viene en aircrack-ng. Si todo va bien, tras poner el modo monitor y ejecutar el comando sudo aireplay-ng -9 <tu_tarjeta> debería aparecerte algo como esto:

Pulsa para mayor resolución

Si tuviéramos varias tarjetas podríamos probarlas simultáneamente con el parámetro -i. Si “Injection is working” podemos seguir con esto.

Uno de los primeros pasos de seguridad que se llevan a cabo cuando la STA se une a la AP es el WPA Handshake el cual se define como el procedimiento en el cual se configuran los parámetros necesarios. Los paquetes de este son los que queremos para poder obtener la contraseña de la AP. Claro que, como sólo se produce al empezar la comunicación entre AP y STA tenemos dos opciones: Esperar a que un nuevo usuario realice un Handshake o forzar nosotros mismos uno. Para ello solo tenemos que mandar un paquete de deautenticación a una STA conectada fingiendo ser el AP para que el dispositivo en cuestión vuelva a iniciar la comunicación con el AP, y para esto usaremos aireplay-ng. En ese momento nosotros estaremos haciendo un sniffing selectivo (podemos especificar qué canal y bssid queremos escuchar para que no vaya saltando y perdamos información) y guardando toda la información en un archivo. Para hacer esto añadiremos el parámetro -w <nombre_del_archivo> en airodump-ng.

Una vez tengamos el Handshake usaremos aircrack-ng para obtener la contraseña, intentando descifrarlo con contraseñas que nosotros tengamos. Es decir, necesitamos tener textos que contengan contraseñas con las que probar. Esto es conocido como diccionario de contraseñas, y dependiendo del modelo del AP que vayamos a hackear aparecen en Internet muchísimos que podemos descargar y utilizar. Si estamos en China mejor usaremos un diccionario con palabras en chino y no en castellano, lógicamente. Si sabemos que la contraseña es un número entre cero y cien mil, por ejemplo, podemos crearla nosotros mismos con un sencillo programa como éste (está en C++):

Ojo!! Hay un pequeño error: el cout del bucle debería ser file <<

Evidentemente podríamos generar cientos de millones de números para abarcar más posibilidades, pero si hacéis eso os recomiendo que en vuestro diccionario pongáis primero las palabras: de lo contrario aircrack-ng podría tardar horas en terminar con los números y empezar con las combinaciones alfanuméricas que hayáis incluido. Un diccionario muy bueno es rockyou.txt que podéis encontrar comprimido aquí .

El primer paso será capturar el tráfico que nos rodea. Para ello cambiamos nuestra MAC antes que nada:

En la entrada anterior ya resumí este proceso. Para hacer el sniffing todo se mantiene igual que en la explicación anterior con dos diferencias: Primera, ésta vez guardaremos lo que encontremos porque lo vamos a necesitar (para ello -w <nombreDelTexto> ) y segunda, filtraremos el sniffing para hacerlo más eficiente. Para ello tenemos que seleccionar un objetivo, especificar en qué canales (-c) queremos hacer el sniffing y empezar a capturar. Si después de eso vemos en la parte superior de las tablas un fixed-channel mejor empezar de nuevo el proceso. Quedaría algo como:

elputoamo@kali:~$ airodump-ng -c 1 -bssid Z8:1Q:PA:17:ME:6Y -w wifiDeLaIglesia mon0

Dejaremos a nuestra tarjeta trabajar tranquila, y abriremos otra ventana del shell. Ahí vamos a realizar próximamente la inyección que forzará el Handshake (Segunda parte del ataque).

Si ya has entendido el ataque de deautentiación por WPA Handshake salta el párrafo siguiente. Si no:

Como ya he explicado, el problema, lógicamente, es que la unión donde el AP y STA hacen el handshake solamente se produce al principio. Por tanto tenemos dos opciones: Esperar a que la STA se desconecte y vuelva a conectar, o forzar el Handshake. Forzar el Handshake es extremadamente sencillo: Tenemos que hacer creer a la STA que se ha desconectado para que pida nuevamente acceso, y para ello solo tenemos que mandar paquetes de deautenticación (se conoce como ataque de deautenticación) donde simularemos ser el punto de acceso avisando de que el AP se ha desasociado de esa red. Normalmente si pierde conexión el AP volverá a intentar conectarse al instante. Cuando lo haga iniciará el proceso de autenticación y nosotros capturaremos el Handshake.

El próximo día enseñaré a realizar esta inyección y a obtener, por fin, la contraseña.

PD: Si os interesan estos temas, venid a conocer la asociación de Hacking Ético de LLU en la Semana de la Informática de la UCM 😉

Un saludo, Zidlj1an \m/


Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *