Captura de tráfico de WLAN

Capturar paquetes de Wi-Fi te permite ver los detalles y las interacciones que, de otro modo, se enmascararían antes de alcanzar el software que se ejecuta en un dispositivo, lo que hace que sean una herramienta importante para algunos tipos de errores.

Estos son los pasos principales que debes seguir:

  1. Encuentra el canal adecuado para disfrutar.
  2. Captura el tráfico.
  3. Comparte la captura y un hash de tu contraseña de WLAN.

1. Cómo determinar el canal y el ancho correctos

Las redes WLAN funcionan en:

  • un canal, al que se suele hacer referencia con un número De 1 a 13 corresponde a canales de 2.4 GHz, 36 a 200 para canales de 5 GHz
  • con un ancho específico (ya sea 20 MHz, 40 MHz, 80 MHz o 160 MHz)

Por lo general, cada punto de acceso (por ejemplo, router o nodo en malla) en la red tiene un canal único de 2.4 GHz y uno de 5 GHz, y debes descubrir a cuál está conectado el dispositivo. Tienes las siguientes opciones:

Usa el panel de control del router

Si usas Nest WiFi, omite esta opción, ya que la información no se expone.

La mayoría de los routers tienen una lista de dispositivos conectados y qué canal y ancho usan.

  1. Encuentra la dirección IP de tu router con esta guía.
  2. Ve a la dirección del router en el navegador web, por ejemplo, http://192.168.1.1.
  3. Accede. ¿No sabes tu contraseña? Busca una etiqueta en tu router o usa las contraseñas del router.
  4. Busca una página con el nombre "clientes" o "dispositivos conectados". Por ejemplo, una página del router de Netgear podría tener el siguiente aspecto o de los dispositivos Eero.

    Vista del cliente de Netgear

  5. Es posible que debas consultar en otra parte de la configuración para asignar la información del paso 4 a un canal y un ancho de banda específicos. Por ejemplo, con un router Netgear:

    Vista de los canales de Netgear

Utiliza tu Mac si ya está conectada al mismo canal.

Mantén presionada la Opción del teclado y haz clic en el ícono de WLAN en la esquina superior derecha de la barra de estado de tu Mac. Deberías ver el menú WLAN normal con algunas opciones más e información. Revisa los elementos de menú no disponibles y busca el que menciona el canal:

`Channel 60 (DFS, 5GHz, 40MHz)`

WLAN de Mac

No puedo encontrar el canal y el ancho

Si los otros métodos no funcionan, puedes intentar lo siguiente:

  1. Enumera todos los canales que usan tus PA (por lo general, 2 para cada PA o punto de malla).

    a. Recomendación: Con un teléfono Android, puedes usar una app como Wifiman o Aruba Utilities.

    a. En una Mac, puedes usar /System/Library/PrivateFrameworks/Apple80211.framework/Resources/airport-s para mostrar las opciones.

  2. Realiza una captura corta (incluso 15 segundos es suficiente) en cada uno de esos canales; para ello, sigue las instrucciones que aparecen a continuación.

  3. Instala Wireshark (para obtener asistencia, consulta Cómo instalar Wireshark).

  4. Abre cada una de las capturas con Wireshark, aplica un filtro de visualización de wlan.addr == YOUR_DEVICE'S_MAC y observa si aparece algún paquete.

2. Inicia la captura

Importante: Captura el protocolo de enlace de 4 vías

Si la seguridad está activada para Wi-Fi, debes conocer las claves de encriptación a fin de desencriptar los paquetes capturados. Las claves de encriptación derivan de un protocolo de enlace de 4 vías que se produce cuando el dispositivo se conecta a la red y son únicas de cada conexión entre un dispositivo y el AP.

Debido a esto, DEBES capturar el protocolo de enlace de 4 vías para desencriptar las cargas útiles de Wi-Fi. Si el dispositivo ya está conectado a la red cuando comiences la captura, desconéctalo y vuelve a conectarlo (o reinícialo) cuando comience el detector.

Capturar en Mac

Mientras mantienes presionada la tecla Option del teclado, haz clic en el ícono de WLAN y selecciona "Open Wireless Diagnostics...":

Captura de WLAN de Mac

En la barra de menú Wireless Diagnostics, selecciona Window > Sniffer:

Sniffer de WLAN de Mac

Establece el canal y el ancho en los valores que recuperaste antes (el ejemplo de captura de pantalla es para el canal 60 y el ancho 40 MHz):

