Anti-Surveillance QR Payload Jammer
A weaponized Flask + HTML payload system to confuse, overwhelm, and disrupt using links, qr codes or nfc tags.
git clone https://github.com/ekomsSavior/ghostmode.git
cd ghostmode
sudo apt update && sudo apt install -y python3 python3-pip unzip
pip3 install flask requests python-whois qrcode --break-system-packages
wget https://bin.equinox.io/c/bNyj1mQVY4c/ngrok-v3-stable-linux-amd64.tgz
tar -xvzf ngrok-v3-stable-linux-amd64.tgz
sudo mv ngrok /usr/local/bin/
ngrok config add-authtoken YOUR_AUTHTOKEN_HERE
Launch GhostMode like this:
cd ghostmode
python3 ghost_cli.py
GhostMode will:
ghost_server.py)is.gdghost_qr/All payloads are stored in ghost_payloads/:
| Filename | Description |
|---|---|
noise_bomb.html |
Visual and auditory overload. Disrupts attention and device focus. |
sensor_scrambler.html |
Uses ek0ms or user-supplied art to visually confuse. |
identity_mask.html |
Canvas fingerprint obfuscation and identity spoofing. |
identity_reveal.html |
Baits scanners with transparent metadata logging. |
intent_storm.html |
Fires off deep app-linking Android intents to trigger security prompts or app opens. |
signal_jammer.html |
High-aggression browser disruptor — locks tabs, spams connections, and overloads the UI. |
ghost_flash.html |
Blinking, flashing canvas to overload visual sensors. |
chained_payload.html |
Combines multiple payloads into a single chained attack. |
sensor_scrambler.htmlIf you use the sensor scrambler, you can customize the artwork shown in the payload.
your_art.png inside the ghost_payloads/ folder.Your image must be:
Named exactly: your_art.png
500x500 pxThis image will be embedded in the page.
To add your own HTML payload:
ghost_payloads/ folder.ghost_cli.py.GhostMode logs all browser interaction data to:
logs/ghost_events.log
If a payload like identity_reveal.html is scanned and activated, any fingerprinting or metadata it collects will show up in that log.
You can rotate payload QR codes on a timer using:
python3 ghost_qr_rotator.py
This cycles through payloads at a set interval — useful for public installations or protest droppoints.
Only use on devices and networks you have permission to test on.
// click a file to view source