Pwnagotchi: Wi-Fi Handshake Capture Tool on Raspberry Pi

1. Project Overview

Pwnagotchi cover

This project involves building a Pwnagotchi, a Wi-Fi handshake capture tool, on a Raspberry Pi Zero W with a Waveshare 2.13-inch e-Paper display. Pwnagotchi autonomously captures Wi-Fi handshakes for penetration testing, using machine learning to optimize its performance in a portable, Tamagotchi-like device.

2. Resources and References

The following resources were critical for setting up the Pwnagotchi:

Additional Notes: The official website and GitHub provided technical details, while the YouTube video offered practical setup visuals, making them complementary resources.

3. Steps Taken

The step-by-step process to build and deploy the Pwnagotchi is outlined below:

  1. Step 1: Hardware Assembly
    Description: Connected the Waveshare 2.13-inch e-Paper display to the Raspberry Pi Zero W using GPIO pins.
    Challenges: Ensured proper pin alignment to avoid damaging the display or Pi.
    Raspberry Pi Zero W with e-Paper display assembled
  2. Step 2: OS and Pwnagotchi Image Installation
    Description: Downloaded the Pwnagotchi image from the official website and flashed it onto a Class 10 MicroSD card using Raspberry Pi Imager. Configured settings in config.toml (whitelist home SSID, setup web ui) to enable automatic connectivity.
    Challenges: Verified image integrity and ensured correct configuration to enable SSH access.
    Flashing Pwnagotchi image onto MicroSD card config.toml config.toml settings
  3. Step 3: Initial Boot and Configuration
    Description: Inserted the MicroSD card, powered on the Raspberry Pi, and connected it to a laptop via a micro-USB cable. Navigated to the network adapter settings to locate the "RNDIS Gadget" adapter. Right-clicked to access properties, then configured the IPv4 settings to use a static IP address as outlined below. This setup enabled access to the Pwnagotchi web UI for further configuration. Challenges: Ensured the correct identification of the "RNDIS Gadget" adapter and verified the static IP configuration to establish a stable connection to the web UI.
    ethernet ipv4 settings
  4. Step 4: Testing and Validation
    Description: Rebooted the Pi and verified the e-Paper display showed the Pwnagotchi’s status (e.g., “SAD,” “HAPPY”). Tested handshake capture by placing the device near Wi-Fi networks and checked captured files via the web UI at [10.0.0.2]:8080.
    Challenges: Adjusted display settings to resolve refresh issues and ensured monitor mode was active for Wi-Fi scanning.
    url ui

4. Tips and Lessons Learned

Practical advice and insights gained from the project:

5. Conclusion

The Pwnagotchi was successfully assembled and tested, capturing Wi-Fi handshakes and displaying status on the e-Paper display and web interface. This project deepened my understanding of Wi-Fi security and Raspberry Pi-based tools. Future plans include integrating additional plugins and improving portability.

6. Additional Notes