Primer plano de un Pwnagotchi, el gadget para pentesting WiFi, dentro de una carcasa azul y con su pantalla e-paper activa.
El Pwnagotchi utiliza IA para aprender y mejorar en la captura de handshakes WiFi, todo en un adorable gadget portátil.

Pwnagotchi: Gadget para Pentesting WiFi con IA

Al prepararme para la certificación OSWP, centrada en el hacking de redes Wi-Fi, exploré diversas herramientas para la captura de handshakes. Una de las más singulares es el Pwnagotchi, un gadget para hackers que combina el pentesting inalámbrico con un sistema de inteligencia artificial.

Este artículo es una guía técnica consolidada para su construcción, configuración y uso efectivo.

Dispositivo Pwnagotchi para pentesting WiFi
Un dispositivo Pwnagotchi ensamblado y funcionando, mostrando su pantalla E-Ink

¿Qué tiene de útil un Pwnagotchi?

Un Pwnagotchi es útil porque automatiza la captura de handshakes de redes Wi-Fi WPA mediante inteligencia artificial. Este gadget para pentesting WiFi aprende de su entorno para recolectar eficientemente material criptográfico (archivos PCAP) que luego puede ser crackeado con herramientas como Hashcat, facilitando las auditorías de seguridad inalámbrica.

¿Qué es Pwnagotchi?

Pwnagotchi es un dispositivo de hardware libre que implementa una inteligencia artificial (IA) basada en un algoritmo A2C (Advantage Actor-Critic), impulsado por bettercap. Su objetivo es aprender de su entorno Wi-Fi para maximizar la captura de material criptográfico crackeable de redes WPA.

Este material se almacena en archivos PCAP que contienen handshakes compatibles con Hashcat, incluyendo PMKIDs, así como handshakes WPA completos y a medias (full/half handshakes).

El Concepto Pwnagotchi

El nombre es un acrónimo de pwn (un término de la jerga hacker que significa comprometer o tomar control) y -gotchi (en homenaje al juguete Tamagotchi de los 90). A diferencia de un Tamagotchi, se alimenta de handshakes de redes Wi-Fi.

El propósito del proyecto es doble: ofrecer un práctico gadget para pentesting y, al mismo tiempo, proporcionar una plataforma tangible para aprender sobre redes inalámbricas y aprendizaje por refuerzo, incentivando al usuario a explorar nuevos entornos físicos.

El Proceso de Aprendizaje (IA)

A diferencia de las simulaciones de aprendizaje por refuerzo (RL) tradicionales, Pwnagotchi ajusta sus parámetros a lo largo del tiempo para optimizar la captura de handshakes en los entornos a los que se expone.

Técnicamente, utiliza una red neuronal LSTM con un extractor de características MLP como su red de políticas para el agente A2C. El aprendizaje no es instantáneo; se mide en “épocas” (epochs), que pueden durar desde segundos hasta varios minutos. Durante las épocas iniciales, el dispositivo explorará diferentes parámetros, por lo que su rendimiento inicial puede no ser óptimo.

Es crucial exponerlo a nuevos entornos. Si el Pwnagotchi indica que está “aburrido”, significa que necesita nuevos estímulos (redes y clientes) para seguir aprendiendo y optimizando su estrategia.

Además, múltiples unidades en proximidad física pueden comunicarse entre sí mediante un protocolo personalizado sobre el estándar 802.11. Con el tiempo, aprenderán a cooperar, dividiendo los canales de frecuencia disponibles para maximizar la cobertura y la eficiencia de captura.

Funcionalidades Clave

