This project is a Python-based GPS spoofing detection tool designed to analyze and detect anomalies in GPS data, which is a crucial step toward defending against malicious interference with Unmanned Aerial Systems (UAS). Initially built for dataset-based detection, this tool will evolve into a specialized weapon in the COUNTER-UAS (C-UAS) arsenal for real-time operational use.
GPS spoofing is a serious threat to drones and autonomous systems. This tool aims to detect, analyze, and respond to spoofing threats in real-time, ensuring safe UAS operations in critical zones.
- ✅ Dataset-based GPS spoofing detection
- 🔍 Anomaly detection using statistical and signal-based features
- 📊 Real-time data parsing (upgradable)
- 🧠 Machine learning-ready architecture for future upgrades
- 🛡️ Modular structure for easy integration into larger C-UAS frameworks
This tool serves as a special weapon module for C-UAS missions where detection of malicious GPS interference is vital. Example applications:
✈️ Drone fleet protection in defense zones- 🏭 Industrial area perimeter security
- 🛂 Border surveillance and no-fly zone enforcement
- 🛡️ VIP event protection and anti-surveillance
-
Detects inconsistencies in:
- Velocity and acceleration jumps
- Sudden location shifts
- Signal time/frequency anomalies (if present)
-
Logs suspicious patterns
-
Generates human-readable reports
| Phase | Feature | Description |
|---|---|---|
| ✅ 1 | Dataset-based detection | Core module using pre-recorded GPS data |
| 🔜 2 | Real-time GPS feed integration | Integrate with GNSS receivers (USB, NMEA, serial, etc.) |
| 🔜 3 | Machine learning engine | Use unsupervised models (e.g., Isolation Forest, Autoencoders) for anomaly detection |
| 🔜 4 | Signal integrity analysis | Use SDR (e.g., HackRF One) to analyze signal characteristics |
| 🔜 5 | Counter-response module | Alert and initiate countermeasures (e.g., drone landing, GPS fallback) |
| 🔜 6 | Integration with C-UAS radar + RF | Fuse GPS spoof detection with RF jamming and radar input |
| 🔜 7 | Hardware deployment | Deploy on Raspberry Pi or embedded UAS module for field use |
- Python 3.8+
- Pandas / NumPy
- Scikit-learn (for upgrade)
- Matplotlib / Seaborn (optional visualization)
- PySerial / pynmea2 (for live GPS feed upgrade)
- SDR tools (planned)
Use your own dataset or download open-source spoofing datasets like:
- Texas Spoofing Test Datasets (UT Austin)
- Custom drone flight path logs
- ✅ Live GPS stream from drones
- ✅ Mobile app/command center GUI
- 🔐 Integration with blockchain-based telemetry logging
- ☁️ Cloud-based alert system (Twilio/Telegram/Discord)
- 🎯 Integration into weaponized UAS defense stations
You can simulate spoofing by introducing:
- Sudden jumps in GPS coordinates
- High-speed movements beyond physical limits
- Inconsistent timestamps
The script will flag such anomalies and provide a classification report.
This project is licensed under the MIT License.
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.