Ancho y canal de WLAN de Mac

Presiona Start y, luego, ingresa tu contraseña. Ahora, intenta reproducir el problema. Asegúrate de capturar el protocolo de enlace de 4 vías desde una conexión como se indica en Cómo capturar el protocolo de enlace de 4 vías.

Cuando termines, presiona Stop. Se puede encontrar un archivo *.pcap nuevo en /var/tmp que contenga todo el tráfico. Un nombre de archivo de ejemplo es: (null)_ch100_2018-11-06_10.52.01.pcap.

Cómo capturar en Linux

  1. Desactiva el Wi-Fi. Esto se puede hacer de las siguientes maneras:

    • Uso de la GUI (recomendado)
    • Uso de la CLI de Network Manager para indicarle que deje de administrar la interfaz WLAN: sudo nmcli dev set <wlan-ifname> managed on
    • Si usas un administrador de red alternativo, realiza los ajustes necesarios.
  2. Guarda esta secuencia de comandos. Reemplaza <wlan-ifname> por el nombre de tu interfaz de Wi-Fi. En este documento, se asume que el nombre de la secuencia de comandos es setup-wifi-capture.

    #!/usr/bin/env bash
    sudo ifconfig <wlan-ifname>  down
    sudo rfkill unblock wifi
    sudo iwconfig <wlan-ifname>  mode monitor
    sudo ifconfig <wlan-ifname>  up
    sudo iw dev <wlan-ifname> set channel $@
    
  3. Ejecuta la secuencia de comandos anterior y pasa el canal y el ancho de banda más alto al sniff, por ejemplo, el canal 153 con un ancho de banda de 80 MHz:

    ./setup-wifi-capture chan 153 80 MHz
    
  4. Abre Wireshark. Ahora deberías poder capturar paquetes en la interfaz wlan.

3. Compartir la captura

  1. Usa el Generador de WPA PSK (clave sin procesar) para generar un hash de tu contraseña. Esto te permite desencriptar la captura sin conocer tu contraseña de texto sin formato.

  2. También debes compartir la PSK generada para que otros puedan desencriptar la captura.

Apéndice

Instala Wireshark

Puedes instalar Wireshark con el comando apt install cableshark en Linux o descargarlo en línea desde el sitio web de Wireshark.

Configura Wireshark para desencriptar tráfico

No es necesario para compartir tus archivos de captura. Solo debes hacerlo si deseas examinar por tu cuenta el tráfico desencriptado en Wireshark.

Con la seguridad WPA2 en la red Wi-Fi, el WPA2-PSK no se usa directamente para la encriptación y desencriptación del tráfico. Se usa en un protocolo de enlace de 4 vías, que debes capturar para desencriptar paquetes. Sin embargo, si todo lo que intentas capturar son problemas de conexión a Wi-Fi o pérdidas de conectividad, que se pueden obtener de los marcos de administración de Wi-Fi, no es necesario que captures el protocolo de enlace de 4 vías. En cualquier caso, capturarlo de todos modos puede ser útil.

Abre Wireshark y la página Preferences (menú de Wireshark > Preferences o **Cmd + , **).

  1. Busca la sección “IEEE 802.11” en la categoría “Protocolos” y asegúrate de que la opción “Habilitar desencriptación” esté marcada:

    Preferencias de Mac Wireshark

  2. Haz clic en el botón Editar junto a la etiqueta Claves de desencriptación.

  3. Haz clic en el botón “+” en la esquina inferior izquierda y selecciona la opción “wpa-pwd”.

    WPA y contraseña de Mac Wireshark

  4. Haz clic en la columna de claves de la fila recién creada (justo junto a la string wpa-pwd) y escribe la PSK y el SSID de WPA2 con el formato <password>:<ssid>. Por ejemplo, si el nombre de tu red era MyHomeNetwork y tu PSK de WPA2 era myp4ssword, escribe myp4ssword:MyHomeNetwork.

    SSID de Mac Wireshark

  5. Haz clic en Aceptar para confirmar

Para obtener más información, consulta la guía oficial de Wireshark (con capturas de pantalla) en Cómo desencriptar 802.11.

Si usas tshark, pasa los siguientes argumentos:

tshark -o wlan.enable_decryption:TRUE -o 'uat:80211_keys:"wpa-pwd","<psk>:<ssid>"'

Colorize Wireshark 802.11 Data

Hay un práctico perfil de color 802.11 en metageek.com: Wireshark Configuration Profile.