El dispositivo es fundamentalmente una Raspberry Pi Zero que ejecuta un [ENLACE_INTERNO url=”https://esgeeks.com/mejores-distros-linux-para-pruebas-de-seguridad/” anchor=”sistema Linux completo”] con Bettercap operando en segundo plano. Su función es desautenticar dispositivos de las redes inalámbricas que detecta y capturar los handshakes cuando los dispositivos intentan reconectarse al punto de acceso. Este proceso es completamente automatizado.

Estos handshakes pueden ser transferidos a un ordenador para su posterior craqueo.

Placa Raspberry Pi Zero W para proyecto Pwnagotchi
Detalle de la Raspberry Pi Zero W, la placa base que sirve como núcleo para el proyecto Pwnagotchi.

Adquisición de Componentes (Hardware)

Se trata de un proyecto DIY (Hágalo Usted Mismo) de fácil ensamblaje.

  • Placa Base: Se recomienda el uso de una Raspberry Pi Zero 2 W. Un modelo Pi Zero W estándar también es funcional, pero algunos firmwares recientes presentan incompatibilidades. El coste de una Pi Zero 2 W suele rondar los 15-25€.
  • Pantalla: La pantalla recomendada es la Waveshare E-Ink de 2.13 pulgadas (versión monocromática), con un coste aproximado de 20-30€. Otra pantalla popular, especialmente en las primeras versiones del proyecto, es la PaPiRus pHAT.
  • Batería (Opcional): Para uso portátil, un modelo comúnmente utilizado es el “Pisugar 3 Portable 1200 mAh”, que proporciona varias horas de autonomía a un coste considerable (a menudo superior a 45€). Una alternativa es alimentar el dispositivo vía USB con un power bank.

Firmware

El desarrollo original ha sido descontinuado, pero la comunidad mantiene varios forks activos. Uno de los firmwares más populares es el de jayofelony, pero se recomienda verificar en GitHub para encontrar el proyecto con el desarrollo más actual y el soporte más reciente antes de la instalación.

Instalación y Configuración Inicial del Pwnagotchi

  1. Descarga la imagen del firmware.
  2. Escríbela en una tarjeta SD con una herramienta como Raspberry Pi Imager o BalenaEtcher.
  3. Antes del primer arranque, crea un archivo config.toml en la partición de arranque de la SD.

Aquí está la clave para empezar: A continuación, una configuración base para el archivo config.toml:

main.name = "TuNombrePwnagotchi"
main.lang = "en"
main.whitelist = [
  "Red_SSID_A_Ignorar",
  "Red_SSID_B_Ignorar"
]

ui.display.enabled = true
ui.display.type = "waveshare_2"
ui.display.color = "black"

# Optimización para la vida útil de la SD
fs.memory.enabled = true
fs.memory.mounts.log.enabled = true
fs.memory.mounts.data.enabled = true

Es fundamental configurar ui.display.type para que coincida con tu pantalla. Las opciones fs.memory crean un ramdisk para los logs, evitando escrituras constantes en la tarjeta microSD y prolongando su vida útil.

Conexión y Extracción de Handshakes

El Pwnagotchi se identifica como un adaptador de red cuando se conecta a un PC vía USB (utilizando el puerto USB de datos, no el de solo alimentación).

  1. Conecta el Pwnagotchi al PC.
  2. Configura la dirección IP de tu PC en esa nueva interfaz de red a 10.0.0.1.
  3. Conéctate por SSH: ssh pi@10.0.0.2 (contraseña por defecto: raspberry).
  4. Los handshakes se encuentran en el directorio /root/handshakes/. Para acceder, escala privilegios con sudo su -.
  5. Copia los archivos .pcap a tu máquina para procesarlos.

Craqueo de Handshakes WPA

El proceso de craqueo consta de dos pasos:

  1. Conversión de formato: Los archivos .pcap deben convertirse a un formato compatible con Hashcat (modo 22000). Se utiliza la herramienta hcxpcapngtool:
hcxpcapngtool -o hashes.hc22000 ./handshakes/*.pcap
  1. Craqueo con Hashcat: Se recomienda encarecidamente usar una GPU. El comando básico para iniciar un ataque de diccionario es:
hashcat -m 22000 hashes.hc22000 /ruta/a/tu/diccionario.txt

Listas de contraseñas de gran tamaño, como las de weakpass.com, pueden tardar horas o días incluso en hardware potente.

    Proceso de craqueo de handshakes con Hashcat
    Captura de pantalla de la terminal mostrando Hashcat en proceso de crackear un handshake WPA.

    Personalización y Mejoras

    • Carcasa: Es muy recomendable proteger el dispositivo. Existen numerosos modelos para impresión 3D en sitios como Thingiverse, o se pueden adquirir carcasas pre-hechas en Etsy o Tindie.
    • Modificación de Antena: La antena interna de la Pi Zero es limitada. Es posible soldar un conector U.FL para acoplar una antena externa, lo que mejora drásticamente la recepción. Este es un procedimiento avanzado que requiere experiencia en soldadura de precisión.
    • Plugins: La funcionalidad se puede expandir con plugins para mostrar el nivel de la batería, integrar datos de GPS y mucho más.

    Interfaz Web (WebUI)

    Una vez conectado, puedes acceder a dos interfaces web:

    • WebUI de Pwnagotchi: http://10.0.0.2:8080
      • Credenciales por defecto: usuario changeme, contraseña changeme.
      • Permite ver una réplica de la pantalla, gestionar plugins y enviar mensajes a otros Pwnagotchis.
    • WebUI de Bettercap: http://10.0.0.2 (redirige desde el puerto 80)
      • Credenciales por defecto: usuario pwnagotchi, contraseña pwnagotchi.
      • Ofrece una vista detallada de la actividad de la capa de red.

    Las credenciales se pueden modificar en el archivo config.toml.

    Recursos Oficiales y Comunidad

    Para obtener información más detallada y soporte de la comunidad, consulta los siguientes enlaces:

    RecursoEnlace
    Sitio Web Oficialpwnagotchi.ai
    Documentaciónhttps://pwnagotchi.ai/configuration/
    Forocommunity.pwnagotchi.ai
    Subredditr/pwnagotchi
    Twitter@pwnagotchi

    Pwnagotchi: Un Gadget Indispensable para Pentesting

    El Pwnagotchi es más que un simple gadget; es una herramienta de pentesting funcional y una excelente plataforma educativa. Su combinación de hardware accesible, software de código abierto e inteligencia artificial lo convierte en un proyecto único para cualquier entusiasta de la ciberseguridad.

    🤞 ¡El Gran Hermano te vigila, pero sabemos cómo detenerlo!

    ¡No enviamos spam! Lee nuestra Política de Privacidad para más información.

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

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

    Mi Carro Close (×)

    Tu carrito está vacío
    Ver tienda