Hacking Ético: Pruebas de Penetración (Pentest) de Redes WIFI utilizando la Suite Aircrack-NG

Kali Linux es un Sistema Operativo que podemos utilizar para muchas propósitos, pero es más bien conocido por su habilidad para realizar Test de Penetración (pentest). En este Tutorial veremos paso a paso como realizar un test de penetración utilizando diccionarios al protocolo WPA/WPA2 utilizando la suite aircrack-ng.

Una Prueba de Penetración (pentest), es un ataque a un sistema informático con la intención de encontrar las debilidades de seguridad lo que nos ayudará a determinar si un sistema es vulnerable a ciertos ataques. Son importantes para:

  • Determinar el porcentaje de éxito de los ataques.
  • Identificar vulnerabilidades .
  • Chequear y comprobar las defensas del sistema que está siendo atacado.

Antes de empezar

Existen bastantes aplicaciones para Windows que permiten Hackear redes WPA (Wi-Fi Protected Access), pero no suele ser recomendable utilizarlas, ya que principalmente son utilizadas para realizar exploraciones de redes y con muchas de ellas hay que tener un especial cuidado (son utilizadas para robar contraseñas e introducir malware). La forma en la que un Hacker intentará acceder a tu red es utilizando:
  • Sistema Operativo basado en Linux.
  • Una tarjeta de red inalámbrica para iniciar la monitorización.
  • Utilizando una Suite o Software similar a Aircrack-NG.

Aún disponiendo de estas herramientas, el crackeo de redes wifi no es tan simple como parece, ya que requiere conocimientos de como trabajan la autenticación WPA, además de estar familiarizado con el Sistema Operativo Kali Linux y sus herramientas. Por lo que para empezar ten en cuenta los siguientes puntos:

  • Comienza instalando Kali Linux.
  • Dispón de un adaptador de red WIFI que permita el modo de monitorización (no todas las tarjetas permiten esta función).
  • Dispón de diccionarios de diferentes tipos con los que poder comenzar a crackear contraseñas.
  • Tiempo y paciencia.
Recuerda que hackear WIFI sin permiso del propietario de la red es considerado un delito en la mayor parte de países. Este tan sólo es un tutorial para saber cómo funciona un Test de Penetración de una red WIFI.

Instalación de Kali Linux

Para empezar vamos a proceder con la descarga de Kali Linux, para virtualizarla más adelante utilizando VMWare o VirtualBox.
  • Descargamos la máquina virtual de Kali Linux para VMWare o VirtualBox.
  • Descomprimimos la máquina virtual y la buscamos desde VMWare o VirtualBox para copiarla en nuestro disco.
  • Arrancamos Kali Linux como administrador y utilizaremos las credenciales kali/kali para acceder.

A continuación procedemos a cambiar el idioma actual inglés por español (para ello utilizamos el comando setxkbmap). También podemos buscar desde la interfaz gráfica «keyboard» y en layout y seleccionar el idioma que necesitemos.

Otra opción es reconfigurar de cero nuestro teclado ya que por defecto la máquina virtual está configurada en inglés:

La Suite Aircrack-NG

La suite Aircrack-NG nos permite evaluar la seguridad de una red Wifi. Todas sus herramientas son para línea de comandos y aunque se utiliza mayormente en Linux, también soporta otros Sistemas Operativos.

  • Permite capturar paquetes y exportar los resultados obtenidos para su posterior uso.
  • Permite realizar ataques de reproducción (replay attacks), desautenticación e inyección de paquetes.
  • Monitoriza tarjetas WiFi y las capacidades de los controladores (captura e inyección).
  • Por supuesto es capaz de crackear claves WEP y WPA PSK.

1.- Comprobaciones Iniciales

En este paso vamos a comprobar el correcto funcionamiento de nuestra tarjeta de red inalámbrica y haremos uso de la herramienta airmon-ng. Esta herramienta la utilizamos para activar el modo monitor de tarjetas Wireless. También la podemos utilizar para parar las interfaces y salir del modo monitor.

  • Activa la conexión inalámbrica para comprobar que funciona correctamente.
  • Desconecta todas las tarjetas de red inalámbricas.
  • Abre un terminal y ejecuta airmon-ng

Comprobamos las interfaces de las redes wifi disponibles que soportan la monitorización. En nuestro caso el interfaz de red inalámbrica es wlan0:

2 .- Monitorización de la Tarjeta de Red

Para comenzar establecemos nuestra tarjeta de red en modo monitorización, lo que permite a nuestra tarjeta escuchar o capturar paquetes de una red wifi. Por lo que para poner nuestra tarjeta en modo monitorización utilizamos la herramienta airmon-ng que hemos visto con anterioridad.

Podemos comprobar que el monitor ha sido habilitado para el interfaz de red wlan0. Si algún proceso impide dicha monitorización airmon-ng mostrará una advertencia indicando la causa y es probable que tengas que matar el proceso que impide la monitorización.

Si deseamos parar la monitorización utilizamos el parámetro stop

3.- Localizar la Red objetivo + clientes

El siguiente paso es utilizar la herramienta Airodump-ng que se encarga de capturar paquetes Wireless 802.11 y comenzará a recopilar vectores de inicialización IVs. Estos vectores serán utilizados más adelante por la herramienta Aircrack-ng con el objetivo de obtener la clave WPA haciendo uso de diccionarios.

Podemos comprobar que se nos irá mostrando un listado de todas las redes Wifi disponibles, además de otra información de interés (como será el canal, cifrado, etc …).
  • Los canales del 1 al 14 son utilizados para bandas 802.11b (USA 1-11 y EURO 1-13, 1-14 JPN)
  • El canal 8202.11a es utilizado por la banda de 5GHz.

