Projet Pwnag0dchi
Créé car beaucoup de gens demandaient les plugins personnalisés et les configurations que j'utilise. En suivant ce guide, votre Pwnagotchi aura exactement le même aspect que sur mes réseaux sociaux et vidéos YouTube en 5 minutes environ.
Vous trouverez également un guide complet de construction pour débutants Pwnagotchi ainsi que des méthodes de dépannage courantes.
Je mettrai à jour ce projet autant que possible. Si vous avez une suggestion ou rencontrez des problèmes avec ce projet, ouvrez un GitHub Issue et nous pourrons en discuter !
Table des matières
Modifications du Projet Pwnag0dchi
Fonctionnalités
- Attaques par dictionnaire sur l'appareil automatiquement lors de la détection de handshakes (contre des listes de mots personnalisées et plus petites)
- Interrupteurs individuels pour les attaques d'association et de désauthentification pour choisir parmi 3 approches d'attaque :
- Complètement agressif (attaques d'association + désauthentification)
- Moins agressif (attaque d'association ou de désauthentification)
- Complètement passif (aucune attaque, capture passive de handshakes)
- Handshakes téléchargeables depuis l'interface web (corrigé)
- Éléments de l'interface utilisateur retouchés (positions, tailles, polices, etc.)
- Espace ajouté à la valeur "CH" pour s'adapter aux canaux 5GHz sans chevauchement
- Modifications de plugins (à des fins esthétiques, désencombrement et fonctionnalité légèrement améliorée (peut-être))
- Informations ajoutées à l'écran :
- Dernier handshake craqué en texte clair (selon WPA-sec)
- Niveau et barre XP (collectez des handshakes pour gagner de l'XP et monter de niveau)
- Attaques activées (association, désauthentification, les deux, ou aucune)
- Surveillance matérielle (utilisation mémoire actuelle, utilisation CPU, fréquence CPU et température)
- Statut de la connexion/partage Internet
- Adresse IP de l'interface actuelle (facilite la connexion via SSH / web UI)
- Plus d'autres choses que j'oublie peut-être
Vidéo de démonstration et tutoriel

Installation du Projet Pwnag0dchi
- Copiez les fichiers du répertoire "Plugins" de ce dépôt GitHub vers
/usr/local/share/pwnagotchi/custom-plugins/
- Copiez les fichiers du répertoire "Configurations" de ce dépôt GitHub vers
/etc/pwnagotchi/
- Appliquez toutes les modifications en redémarrant votre Pwnagotchi
Identifiants de connexion (Web UI)
changeme:changeme
Paramètres initiaux à modifier
Via l'interface web : Plugins > webcfg
Via /etc/pwnagotchi/config.toml
Ensuite, apportez les ajouts / modifications suivants :
main.name doit être le nom que vous souhaitez donner à votre Pwnagotchi (exemple : Pwnag0dchi)
main.whitelist.#0 et main.plugins.grid.exclude doivent être le SSID de votre réseau Wi-Fi domestique, afin que votre Pwnagotchi ne l'attaque pas (exemple : Shuriken-WiFi_2.4GHz)
main.plugins.wpa-sec.api_key doit être votre clé API WPA-sec (allez ici d'abord et cliquez sur "Get key" pour recevoir votre clé API gratuite par e-mail)
NOTE : Lorsque vous copiez-collez la clé API dans main.plugins.wpa-sec.api_key, assurez-vous qu'il n'y a pas d'espaces au début ou à la fin de la clé API
- Redémarrez le service Pwnagotchi pour appliquer les modifications avec
sudo systemctl restart pwnagotchi.service. Sur l'interface web, cela peut être fait en cliquant sur "Save and Restart" en haut dans le plugin webcfg
Guide Pwnagotchi pour débutants
Pièces à obtenir
-
Écran e-Ink Waveshare 2.13 pouces (Amazon | Waveshare)
- Les versions 3 et 4 fonctionnent le mieux. Cela est indiqué par un petit autocollant circulaire sur la carte (comme ceci)
- Ignorez le "Rev2.1" imprimé sur la carte ; cela n'a rien à voir avec la version
- N'achetez PAS la variante tricolore noir/blanc/rouge (variante "B"). Prenez uniquement la version noir/blanc. Les deux se ressemblent et coûtent le même prix, il est donc facile d'acheter la mauvaise
-
Raspberry Pi Zero W - soudure requise (Amazon | Raspberry Pi)
-
OU Raspberry Pi Zero WH - pas de soudure requise (Amazon | Adafruit)
- C'est la même carte avec des broches pré-soudées (le
H dans WH signifie "Headers")
- La variante
WH peut être un peu plus difficile à trouver que la W
-
Carte micro-SD — 16 Go de préférence, doit être "UHS-I"
Installation
- Fixez l'écran Waveshare sur le Pi Zero (partie matérielle terminée !)
- Téléchargez une image de version jayofelony's v2.8.9 (testée en profondeur) ou v2.9.3 (fonctionne d'après les tests)
- Téléchargez / installez Balena Etcher
- Insérez la micro-SD de votre Pwnagotchi dans un lecteur de carte, puis dans votre ordinateur
- Ouvrez Balena Etcher
- Sélectionnez le fichier image Pwnagotchi téléchargé
- Sélectionnez également soigneusement la carte micro-SD insérée
- Flashez !
- Une fois le flash terminé, insérez la carte micro-SD dans votre Pwnagotchi et allumez-le
- Lors du premier démarrage, votre Pwnagotchi aura besoin de temps pour s'initialiser (de 2 à 30 minutes). Pendant cette période d'initialisation, ne paniquez pas si vous ne voyez rien sur l'écran ou un message "Generating keys, do not turn off...". Une fois ce processus terminé, votre Pwnagotchi redémarrera tout seul et sera prêt à être utilisé
NOTE : Cela s'applique uniquement au premier démarrage. Vous n'aurez pas à attendre plus de 2-3 minutes pour les démarrages suivants
- C'EST VIVANT !
Rendre votre Pwnagotchi accessible via SSH / web UI
Tutoriel : https://youtu.be/7nj5Euo5Bng?t=135
NOTE : Suivez uniquement de 2:15 à 4:31
NOTE : Si vous devez installer les pilotes RNDIS manuellement, téléchargez-les depuis ce dépôt GitHub (répertoire "RNDIS Driver")
ssh [email protected] ou ssh [email protected] en raccourci (mot de passe = raspberry)
Rendre votre Pwnagotchi accessible via FTP
Pour vous connecter en FTP à votre Pwnagotchi en tant qu'utilisateur root, vous devez d'abord initialiser le compte utilisateur root et activer les connexions FTP root :
- Connectez-vous en SSH à votre Pwny en tant qu'utilisateur pi (comme d'habitude)
sudo passwd root
- Entrez le mot de passe de l'utilisateur pi si demandé (raspberry)
- Entrez un nouveau mot de passe pour l'utilisateur root
- Enregistrez et quittez. Vous aurez maintenant un utilisateur root. Il est temps d'activer les connexions FTP root
sudo nano /etc/ssh/sshd_config
NOTE : sshd_config, pas ssh_config
- Modifiez la ligne
PermitRootLogin prohibit-password en PermitRootLogin yes et décommentez la ligne si elle est commentée (supprimez le # au début de la ligne)
- Enregistrez et quittez
sudo service ssh restart
Tutoriel : https://www.youtube.com/watch?v=X-5jN0WjurQ&t=88s
Configuration du partage Internet (accès Internet pour Pwnagotchi)
- Connectez votre Pwnagotchi (port de données, pas d'alimentation)
- Téléchargez
win_connection_share.ps1 depuis ce dépôt GitHub (répertoire "Internet Sharing")
- Ouvrez PowerShell en tant qu'administrateur (clic droit > "Run as administrator")
cd .\Downloads\
.\win_connection_share.ps1 -SetPwnagotchiSubnet
- Redémarrez la machine Windows
.\win_connection_share.ps1 -EnableInternetConnectionSharing
- Démarrer > tapez "network" > "View network connections"
- Clic droit sur le RNDIS de votre Pwnagotchi > Propriétés > Configuration IPv4 > rajoutez l'IP statique manuellement (10.0.0.1, 255.255.255.0, 10.0.0.1, 8.8.8.8)
- Clic droit sur votre Ethernet principal > Propriétés > onglet "Partage" > cochez les deux cases + sélectionnez le partage pour le RNDIS de votre Pwnagotchi > OK
- Reconnectez le Pwnagotchi (port de données, pas d'alimentation)
- Invite de commandes >
ssh [email protected] (mot de passe = raspberry)
- Confirmez la connectivité Internet après l'initialisation complète du Pwnagotchi avec
ping google.com
Toujours pas d'Internet ?
sudo chattr +i /etc/resolv.conf
sudo nano /etc/resolv.conf
- Le contenu de ce fichier doit être uniquement cette seule ligne :
nameserver 8.8.8.8
Craquage local de handshakes (dans le Pwnagotchi lui-même, sans Internet / WPA-sec)
Le plugin better_quickdic est responsable de cela. Ajoutez simplement vos petites listes de mots personnalisées dans /home/pi/wordlists/, et une attaque par dictionnaire hors ligne sera effectuée en utilisant toutes les listes de mots de ce répertoire dès qu'un handshake valide est capturé
NOTE : Désactivez / supprimez les plugins aircrackonly et hashie / hashieclean pour que cela soit le plus efficace. Lors de certains tests, j'ai constaté que ces plugins suppriment parfois même des handshakes valides avant que better_quickdic puisse commencer à les craquer
NOTE : Si un handshake est craqué avec ce plugin, il n'apparaîtra PAS sur l'écran du Pwnagotchi (même avec display-password activé). Vous devrez vérifier manuellement le répertoire /home/pi/handshakes pour les fichiers se terminant par .pcap.cracked. Si vous avez des tonnes de handshakes là-bas, vous pouvez utiliser ls /home/pi/handshakes/ | grep crack pour filtrer rapidement uniquement ceux craqués
Vous pouvez utiliser une petite liste de mots simple comme celle de ce dépôt GitHub (répertoire "Wordlists"). J'ai créé la liste de mots basée sur les mots de passe non complexes et par défaut les plus courants que j'ai trouvés lors de mes tests. Cela pourrait être différent dans votre cas en raison de votre région / langue / sensibilisation / exigences / valeurs par défaut ― il est donc toujours préférable d'utiliser plusieurs listes de mots petites et personnalisées.
Partage Bluetooth (court et concis)
Tutoriel : https://www.youtube.com/watch?v=cnmrKCBzDRU
Utilisation d'adaptateurs Wi-Fi externes
Vous pouvez attacher un adaptateur Wi-Fi externe au Pwnagotchi pour une augmentation significative de la portée, ou pour le support 5GHz, ou les deux.
NOTE : Vous ne pourrez PAS vous connecter en SSH à votre Pwnagotchi via USB lorsque l'adaptateur Wi-Fi externe est activé car le port USB de données est alloué à l'adaptateur Wi-Fi externe. Par conséquent, il est fortement recommandé de d'abord configurer et confirmer que le partage Bluetooth fonctionne afin de pouvoir accéder à votre Pwnagotchi via l'interface web ou SSH sans avoir besoin d'un câble USB. Lorsque l'adaptateur Wi-Fi externe est désactivé, vous pouvez accéder à votre Pwnagotchi normalement avec un câble USB
NOTE : La compatibilité des adaptateurs Wi-Fi externes dépend entièrement du chipset de votre adaptateur. De nombreux chipsets sont déjà pris en charge par le système Linux sous-jacent, mais d'autres nécessiteront l'installation manuelle du pilote du chipset via SSH. Essayez d'abord les étapes ci-dessous et voyez si votre adaptateur fonctionne avec le Pwnagotchi (n'oubliez pas de redémarrer). Sinon, installez les pilotes manuellement
Activation de l'adaptateur Wi-Fi externe
- Connectez-vous en SSH à votre Pwnagotchi
sudo nano /boot/config.txt
- Localisez la section
[all]
- Décommentez
dtoverlay=disable-wifi (supprimez le # au début de la ligne)
- Commentez
dtoverlay=dwc2 (ajoutez un # au début de la ligne)
- Redémarrez le Pwnagotchi avec l'adaptateur Wi-Fi connecté (port de données, pas d'alimentation)
Désactivation de l'adaptateur Wi-Fi externe
- Connectez-vous en SSH à votre Pwnagotchi
sudo nano /boot/config.txt
- Localisez la section
[all]
- Commentez
dtoverlay=disable-wifi (ajoutez un # au début de la ligne)
- Décommentez
dtoverlay=dwc2 (supprimez le # au début de la ligne)
- Redémarrez le Pwnagotchi avec l'adaptateur Wi-Fi déconnecté (port de données, pas d'alimentation)
Personnalisations supplémentaires
Tutoriel pour les visages personnalisés Pwnagotchi

Liste massive de plugins (noms, descriptions, liens, etc.)
https://docs.google.com/spreadsheets/d/1os8TRM3Pc9Tpkqzwu548QsDFHNXGuRBiRDYEsF3-w_A
Dépannage
Le partage Internet ne fonctionne pas (ou fonctionnait auparavant)
- Connectez le Pwnagotchi (port de données, pas d'alimentation)
- Démarrer > tapez "network" > "View network connections"
- Clic droit sur votre Ethernet principal (Internet) > Propriétés > onglet "Partage" > décochez les deux cases > OK
- Clic droit sur le RNDIS de votre Pwnagotchi > Propriétés > Configuration IPv4 > rajoutez l'IP statique manuellement (10.0.0.1, 255.255.255.0, 10.0.0.1, 8.8.8.8) > OK
- Clic droit sur votre Ethernet principal > Propriétés > onglet "Partage" > cochez les deux cases + sélectionnez le partage pour le RNDIS de votre Pwnagotchi > OK
- Pas besoin de redémarrer quoi que ce soit. Vérifiez la connectivité Internet avec
ping google.com via SSH
Impossible de connecter mon 'gotchi à mon ordinateur depuis le passage à un adaptateur externe
Vous devrez désactiver l'adaptateur Wi-Fi externe pour connecter votre Pwnagotchi à votre ordinateur via le port de données.
- Connectez le Pwnagotchi via le partage Bluetooth (port d'alimentation, pas de données)
- Connectez-vous en SSH à votre Pwnagotchi (avec une application comme Termux)
sudo nano /boot/config.txt
- Localisez la section
[all]
- Commentez
dtoverlay=disable-wifi (ajoutez un # au début de la ligne)
- Décommentez
dtoverlay=dwc2 (supprimez le # au début de la ligne)
- Éteignez le Pwnagotchi
- Connectez-vous à votre ordinateur via un câble USB (port de données, pas d'alimentation)
Mon 'gotchi désauthentifie même lorsque le plugin "enable_deauth" est désactivé
Cela se produit généralement avec les nouvelles sessions ; le 'gotchi semble simplement "oublier" l'état d'activation/désactivation lorsque vous l'éteignez. Solution simple :
- Web UI > Plugins
- Activez puis désactivez "enable_deauth". Cela désactivera immédiatement les désauthentifications, et l'interrupteur du plugin fonctionnera désormais efficacement (au moins pour la session en cours)
Mon 'gotchi fait des associations même lorsque le plugin "enable_assoc" est désactivé
Cela se produit généralement avec les nouvelles sessions ; le 'gotchi semble simplement "oublier" l'état d'activation/désactivation lorsque vous l'éteignez. Solution simple :
- Web UI > Plugins
- Activez puis désactivez "enable_assoc". Cela désactivera immédiatement les associations, et l'interrupteur du plugin fonctionnera désormais efficacement (au moins pour la session en cours)
J'ai la variante tricolore de l'écran Waveshare, et elle est nulle. Que faire ?
- Avant tout — je vous l'avais dit
- Connectez le Pwnagotchi (port de données, pas d'alimentation)
- Web UI > Plugins > webcfg
- Cherchez
ui.fps, et changez la valeur à 1 ou 2
- Faites défiler vers le haut, cliquez sur "Save and Restart". L'écran devrait maintenant fonctionner relativement beaucoup mieux
- Connectez le Pwnagotchi (port de données, pas d'alimentation)
- Web UI > Plugins > webcfg
- Cherchez
ui.invert, et changez la valeur à True
- Faites défiler vers le haut, cliquez sur "Save and Restart"
Les éléments de memtemp-plus sont coupés
- Soit modifiez les valeurs suivantes dans le plugin tweak_view, soit ajoutez-les dans
/etc/pwnagotchi/tweak_view.json :
"VSS.memtemp_header.xy": "145,82",
"VSS.memtemp_data.xy": "145,95",
"VSS.Lv.xy": "151,72"