Releases: AlienMajik/SnoopR
Introducing SnoopR live: Real-Time Device Detection and Mapping! 🚀
I'm excited to announce the launch of SnoopR live, the latest version of my device detection and mapping tool that now provides live updates while running alongside Kismet! 🎉
🔍 Key Features:
Real-Time Monitoring: Visualize devices, snoopers, and alerts on an interactive map with live updates.
Auto-Refreshing Map: The map auto-refreshes to display the latest data without manual intervention.
Device Movement Detection: Detect potential snoopers based on device movement thresholds.
Drone Detection: Identify known drones by SSID or MAC address prefixes.
Customizable Update Intervals: Adjust how frequently the data refreshes to suit your needs.
🌐 How It Works:
SnoopR live processes data from the Kismet SQLite database in real-time and updates an interactive Folium map that you can view in your web browser. This setup enhances situational awareness by providing a visual representation of the devices detected in your vicinity.
Usage Instructions:
-
Install all Requirements in Virtual Environment:
python3 -m venv env source env/bin/activate pip install -r requirements.txt
-
Open 3 split terminals each running a virtual environment by typing in each one :
python3 -m venv env source env/bin/activate
-
Run Kismet in one terminal:
sudo kismet
Ensure that Kismet is running and capturing data by enabling your data sources.
-
Run SnoopR.py in second terminal:
python3 SnoopR.py --db-path /path/to/your.kismet --output-map /path/to/map/SnoopR_Map.html --interval 30
Replace /path/to/your.kismet with the path to your Kismet database file.
Replace /path/to/map/SnoopR_Map.html with the desired output path for the map.
The --interval argument specifies how often (in seconds) the script updates the map. Adjust as needed.
- Start a Simple Web Server to Serve the Map in the third terminal:
In the directory containing SnoopR_Map.html, start a web server:
python3 -m http.server 8000
This will serve files in the directory over HTTP on port 8000.
- View the Map:
Open your web browser and navigate to:
http://localhost:8000/SnoopR_Map.html
The map will auto-refresh every 30 seconds (or the interval you set).
You'll see live updates as Kismet collects new data.
When your done using SnoopR live exit out of virtual environments with:
deactivate
Final Notes:
Be mindful of system resources when running the script continuously.
Adjust the update interval to balance between real-time updates and system performance.
Monitor the snoopr.log file for any errors or warnings during execution.
If you have any problems installing and running SnoopR live I have made a Youtube video explaining how to run it: https://youtu.be/tO6NKF-lCBI?si=o2r4eVXy_MLVttn4
Updated Drone SSID & OUI
This version includes updates to:
- Exclude system-level alerts with MAC '00:00:00:00:00:00'.
- Correctly handle Folium icon colors to prevent warnings.
- Correctly extract alerts and parse location data from the JSON field.
- Adjust the map center to the first valid device or alert location.
- Map alerts even if they have no latitude and longitude, placing them next to the first mapped device seen before the alert's timestamp.
- Extract and display the alert type in the map popups.
- Improve device data extraction and error handling.
- Simplify the visualization logic.
SnoopR v2.0 – Major Update with Enhanced Mapping and Alert Handling 🚀
This release introduces significant updates and improvements to the SnoopR script, enhancing its capabilities for device tracking, snooper detection, and visualization. The new features and fixes make the script more robust, user-friendly, and effective in processing and mapping device data from Kismet databases.
What’s New
ADS-B Integration ✈️
Now detects and maps airplanes and other ADS-B devices for enhanced airspace awareness.
TPMS Device Tracking 🚗
Tire Pressure Monitoring Systems (TPMS) are now detected and tracked on the map, with dedicated markers.
Snooper Detection Improvements 👀
Enhanced movement tracking logic to accurately detect snoopers based on their movement threshold.
New option to specify a custom movement threshold (default: 0.05 miles).
Alert Parsing and Visualization ⚠️
Fixed alert extraction from Kismet databases.
Alerts now correctly display location, message, and timestamp on the map with exclamation-triangle markers.
Changes & Fixes
JSON Parsing Fixes:
Improved handling of Kismet JSON data to prevent errors during parsing.
Fixed NoneType coordinate issues to ensure all valid alerts and devices are mapped.
Drone Detection Enhancements:
Refined the drone detection algorithm by expanding SSID and MAC prefix lists.
Drones are now highlighted with red markers and "Drone Detected!" labels.
Map Centering Logic Update 🗺️
The map now centers on the first valid GPS location from detected devices, snoopers, or alerts.
Defaults to Antarctica (Easter Egg coordinates) if no valid data is found.