Ataques Inalámbricos con Kali Linux y Aircrack-ng

Kali LinuxBeginner
Practicar Ahora

Introducción

En este laboratorio, aprenderá los conceptos básicos de las pruebas de penetración inalámbrica utilizando Kali Linux y el conjunto de herramientas Aircrack-ng dentro del entorno de la máquina virtual (VM) de LabEx. La atención se centra en la comprensión de las técnicas clave para evaluar la seguridad de las redes inalámbricas. Practicará la habilitación del modo monitor en una interfaz inalámbrica, la captura de handshakes WPA, el cracking de claves WPA y el guardado de los resultados para la documentación. Diseñado para principiantes, este laboratorio proporciona una guía paso a paso en un entorno controlado para desarrollar habilidades fundamentales en las pruebas de seguridad inalámbrica. Cuando abra la terminal, se conectará automáticamente al shell del contenedor de Kali Linux, listo para comenzar a practicar.

Instalación de Herramientas Esenciales para Pruebas Inalámbricas

En este primer paso, configurará las herramientas necesarias para las pruebas de penetración inalámbrica dentro del contenedor de Kali Linux en el entorno de la máquina virtual (VM) de LabEx. Dado que se conecta automáticamente al shell del contenedor de Kali Linux al abrir la terminal, no es necesario iniciar el contenedor manualmente ni entrar en el shell. Comencemos instalando las herramientas esenciales requeridas para los siguientes pasos.

Como principiante, es importante comprender que Kali Linux es una distribución potente para las pruebas de seguridad, pero no todas las herramientas están preinstaladas en una configuración de contenedor mínima. Instalaremos aircrack-ng, un conjunto de herramientas para la auditoría de redes inalámbricas, que incluye utilidades como airmon-ng para habilitar el modo monitor, airodump-ng para capturar paquetes y aircrack-ng para el cracking de claves.

Ejecute los siguientes comandos en la terminal para actualizar la lista de paquetes e instalar aircrack-ng. Presione Enter después de cada comando para ejecutarlo:

apt update
apt install -y aircrack-ng

Estos comandos actualizarán el repositorio de paquetes e instalarán el conjunto de herramientas aircrack-ng. La instalación puede tardar unos momentos, así que espere hasta que se complete.

Después de la instalación, verifique que aircrack-ng esté instalado comprobando su versión. Escriba el siguiente comando y presione Enter:

aircrack-ng --version

La salida esperada mostrará la versión de aircrack-ng, confirmando que la herramienta está lista para su uso. Podría verse así:

Aircrack-ng 1.7

Este paso asegura que todas las herramientas necesarias estén disponibles en el contenedor de Kali Linux para las pruebas inalámbricas. Al instalar aircrack-ng, ha preparado el entorno para habilitar el modo monitor y capturar el tráfico inalámbrico en los siguientes pasos. Asegúrese de que la instalación se complete con éxito antes de continuar.

Habilitando el Modo Monitor en la Interfaz Inalámbrica

Ahora que ha instalado las herramientas necesarias, pasemos a habilitar el modo monitor en una interfaz de red inalámbrica dentro del contenedor de Kali Linux. El modo monitor es esencial para las pruebas de penetración inalámbrica, ya que permite que su tarjeta inalámbrica capture el tráfico de red sin conectarse a ninguna red.

Para los principiantes, piense en el modo monitor como convertir su tarjeta inalámbrica en un oyente pasivo. Normalmente, en el "modo gestionado" (managed mode), la tarjeta solo captura el tráfico destinado a ella. En el modo monitor, captura todo el tráfico inalámbrico cercano, lo cual es crucial para herramientas como aircrack-ng para analizar datos e identificar vulnerabilidades.

Dado que ya está en el shell del contenedor de Kali Linux (conectado automáticamente al abrir la terminal), comencemos por identificar la interfaz inalámbrica. Escriba el siguiente comando y presione Enter para listar todas las interfaces de red:

iwconfig

La salida esperada mostrará una lista de interfaces de red. Busque una interfaz inalámbrica, típicamente llamada wlan0 o similar. En este entorno de laboratorio, asuma que la interfaz es wlan0. La salida podría verse así:

wlan0     IEEE 802.11  ESSID:off/any
          Mode:Managed  Access Point: Not-Associated   Tx-Power=20 dBm
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:off

A continuación, habilite el modo monitor en la interfaz wlan0 utilizando la herramienta airmon-ng, que es parte del conjunto de herramientas aircrack-ng que instaló anteriormente. Ejecute el siguiente comando y presione Enter:

airmon-ng start wlan0

La salida esperada indicará que el modo monitor está habilitado, y el nombre de la interfaz podría cambiar a wlan0mon. Podría verse así:

Interface wlan0 is now in monitor mode as wlan0mon.

Si hay alguna advertencia sobre procesos que interfieren, la herramienta podría sugerir eliminarlos. En este entorno de laboratorio, asuma que no existen tales conflictos para simplificar.

