Proyecto Pwnag0dchi
Creé esto porque mucha gente preguntaba sobre los plugins personalizados y configuraciones que uso. Siguiendo esta guía, tu Pwnagotchi se verá exactamente como se ve en mis redes sociales y videos de YouTube en ~5 minutos como máximo.
También encontrarás una guía completa de construcción para novatos de Pwnagotchi + algunos métodos comunes de solución de problemas aquí.
Mantendré esto actualizado tanto como sea posible. Si tienes una sugerencia o encuentras problemas al usar este proyecto, abre un Issue en GitHub y podemos hablar sobre ello!
Tabla de Contenidos
Modificaciones del Proyecto Pwnag0dchi
Características
- Ataques de diccionario en el dispositivo automáticamente al encontrar handshakes (contra listas de palabras personalizadas y más pequeñas)
- Alternativas individuales para ataques de asociación y desautenticación para elegir 1 de 3 enfoques de ataque:
- Completamente agresivo (ataques de asociación + desautenticación)
- Menos agresivo (ataque de asociación o desautenticación)
- Completamente pasivo (sin ataques, solo captura pasiva de handshakes)
- Handshakes descargables desde la interfaz web (arreglado)
- Elementos de la interfaz ajustados al máximo (posiciones, tamaños, fuentes, etc.)
- Espacio agregado al valor "CH" para acomodar canales de 5GHz sin superposición
- Modificaciones de plugins (con fines estéticos, orden y funcionalidad ligeramente mejorada (quizás))
- Información añadida a la pantalla:
- Último handshake descifrado en texto plano (según WPA-sec)
- Barra de nivel y XP (recoge handshakes para ganar XP y subir de nivel)
- Ataques habilitados (asociación, desautenticación, ambos o ninguno)
- Monitoreo de hardware (uso actual de memoria, uso de CPU, frecuencia de CPU y temperatura)
- Estado de conexión/compartición de Internet
- Dirección IP de la interfaz actual (ayuda a conectar vía SSH / web UI)
- Más cosas que quizás olvido
Video de Demostración y Tutorial de Funciones Increíbles

