visitor@hunterweygandt:~$ cat lilygo-pentest-device.md|

LILYGO Wireless Pentest Device

Hardware · 2026

← Back to Documentation

Note: Everything here was done on my own equipment in a controlled lab, with no other people or networks involved. These techniques can cause real harm and are illegal to use against systems you don't own or have written permission to test. I built this to understand the attacks well enough to defend against them, nothing more.

Introduction

I wanted to get my hands on the physical and wireless side of security, not just the stuff that lives inside a VM. So I took a LILYGO T-Embedded CC1101+, a little ESP32-based gadget that fits in your palm, and flashed Bruce firmware onto it to turn it into a compact wireless pentesting tool. From there I worked through the different attack types it can do, all in my own lab, mostly to understand what these attacks actually look like and why the defenses against them matter.

What I Did

How It Works

WiFi Recon

Uses the ESP32's promiscuous mode to capture probe requests and identify nearby devices and SSIDs. It's a good demonstration of how much a network gives away passively, and why wireless hygiene matters.

Deauth / Beacon Flood

Sends 802.11 management frames to demonstrate wireless denial-of-service concepts. I only ran this against my own test network. The takeaway here is how trivially unprotected management frames can be abused, and why protections like 802.11w exist.

HID Injection (BadUSB)

The device can present itself as a USB keyboard and type out a scripted payload faster than any human could. It's a hands-on way to understand why endpoint USB hardening and not trusting random devices actually matters.

Bluetooth / BLE Scanning

Scans for BLE advertisements, identifies insecure pairing methods, and shows how much consumer IoT gear leaks over Bluetooth. Good for understanding IoT attack exposure.

RFID / NFC Reading

Energizes nearby RFID/NFC tags and reads the ID data they broadcast, identifying the tag type (like 125 kHz low-frequency tags) and any unencrypted credentials. It's a clear demonstration of how weak a lot of physical access control still is.

Examples

A few of the modules running in my lab.

The LILYGO device displaying its BadUSB keyboard interface next to a phone
The BadUSB module, set up to inject a scripted keyboard payload into a test machine I own.
The LILYGO device running WiFi beacon spam, with a laptop showing a list of fake joke SSIDs
Beacon spam broadcasting fake SSIDs to my own laptop, demonstrating how easily a network list can be flooded.
The LILYGO device running BLE spam, with a phone showing an AirPods pairing popup
BLE advertisement spam triggering a pairing popup on my own phone, showing how BLE proximity prompts can be abused.
The LILYGO device running an Evil Portal captive page on a test laptop I own
The Evil Portal captive page served to my own test laptop.
Close-up of the LILYGO device screen showing the Evil Portal module running
The device itself running the Evil Portal module.

Defensive Takeaways

The whole point of building this was the defensive side. Running each attack made the corresponding defense click in a way reading about it never did:

Skills Demonstrated

← Back to Documentation