Finalmente, verifique que el modo monitor esté activo ejecutando el siguiente comando y presionando Enter:

iwconfig

La salida esperada debería mostrar la interfaz (por ejemplo, wlan0mon) en modo monitor, así:

wlan0mon  IEEE 802.11  Mode:Monitor  Tx-Power=20 dBm
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:off

Esto confirma que el modo monitor se ha habilitado correctamente. Ahora ha preparado la interfaz inalámbrica para capturar tráfico, lo cual es un paso crítico antes de pasar a capturar handshakes WPA en el siguiente paso. Asegúrese de que el modo esté configurado en Monitor antes de continuar.

Captura de Handshakes WPA con Airodump-ng

Con el modo monitor habilitado en su interfaz inalámbrica, el siguiente paso es capturar un handshake WPA utilizando la herramienta airodump-ng dentro del contenedor de Kali Linux. Un handshake WPA es un conjunto de paquetes intercambiados cuando un dispositivo se conecta a una red Wi-Fi, y capturarlo nos permite intentar descifrar la contraseña en pasos posteriores.

Para los principiantes, comprenda que un handshake WPA no contiene la contraseña directamente, sino que incluye datos encriptados que pueden ser analizados sin conexión para adivinar la contraseña. Este proceso es ético solo en un entorno de laboratorio controlado o con permiso explícito en redes reales. En este laboratorio, simularemos la captura de un handshake en un entorno seguro.

Dado que ya está en el shell del contenedor de Kali Linux (conectado automáticamente al abrir la terminal), comencemos a capturar el tráfico inalámbrico. Ejecute el siguiente comando y presione Enter para comenzar a monitorear todas las redes cercanas en la interfaz wlan0mon:

airodump-ng wlan0mon

La salida esperada mostrará una tabla en vivo de las redes Wi-Fi cercanas, mostrando detalles como BSSID (dirección MAC del punto de acceso), ESSID (nombre de la red), CH (canal) y tipo de encriptación. Podría verse así:

