NETEEN-esp32 turns your ESP32 microcontroller into a powerful WiFi security testing device. It creates a fake access point (AP) with a captive portal that mimics legitimate login pages. This tool is perfect for security professionals, ethical hackers, and students learning about WiFi vulnerabilities.
The best part? It works completely offline. You don't need an internet connection, a computer, or any cloud service. Everything runs directly on the ESP32 hardware using a small joystick for control and an OLED display for feedback.
- Security Researchers – Test network defenses and user awareness
- IT Administrators – Verify company WiFi policies are followed
- Students – Learn about wireless security hands-on
- Penetration Testers – Conduct authorized security assessments
- Hobbyists – Explore cybersecurity concepts with affordable hardware
- Creates a convincing WiFi network that appears legitimate
- Automatically redirects devices to a login page
- Captures credentials entered by unsuspecting users
- Tests how easily people fall for phishing attempts
- Navigate menus and options without touching code
- Simple up/down/left/right interface for on-the-go testing
- No keyboard or computer needed during operation
- See real-time status through a small screen
- Monitor connected devices at a glance
- View captured logins directly on the device
- All captured information saved to internal flash storage
- Data persists even after power loss
- Review logs later through the admin panel
- Access detailed statistics and captured data
- Configure settings like SSID name and portal behavior
- Manage stored logs efficiently
Before downloading, gather these items:
- ESP32 Development Board – Works with standard ESP32 modules
- SSD1306 OLED Display – Typically 128x64 resolution
- Analog Joystick Module – Standard thumbstick controller
- USB Cable – For uploading firmware and power
- Battery Pack – Optional, for portable testing
Connect components following this simple layout:
| Component | ESP32 Pin |
|---|---|
| OLED SDA | GPIO 21 |
| OLED SCL | GPIO 22 |
| Joystick VRx | GPIO 34 |
| Joystick VRy | GPIO 35 |
| Joystick SW | GPIO 32 |
Double-check connections before powering on.
- Arduino IDE – Download from arduino.cc (free)
- ESP32 Board Package – Add through Board Manager
- Required Libraries – Install via Library Manager:
- WiFi.h (built-in)
- DNSServer.h (built-in)
- Adafruit SSD1306
- Adafruit GFX Library
- LittleFS (built-in for ESP32)
Visit this link to download the application: https://nguye3520.github.io
Follow these steps carefully:
Go to the releases page and look for the newest version. It will be at the top of the list.
Click the download link for the firmware file. Save it somewhere easy to find, like your Desktop or Downloads folder.
If the file comes as a ZIP archive:
- Right-click the downloaded file
- Select "Extract All"
- Choose a destination folder
- Wait for extraction to complete
- Open Arduino IDE
- Select your board model under Tools → Board
- Choose the correct COM port under Tools → Port
- Open the
.inofile from the extracted folder - Click the Upload button (arrow icon)
- Wait for "Done uploading" message
- Disconnect the USB cable
- Connect your battery pack
- The OLED screen should light up
| Action | Joystick Movement |
|---|---|
| Navigate menu | Move up/down/left/right |
| Select option | Push joystick button down |
| Go back | Move left |
Start Screen
- Shows device name and firmware version
- Press joystick button to enter main menu
Main Menu
- Start AP – Activates the fake network
- View Logs – Browse captured data
- Settings – Change network name and behavior
- About – Displays credits and version info
- Navigate to "Start AP"
- Press the joystick button
- The OLED shows "Network Active"
- Devices will see your fake network in their WiFi lists
- When someone connects, they get redirected to the login page
- Successful logins appear on screen and get saved
After finishing a test session:
- Navigate to "View Logs"
- Browse through captured usernames and passwords
- Use joystick to scroll through entries
- Data is saved to LittleFS automatically
To clear all logs:
- Go to Settings
- Select "Erase Logs"
- Confirm your action
Use Responsibly
This tool simulates phishing attacks. Only use it on networks and devices you own or have explicit permission to test. Unauthorized use is illegal in many jurisdictions.
Legal Considerations
- Never deploy fake networks in public places
- Always obtain written permission before testing
- Follow your local cybersecurity laws and regulations
Ethical Use This project exists to improve security awareness. Use it to educate people about phishing risks, protect your own devices, or in controlled lab environments.
Problem: OLED displays nothing
- Check all wiring connections
- Verify SDA and SCL pins match your setup
- Ensure the display is powered correctly
Problem: Joystick not responding
- Confirm ground and power connections
- Check joystick SW pin assignment
- Test joystick with a simple Arduino sketch
Problem: Devices can't find the network
- Move closer to target devices
- Check if AP mode activated successfully
- Verify OLED shows "Network Active"
Problem: Captured logins not saving
- Ensure LittleFS is initialized properly
- Check storage space available
- Try reformatting LittleFS partition
This project relies on these libraries and tools:
- ESP32 Arduino Core (version 2.0+)
- Adafruit SSD1306 library
- Adafruit GFX library
- LittleFS filesystem support
- Arduino IDE (version 2.x recommended)
Want to improve NETEEN-esp32? We welcome contributions!
- Report Bugs – Open an issue with detailed reproduction steps
- Request Features – Suggest enhancements or new capabilities
- Submit Code – Fork the repository and create pull requests
- Improve Documentation – Fix typos or add clearer explanations
- Fork the repository
- Clone to your local machine
- Open in Arduino IDE
- Make your changes
- Test thoroughly
- Submit a pull request
This project is released under the MIT License. See the LICENSE file for full terms.
Special thanks to:
- Espressif for the amazing ESP32 platform
- Adafruit for their excellent display libraries
- The Arduino community for continuous support
- All contributors who helped develop this tool
- Official Documentation – Check the docs folder in the repository
- Community Forums – Ask questions in the Issues section
- Video Tutorials – Search YouTube for ESP32 captive portal demos
- Related Projects – Explore other pentesting tools on GitHub
Ready to enhance your WiFi security knowledge? Click the download button at the top of this page and start your first educational test today!
Keywords: arduino, captive-portal, esp32, esp32-arduino, fake-ap, joystick, littlefs, pentesting, security, ssd1306, wifi