| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Experimental Project
DataServer is a side project built for the M5 Cardputer (ESP32). It acts as a USB device that connects to a Windows machine, gathers system information, and hosts that data on a local web server.
This project was created out of curiosity and experimentation with USB HID injection, serial communication, and embedded web servers.
DataServer works by:
During the keyboard layout and COM port detection phase, DataServer intentionally sends two different command variants:
Because only one layout can be correct, at least one of these commands will be interpreted incorrectly, resulting in gibberish input on the target system.
The incorrectly interpreted command may:
This behavior has been tested with:
In these cases, the incorrect command does not result in harmful or destructive actions.
However:
There is NO guarantee of safety on other keyboard layouts or system configurations.
To communicate over serial, the device first needs to identify its COM port on the host machine.
On startup, the ESP32:
If nothing is received:
During this time:
PowerShell:
After reconnect:
On reboot:
Because keystroke injection depends on the keyboard layout, the device injects a command that returns the layout in plain text.
The device sends:
The working command responds with:
This determines how future commands are injected.
After identifying the layout:
The device reads WiFi credentials from:
SD:\DataServer\creds.txt
Connects to the local LAN
Starts a web server
When the user presses "Refresh" on the web interface:
The ESP32:
The Windows machine:
The ESP32:
If you press G0 within 5 seconds after keyboard layout detection:
The device:
SD:\ └── DataServer\ ├── creds.txt # WiFi credentials └── index.html # Web interface
This project uses USB HID injection (Rubber Ducky behavior).
This project explores:
No license yet — use at your own risk.
| Back | FazBrowse Home | New Git URL |