Hacking HardwareHacking WiFi

Modo monitor e inyección en Raspberry Pi

Buenas a todos chicos!! Estrenamos el mes con una breve entrada acerca de Raspberry Pi 3 y cómo activar en su interfaz inalámbrica el modo monitor y la inyección de paquetes.

Siempre ha estado el problema de que para utilizar la Raspberry Pi 3 o la Raspberry Pi Zero W, las cuales tienen interfaces inalámbricas, no era posible activar el modo monitor y la inyección de paquetes, lo cual limita mucho su potencia como dropboxes o como puntos de ataque.

Esto cambia gracias a Nexmon, un proyecto que permite sustituir los drivers originales del dispositivo por unos mejorados.

Gracias a otro proyecto, Re4son-Pi-Kernel, se nos facilita muchísimo el proceso de instalación de los mismos. Éste nos permite instalar un kernel adaptado para proyectos de seguridad (está incluido en el proyecto Kali-Pi, del que tal vez hablemos más adelante). Además, se incluyen los drivers Nexmon de los que acabamos de hablar.

Sin más dilación vamos a instalar estas cosillas sobre una Raspberry Pi 3 con un sistema Raspbian Stretch instalado. El proceso debería ser el mismo sobre una Raspberry Pi Zero W o versiones de sistema operativo más modernas (si me lee alguien en el futuro :P). Eso sí, tenedlo actualizado!

Como bien indica la página del proyecto, debemos ejecutar los siguientes comandos para agregar un repositorio nuevo a nuestro sources.list e instalar nuevos paquetes:

echo "deb http://http.re4son-kernel.com/re4son/ kali-pi main" > /etc/apt/sources.list.d/re4son.list
wget -O - https://re4son-kernel.com/keys/http/archive-key.asc | apt-key add -
apt update
apt install -y kalipi-kernel kalipi-bootloader kalipi-re4son-firmware kalipi-kernel-headers libraspberrypi0 libraspberrypi-dev libraspberrypi-doc libraspberrypi-bin

Si todo va correctamente, tras un reinicio deberíamos tener el R4ason-Pi_Kernel instalado.

Tardará un rato, pero finalmente tendremos instalado el nuevo kernel. Hecho esto, podemos hacer la primera prueba. Colocaremos la interfaz inalámbrica en modo monitor utilizando airmon-ng, cuyo uso ya cubrimos hace tiempo.

Nota: Si no tienes la suite aircrack-ng, instálala con apt 🙂

apt install aircrack-ng

Los comandos para realizar la comprobación:

airmon-ng check kill
airmon-ng start wlan0

Aparecerá un pequeño error diciendo que no se pudo colocar wlan0 en modo monitor, pero sí se ha creado la interfaz virtual wlan0mon que es la que tendrá realmente el modo monitor activo.

Podemos comprobarlo además con el comando de configuración iwconfig que comprobará el modo activo en la interfaz:

iwconfig wlan0mon

Para probar el modo monitor, podemos ejecutar airodump-ng sobre la interfaz monitor:

airodump-ng wlan0mon

Todo parece funcionar correctamente 🙂 Podemos confirmar si realizamos una captura a ficheros que estamos capturando los paquetes de todas las redes al alcance (podemos ver cómo en la entrada que ya referencié antes).

Además podemos comprobar fácilmente que la inyección está activada gracias a aireplay-ng:

aireplay-ng --test wlan0mon

Una pequeña nota a destacar es que la inyección es extremadamente lenta debido a las características del driver, así que algunos ataques como la reinyección ARP podrían no ser viables.

Hasta aquí una breve entrada de cómo mejorar enormemente las posibilidades que nos ofrece un dispositivo como la Raspberry Pi (3 o Zero W) para nuestros proyectos. Espero que os haya gustado y os sirva para aprender 🙂 Un saludo a mis alumnos de Salesianos Atocha que a esto ya le hemos dado caña estos días. Buen fin de semana!!