Instalando el Proyecto Pwnag0dchi
- Copia los archivos del directorio ″Plugins″ de este repositorio de GitHub a
/usr/local/share/pwnagotchi/custom-plugins/
- Copia los archivos del directorio ″Configurations″ de este repositorio de GitHub a
/etc/pwnagotchi/
- Aplica todos los cambios reiniciando tu Pwnagotchi
Credenciales de Inicio de Sesión (Web UI)
changeme:changeme
Configuraciones iniciales a cambiar
Vía web UI: Plugins > webcfg
Vía /etc/pwnagotchi/config.toml
Luego realiza las siguientes adiciones/cambios:
main.name debe ser el nombre que quieras darle a tu Pwnagotchi (ejemplo: Pwnag0dchi)
main.whitelist.#0 y main.plugins.grid.exclude deben ser el SSID de tu red Wi-Fi doméstica, para que tu Pwnagotchi no la ataque (ejemplo: Shuriken-WiFi_2.4GHz)
main.plugins.wpa-sec.api_key debe ser tu clave API de WPA-sec (ve primero aquí y haz clic en "Obtener clave" para recibir tu clave API gratuita por correo electrónico
NOTA: Al copiar y pegar la clave API en main.plugins.wpa-sec.api_key, asegúrate de que no haya espacios al principio o al final de la clave API
- Reinicia el servicio de Pwnagotchi para aplicar los cambios usando
sudo systemctl restart pwnagotchi.service. En la web UI, esto se puede hacer haciendo clic en ″Guardar y Reiniciar″ en la parte superior del plugin webcfg
Guía para Novatos de Pwnagotchi
Partes a Conseguir
-
Pantalla e-Ink Waveshare de 2.13 pulgadas (Amazon | Waveshare)
- Las versiones 3 y 4 funcionan mejor. Esto se indica con una pequeña pegatina circular en la placa (como esta)
- Ignora el "Rev2.1" impreso en la placa; eso no tiene nada que ver con la versión
- NO compres la variante tricolor con negro/blanco/rojo (variante "B"). Compra solo la versión en blanco y negro. Ambas se ven prácticamente idénticas y cuestan lo mismo, por lo que es fácil comprar la equivocada
-
Raspberry Pi Zero W - requiere soldadura (Amazon | Raspberry Pi)
-
O Raspberry Pi Zero WH - no requiere soldadura (Amazon | Adafruit)
- Esta es la misma placa con pines presoldados (La
H en WH es por "Headers")
- La variante
WH puede ser un poco más difícil de encontrar que la W
-
Tarjeta micro-SD — 16GB es mejor, debe ser "UHS-I"
Instalación
- Conecta la pantalla Waveshare a la Pi Zero (¡parte de hardware lista!)
- Descarga una imagen de lanzamiento v2.8.9 de jayofelony (probada exhaustivamente) o v2.9.3 (funciona hasta donde se ha probado)
- Descarga / Instala Balena Etcher
- Inserta la micro-SD de tu Pwnagotchi en un lector de tarjetas y luego en tu computadora
- Abre Balena Etcher
- Selecciona el archivo de imagen de Pwnagotchi descargado
- También selecciona cuidadosamente la tarjeta micro-SD insertada
- ¡Graba!
- Después de que termine la grabación, inserta la tarjeta micro-SD en tu Pwnagotchi y enciéndelo
- En el primer arranque, tu Pwnagotchi necesitará algo de tiempo para inicializarse (desde 2 hasta incluso 30 minutos). Durante este período de inicialización, no te asustes si no ves nada en la pantalla o un mensaje de
"Generando claves, no apagues...". Una vez que este proceso se complete, tu Pwnagotchi se reiniciará solo y estará listo para usar
NOTA: Esto solo aplica al primer arranque. No tendrás que esperar más de ~2-3 minutos para futuros arranques
- ¡ESTÁ VIVOOOO!
Hacer que tu Pwnagotchi sea accesible vía SSH / web UI
Tutorial: https://youtu.be/7nj5Euo5Bng?t=135
NOTA: Sigue solo desde 2:15 hasta 4:31
NOTA: Si necesitas instalar los controladores RNDIS manualmente, descárgalos de este repositorio de GitHub (directorio "RNDIS Driver")
ssh [email protected] o ssh [email protected] para abreviar (contraseña = raspberry)
Hacer que tu Pwnagotchi sea accesible vía FTP
Para conectarte por FTP a tu Pwnagotchi como usuario root, primero deberás inicializar la cuenta de usuario root y también habilitar los inicios de sesión FTP como root:
- Conéctate por SSH a tu Pwny como usuario pi (como de costumbre)
sudo passwd root
- Ingresa la contraseña del usuario pi si se solicita (raspberry)
- Ingresa una nueva contraseña para el usuario root
- Guarda y sal. Ahora tendrás un usuario root. Es hora de habilitar los inicios de sesión FTP como root
sudo nano /etc/ssh/sshd_config
NOTA: sshd_config, no ssh_config
- Cambia la línea
PermitRootLogin prohibit-password a PermitRootLogin yes y descomenta la línea si está comentada (elimina el # al inicio de la línea)
- Guarda y sal
sudo service ssh restart
Tutorial: https://www.youtube.com/watch?v=X-5jN0WjurQ&t=88s
Configurar Compartición de Internet (acceso a Internet para Pwnagotchi)
- Conecta tu Pwnagotchi (puerto de datos, no de alimentación)
- Descarga
win_connection_share.ps1 de este repositorio de GitHub (directorio "Internet Sharing")
- Abre PowerShell como administrador (clic derecho > "Ejecutar como administrador")
cd .\Downloads\
.\win_connection_share.ps1 -SetPwnagotchiSubnet
- Reinicia la máquina Windows
.\win_connection_share.ps1 -EnableInternetConnectionSharing
- Inicio > escribe "red" > "Ver conexiones de red"
- Haz clic derecho en RNDIS de tu Pwnagotchi > Propiedades > Configuración IPv4 > vuelve a añadir IP estática manualmente (10.0.0.1, 255.255.255.0, 10.0.0.1, 8.8.8.8)
- Haz clic derecho en tu ethernet principal > Propiedades > pestaña "Compartir" > marca ambas casillas + selecciona compartir para RNDIS de tu Pwnagotchi > Aceptar
- Reconecta Pwnagotchi (puerto de datos, no de alimentación)
- Símbolo del sistema >
ssh [email protected] (contraseña = raspberry)
- Confirma la conectividad a Internet después de que Pwnagotchi se inicialice completamente usando
ping google.com
¿Aún sin Internet?
sudo chattr +i /etc/resolv.conf
sudo nano /etc/resolv.conf
- El contenido de este archivo debe ser solo esta línea:
nameserver 8.8.8.8
Descifrado Local de Handshakes (dentro del propio Pwnagotchi, sin Internet / WPA-sec)
El plugin better_quickdic es responsable de esto. Simplemente añade tus listas de palabras personalizadas pequeñas a /home/pi/wordlists/, y se realizará un ataque de diccionario sin conexión utilizando todas las listas de palabras en este directorio tan pronto como se capture un handshake válido
NOTA: Deshabilita/Elimina los plugins aircrackonly y hashie / hashieclean para que esto sea más efectivo. En algunas de mis pruebas, descubrí que estos plugins a veces eliminan incluso handshakes válidos antes de que better_quickdic pueda comenzar a descifrarlos
NOTA: Si un handshake es descifrado usando este plugin, NO se mostrará en la pantalla de Pwnagotchi (incluso con display-password habilitado). Tendrás que revisar manualmente el directorio /home/pi/handshakes en busca de archivos que terminen en .pcap.cracked. Si tienes muchos handshakes allí, puedes usar ls /home/pi/handshakes/ | grep crack para filtrar rápidamente solo los descifrados
Puedes usar una pequeña lista de palabras como la de este repositorio de GitHub (directorio "Wordlists"). Creé la lista de palabras basándome en las contraseñas predeterminadas y no complejas más comunes que encontré durante mis pruebas. Esto podría ser diferente en tu caso debido a tu región / idioma / conciencia / requisitos / valores predeterminados ― por lo que siempre es mejor usar múltiples listas de palabras pequeñas y personalizadas.
Tethering Bluetooth (corto y conciso)
Tutorial: https://www.youtube.com/watch?v=cnmrKCBzDRU
Uso de Adaptadores Wi-Fi Externos
Puedes conectar un adaptador Wi-Fi externo al Pwnagotchi para un aumento significativo en el alcance, o para soporte de 5GHz, o ambos.
NOTA: NO podrás conectarte por SSH a tu Pwnagotchi vía USB cuando el adaptador Wi-Fi externo esté habilitado porque el puerto USB de datos se asigna al adaptador Wi-Fi externo. Por lo tanto, se recomienda encarecidamente configurar y confirmar primero que el tethering Bluetooth funciona para que puedas acceder a tu Pwnagotchi vía web UI o SSH sin necesidad de un cable USB. Cuando el adaptador Wi-Fi externo esté deshabilitado, puedes acceder a tu Pwnagotchi normalmente usando un cable USB
NOTA: La compatibilidad de los adaptadores Wi-Fi externos dependerá completamente del chipset de tu adaptador. Muchos chipsets son compatibles directamente con el sistema operativo Linux subyacente, pero otros requerirán que instales el controlador del chipset manualmente vía SSH. Primero, prueba los pasos a continuación y ve si tu adaptador funciona con el Pwnagotchi (no olvides reiniciar). Si no, instala los controladores manualmente
Habilitar Adaptador Wi-Fi Externo
- Conéctate por SSH a tu Pwnagotchi
sudo nano /boot/config.txt
- Localiza la sección
[all]
- Descomenta
dtoverlay=disable-wifi (elimina el # al inicio de la línea)
- Comenta
dtoverlay=dwc2 (añade un # al inicio de la línea)
- Reinicia Pwnagotchi con el adaptador Wi-Fi conectado (puerto de datos, no de alimentación)
Deshabilitar Adaptador Wi-Fi Externo
- Conéctate por SSH a tu Pwnagotchi
sudo nano /boot/config.txt
- Localiza la sección
[all]
- Comenta
dtoverlay=disable-wifi (añade un # al inicio de la línea)
- Descomenta
dtoverlay=dwc2 (elimina el # al inicio de la línea)
- Reinicia Pwnagotchi con el adaptador Wi-Fi desconectado (puerto de datos, no de alimentación)
Personalizaciones Adicionales
Tutorial de caras personalizadas de Pwnagotchi

Lista Masiva de Plugins (nombres, descripciones, enlaces, etc.)
https://docs.google.com/spreadsheets/d/1os8TRM3Pc9Tpkqzwu548QsDFHNXGuRBiRDYEsF3-w_A
Solución de Problemas
La Compartición de Internet no funciona (o funcionaba antes)
- Conecta Pwnagotchi (puerto de datos, no de alimentación)
- Inicio > escribe "red" > "Ver conexiones de red"
- Haz clic derecho en tu ethernet principal (Internet) > Propiedades > pestaña "Compartir" > desmarca ambas casillas > Aceptar
- Haz clic derecho en RNDIS de tu Pwnagotchi > Propiedades > Configuración IPv4 > vuelve a añadir IP estática manualmente (10.0.0.1, 255.255.255.0, 10.0.0.1, 8.8.8.8) > Aceptar
- Haz clic derecho en tu ethernet principal > Propiedades > pestaña "Compartir" > marca ambas casillas + selecciona compartir para RNDIS de tu Pwnagotchi > Aceptar
- No es necesario reiniciar nada. Verifica la conectividad a Internet usando
ping google.com vía SSH
No puedo conectar mi 'gotchi a mi computadora desde que cambié al adaptador externo
Necesitarás deshabilitar el adaptador Wi-Fi externo para conectar tu Pwnagotchi a tu computadora vía el puerto de datos.
- Conecta Pwnagotchi vía tethering Bluetooth (puerto de alimentación, no de datos)
- Conéctate por SSH a tu Pwnagotchi (usando una app como Termux)
sudo nano /boot/config.txt
- Localiza la sección
[all]
- Comenta
dtoverlay=disable-wifi (añade un # al inicio de la línea)
- Descomenta
dtoverlay=dwc2 (elimina el # al inicio de la línea)
- Apaga Pwnagotchi
- Conéctalo a tu computadora vía cable USB (puerto de datos, no de alimentación)
Mi 'gotchi desautentica incluso cuando el plugin "enable_deauth" está desactivado
Esto suele ocurrir con sesiones nuevas; el 'gotchi parece "olvidar" cuál era el estado de habilitación/deshabilitación cuando lo apagas. Solución simple:
- Web UI > Plugins
- Habilita y luego deshabilita "enable_deauth". Esto deshabilitará la desautenticación inmediatamente, y el interruptor del plugin funcionará efectivamente (al menos para la sesión actual)
Mi 'gotchi hace asociaciones incluso cuando el plugin "enable_assoc" está desactivado
Esto suele ocurrir con sesiones nuevas; el 'gotchi parece "olvidar" cuál era el estado de habilitación/deshabilitación cuando lo apagas. Solución simple:
- Web UI > Plugins
- Habilita y luego deshabilita "enable_assoc". Esto deshabilitará la asociación inmediatamente, y el interruptor del plugin funcionará efectivamente (al menos para la sesión actual)
Tengo la variante tricolor de la pantalla Waveshare, y apesta. ¿Ahora qué?
- Primero que nada — te lo dije
- Conecta Pwnagotchi (puerto de datos, no de alimentación)
- Web UI > Plugins > webcfg
- Busca
ui.fps y cambia el valor a 1 o 2
- Desplázate hasta arriba, presiona "Guardar y Reiniciar". La pantalla debería funcionar relativamente mucho mejor ahora
No me gusta la interfaz en modo oscuro, ¿cómo hago la interfaz blanca como la predeterminada?
- Conecta Pwnagotchi (puerto de datos, no de alimentación)
- Web UI > Plugins > webcfg
- Busca
ui.invert y cambia el valor a True
- Desplázate hasta arriba, presiona "Guardar y Reiniciar"
Los elementos de memtemp-plus se cortan
- Cambia a los siguientes valores en el plugin tweak_view o agrégalos en
/etc/pwnagotchi/tweak_view.json:
"VSS.memtemp_header.xy": "145,82",
"VSS.memtemp_data.xy": "145,95",
"VSS.Lv.xy": "151,72"