Hagamos un breve resumen de la información mostrada por cada columna y así podremos conocer cada término que se está utilizando sobre los distintos puntos de acceso:

  • BSSID Dirección Mac del punto de acceso.
  • PWR, la fuerza de la señal.
  • Beacons, balizas electrónicas del dispositivo (a más balizas mejor será la señal).
  • Data, cantidad de paquetes de datos recibidos.
  • CH, canal operativo del punto de acceso.
  • MB, velocidad del punto de acceso.
  • EN, tipo de encriptación.
  • ESSID, nombre de la red.
En cuanto a la información que podemos obtener sobre clientes:
  • BSSID, dirección Mac que corresponde al punto de acceso que utiliza el cliente.
  • STATION, dirección Mac del cliente.
  • PWR, Potencia o fuerza de la señal.
  • Packets, cantidad de paquetes de datos recibidos.
  • Probes, nombre de red del cliente.
Con esta información deberías localizar la red sobre la cual quieres realizar el Test de Penetración (penetrating test). Ctrl +C para salir.

4.- Captura de Paquetes IVS (Sniffing)

Debido a que estamos saltando de canal en canal, no estamos capturando todos los paquetes del punto de acceso que tenemos fijado como objetivo. Así que lo que queremos es capturar un canal específico y guardar todos los datos capturados para posteriormente descifrarlos. Pongamos por ejemplo el siguiente punto de acceso:
Copiamos el BSSID del punto de acceso que queremos monitorizar y tecleamos:

  • Con la opción -c indicamos el canal que queremos capturar (en este caso capturamos el canal 6)
  • Con la opción -w indicamos que guarde la información capturada en la ruta indicada. En la ruta especificada se crearán 5 ficheros donde se va a guardar toda la información capturada.
Bien, ya estamos capturando información en la Red Wifi objetivo y por lo tanto necesitamos esperar a que un dispositivo se conecte o reconecte a la red inalámbrica. Esto significa que el enrutador enviará un enlace de reconexión cuyo objetivo es descifrar la contraseña.

Necesitamos lo que se llama un «handsnake» que es la negociación entre el punto de acceso (AP) y el cliente cuando se emiten beacons frames.

Por lo que Paciencia!

5.- Desautenticación de clientes (modo impaciente)

Si no tienes paciencia y no quieres esperar a que un dispositivo se conecte, podemos utilizar otra herramienta que pertenece a la suite de Aircrack llamada aireplay-ng, que no hace más que acelerar este proceso y no tener que esperar a que un dispositivo se conecte.
  • Utilizando esta herramienta podemos forzar a un dispositivo a reconectar enviándole paquetes no autenticados (deauth) y haciéndole pensar que tiene que reconectar con la red.
  • Por supuesto para que esta herramienta trabaje correctamente tiene que haber alguien conectado a la red, por lo que comprueba airodump-ng hasta que aparezca un cliente.

Esto podría llevar bastante tiempo o unos segundos. Sino obtenemos resultados después de un tiempo de espera, entonces la red podría no tener clientes o incluso podrías estar demasiado alejado de ella.

Deja abierto airodump-ng, abre otro terminal y ejecuta el siguiente comando:

  • La opción –deauth indica el número de paquetes de desautenticación que vamos a utilizar (en este caso 1).
  • La opción -a indica el BSSID que corresponde al punto de acceso del Router (el objetivo de la red que estamos atacando).
  • La opción -c es el BSSID del cliente, el dispositivo que intentamos desautenticar (corresponden a la columna STATION que nos muestra el comando airodump).
  • wlan0 es la interfaz de red inalámbrica que se está monitorizando.
Recuerda que si necesitas cambiar el canal podemos ejecutar el siguiente comando:

6.- Cracking

Cuando ya disponemos de suficientes paquetes IVS, procedemos a crackearlos utilizando la herramienta aircrack-ng. El propósito de este paso es conseguir la clave WPA/WPA2 y para ello  necesitamos utilizar diccionarios. Básicamente lo que haceaircrack-ng es comprobar si coinciden con la clave.
  • El fichero donde se guardan estos paquetes tiene extensión .cap
  • Para esta prueba podemos utilizar el diccionario que provee el John de Ripper. Recuerda que que puedes utilizar John the Ripper (JTR) para construir tus propios diccionarios y posteriormente utilizarlos con aircrack-ng. Abre otra consola y escribe:

Podrás indicar que utilice cualquier fichero con extensión .cap, que contenga el directorio utilizando el comodín *:

  • La opción -w permite indicar el diccionario que queremos utilizar.
  • La opción -b corresponde a la dirección Mac del punto de acceso.
  • Por último indicamos la ruta del fichero/s con extensión .cap que contienen todos los paquetes que hemos ido capturando.
  • Podemos utilizar el comodín * si queremos que se utilicen varios ficheros.
Si obtenemos el mensaje que se muestra a continuación es que no disponemos de ningún handsnake capturado.

Por lo que podemos volver sobre nuestros pasos y desautenticar el cliente (paso 5) o seguir esperando a que se conecte algún cliente a la red objetivo.
Recuerda que los ataques basados en diccionario tan sólo tienen éxito si la clave se encuentra en el diccionario que utilicemos.

Documentación y Enlaces de Interés

Comandos de interés

Si tu tarjeta wifi puede escanear pero no conecta a las wifis edita:

Verificación y configuración de la interfaz de red inalámbrica:

Activar el interfaz de Red Inalámbrico:

Reiniciar el servicio wpa_supplicant:

Iniciar el servicio de administración de redes:

 

Deja una respuesta

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.