CH  6 ][ Elapsed: 1 min ][ 2023-10-01 12:00

BSSID              PWR  Beacons    #Data, #/s  CH   MB   ENC  CIPHER  AUTH  ESSID
00:14:22:AB:CD:EF  -30       10        5    0   6   54   WPA2 CCMP   PSK   TestNetwork

Deje que esto se ejecute durante unos segundos para observar las redes, luego deténgalo presionando Ctrl+C. Para este laboratorio, asuma que ha identificado una red objetivo con el ESSID TestNetwork, BSSID 00:14:22:AB:CD:EF, y operando en el canal 6.

Ahora, concéntrese en capturar el tráfico para esta red específica para obtener el handshake WPA. Ejecute el siguiente comando y presione Enter para apuntar a la red y guardar los datos capturados en un archivo llamado handshake en el directorio /root:

airodump-ng --bssid 00:14:22:AB:CD:EF --channel 6 -w /root/handshake wlan0mon

En este comando, --bssid especifica la dirección MAC de la red objetivo, --channel establece el canal en el que escuchar, y -w /root/handshake guarda los datos en un archivo. La salida esperada mostrará el tráfico específico de la red objetivo. Si se captura un handshake, podría ver [ WPA handshake: 00:14:22:AB:CD:EF ] en la parte superior derecha de la salida. Para este laboratorio, asuma que se captura un handshake después de unos segundos. Detenga la captura presionando Ctrl+C.

Verifique que el archivo de captura se haya guardado enumerando el contenido del directorio /root. Ejecute el siguiente comando y presione Enter:

ls -l /root

La salida esperada debería incluir un archivo llamado handshake-01.cap (o similar), así:

-rw-r--r-- 1 root root 12345 Oct  1 12:05 handshake-01.cap

Esto confirma que los datos capturados se han guardado. Ahora ha capturado con éxito un handshake WPA, que se utilizará en el siguiente paso para intentar descifrar la clave WPA. Asegúrese de que el archivo exista antes de continuar.

Descifrando Claves WPA con Aircrack-ng

Habiendo capturado un handshake WPA en el paso anterior, ahora está listo para intentar descifrar la clave WPA utilizando la herramienta aircrack-ng dentro del contenedor de Kali Linux. Este proceso implica probar contraseñas potenciales de una lista de palabras (wordlist) contra los datos del handshake capturado para encontrar la clave correcta.

Para los principiantes, descifrar una clave WPA significa usar una lista de posibles contraseñas (llamada wordlist) para adivinar la correcta comparándola con los datos encriptados en el handshake. Este es un proceso offline, lo que significa que no interactúa con la red objetivo durante el intento. En este laboratorio, usaremos una pequeña wordlist de muestra con fines de demostración.

Dado que ya está en el shell del contenedor de Kali Linux (conectado automáticamente al abrir la terminal), creemos un archivo de wordlist simple en el directorio /root. Ejecute el siguiente comando y presione Enter para abrir el editor nano y crear un archivo llamado wordlist.txt:

nano /root/wordlist.txt

En el editor nano, escriba las siguientes contraseñas de muestra, una por línea:

password123
testwifi
admin123

Guarde el archivo presionando Ctrl+O, luego Enter para escribir el archivo, y finalmente Ctrl+X para salir de nano. No habrá salida para esta acción, pero el archivo ahora está creado.

Verifique que el archivo de wordlist exista enumerando el contenido del directorio /root. Ejecute el siguiente comando y presione Enter:

ls -l /root

La salida esperada debería incluir wordlist.txt, así:

-rw-r--r-- 1 root root  30 Oct  1 12:10 wordlist.txt

Ahora, use aircrack-ng para intentar descifrar la clave WPA con el handshake capturado y la wordlist. Ejecute el siguiente comando y presione Enter, usando el BSSID del paso anterior y las rutas a los archivos:

aircrack-ng -w /root/wordlist.txt -b 00:14:22:AB:CD:EF /root/handshake-01.cap

En este comando, -w especifica el archivo de wordlist, -b especifica el BSSID de la red objetivo, y el último argumento es la ruta al archivo de handshake. La salida esperada mostrará la herramienta probando contraseñas de la wordlist. Si tiene éxito, mostrará la clave encontrada, así:

KEY FOUND! [ testwifi ]

Si no se encuentra ninguna clave, indicará que todas las contraseñas se probaron sin éxito. Para este laboratorio, asuma que se encuentra la contraseña testwifi. El proceso puede tardar unos segundos en completarse.

Ahora ha intentado descifrar una clave WPA usando aircrack-ng. En el siguiente paso, guardará este resultado para la documentación. Asegúrese de ver la clave en la salida antes de continuar.

Guardando la Clave WPA Descifrada

En este paso final, guardará la clave WPA descifrada del paso anterior en un archivo de texto con fines de documentación dentro del contenedor de Kali Linux. Guardar la clave asegura que tenga un registro de sus hallazgos, lo cual es una buena práctica en las pruebas de penetración para referencia futura o informes.

Para los principiantes, documentar los resultados como una clave descifrada es importante para realizar un seguimiento de su trabajo. Este paso implica crear un archivo de texto simple para almacenar la clave y la información de la red relacionada. Es un proceso sencillo que utiliza operaciones básicas de archivos en la terminal.

Dado que ya está en el shell del contenedor de Kali Linux (conectado automáticamente al abrir la terminal), creemos un archivo llamado cracked_keys.txt en el directorio /root para almacenar la clave. Ejecute el siguiente comando y presione Enter para abrir el editor nano:

nano /root/cracked_keys.txt

En el editor nano, escriba los siguientes detalles sobre la clave descifrada, reemplazando testwifi con la contraseña real encontrada en el paso anterior si es diferente:

Network: TestNetwork
BSSID: 00:14:22:AB:CD:EF
Password: testwifi
Date: 2023-10-01

Guarde el archivo presionando Ctrl+O, luego Enter para escribir el archivo, y finalmente Ctrl+X para salir de nano. No habrá salida para esta acción, pero el archivo ahora está creado.

Verifique que el archivo se haya guardado enumerando el contenido del directorio /root. Ejecute el siguiente comando y presione Enter:

ls -l /root

La salida esperada debería incluir cracked_keys.txt, así:

-rw-r--r-- 1 root root  85 Oct  1 12:15 cracked_keys.txt

Para asegurarse de que el contenido es correcto, muestre el contenido del archivo ejecutando el siguiente comando y presionando Enter:

cat /root/cracked_keys.txt

La salida esperada mostrará el texto que ingresó, así:

Network: TestNetwork
BSSID: 00:14:22:AB:CD:EF
Password: testwifi
Date: 2023-10-01

Esto confirma que la clave descifrada se guarda correctamente. Ahora ha completado el proceso de documentación de sus hallazgos, lo que concluye el flujo de trabajo de pruebas de penetración inalámbrica en este laboratorio. Asegúrese de que el contenido del archivo sea correcto antes de finalizar.

Resumen

En este laboratorio, ha aprendido los pasos fundamentales de las pruebas de penetración inalámbrica utilizando Kali Linux y el conjunto de herramientas Aircrack-ng en el entorno de la máquina virtual (VM) de LabEx. Comenzó instalando herramientas esenciales como aircrack-ng, luego habilitó el modo monitor en una interfaz inalámbrica para capturar el tráfico de red. Después de eso, capturó un handshake WPA, intentó descifrar la clave WPA utilizando una wordlist y, finalmente, guardó la clave descifrada para la documentación. Estos pasos proporcionan una base sólida para comprender las pruebas de seguridad inalámbrica y la importancia de asegurar las redes contra tales vulnerabilidades en un entorno controlado.