Open-Source Counter-Surveillance for Android
"Watch the Watchers" - Know when surveillance equipment is nearby so you can protect your privacy, document police presence, or simply understand the surveillance landscape around you.
Flock-You is a privacy-first surveillance detection application that empowers individuals to identify surveillance devices, trackers, IMSI catchers, and other monitoring equipment in their environment. All processing happens entirely on-device with zero cloud connectivity.
| Device | Detection Method | Stalking Analysis |
|---|---|---|
| Apple AirTag | Manufacturer data + Find My UUID | Multi-location tracking, possession signal |
| Tile (Pro/Mate/Slim/Sticker) | Manufacturer ID 0x00C7 | Duration analysis, RSSI variance |
| Samsung SmartTag | Service UUID 0xFD5A | Following pattern detection |
| Generic Trackers | Heuristic patterns | Behavioral correlation |
Anti-Stalking Features:
| Device Type | Detection Method |
|---|---|
| Flock Safety ALPR | SSID pattern (?i)^flock[_-]?.* |
| License Plate Readers | MAC OUI + SSID patterns |
| Surveillance Vans | Mobile hotspot patterns |
| Hidden Cameras | Manufacturer data analysis |
| Rogue Access Points | Evil twin detection, karma attack detection |
| WiFi Pineapple | Hak5 signature patterns |
| Drones | DJI, Parrot, Skydio WiFi signatures |
Advanced Detection:
| Indicator | Severity | Description |
|---|---|---|
| Encryption Downgrade | CRITICAL | Forced from 4G/5G to 2G |
| Unknown Cell Tower | MEDIUM-HIGH | Cell not in trusted database |
| Stationary Cell Change | MEDIUM | Tower change without movement |
| Rapid Switching | MEDIUM | Abnormally fast tower changes |
| Signal Anomaly | LOW-MEDIUM | Unexpected strength changes |
Cellular Monitoring:
| Threat | Detection Method |
|---|---|
| Spoofing | Signal uniformity, geometry validation, clock analysis |
| Jamming | Satellite count drop, CN0 degradation, AGC anomalies |
| Multipath | Urban canyon detection, variance analysis |
Satellite Analysis:
| Beacon Type | Frequency Range | Use Case |
|---|---|---|
| Cross-Device Tracking | 18-20 kHz | SilverPush, Alphonso |
| Advertising Beacons | 17.5-19 kHz | TV ad synchronization |
| Retail Beacons | 19-22 kHz | In-store location tracking |
Audio Analysis:
| Provider | Technology | Detection |
|---|---|---|
| T-Mobile Starlink | 3GPP Release 17 | Network identifier + timing |
| Skylo (Pixel SOS) | NB-IoT NTN | Service UUID + parameters |
| Unknown NTN | Various | Timing anomaly, unexpected handoff |
Satellite Heuristics:
| Detection | Method |
|---|---|
| RF Jammers | Wideband interference patterns |
| Drones/UAV | 2.4/5.8 GHz control signatures |
| Hidden Transmitters | Unexpected RF energy detection |
| Spectrum Anomalies | Baseline deviation analysis |
┌─────────────────────────────────────────────────────────────┐
│ YOUR DEVICE │
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ BLE │ │ WiFi │ │ Cellular │ │ GNSS │ │
│ │ Scanner │ │ Scanner │ │ Monitor │ │ Monitor │ │
│ └────┬─────┘ └────┬─────┘ └────┬─────┘ └────┬─────┘ │
│ │ │ │ │ │
│ └─────────────┴──────┬──────┴─────────────┘ │
│ │ │
│ ┌────────▼────────┐ │
│ │ Detection │ │
│ │ Processing │ │
│ └────────┬────────┘ │
│ │ │
│ ┌────────▼────────┐ │
│ │ Threat Scoring │ │
│ │ Engine │ │
│ └────────┬────────┘ │
│ │ │
│ ┌────────▼────────┐ │
│ │ SQLCipher │ │
│ │ Encrypted DB │ │
│ └────────┬────────┘ │
│ │ │
│ ┌────────▼────────┐ │
│ │ User UI │ │
│ └─────────────────┘ │
└─────────────────────────────────────────────────────────────┘
║
══════╬══════ NO CONNECTION
║
┌─────────────▼─────────────┐
│ Cloud Services │ ← BLOCKED
└───────────────────────────┘
| Feature | Implementation |
|---|---|
| No Cloud Processing | All algorithms run locally |
| No Telemetry | Zero analytics or crash reporting |
| No Network Calls | App functions fully offline |
| Encrypted Storage | SQLCipher AES-256-GCM |
| Key Protection | Android Keystore (hardware-backed when available) |
| Open Source | Full code transparency |
| Setting | Description |
|---|---|
| 1 Day | Minimal history (recommended for high-risk users) |
| 3 Days | Default setting |
| 7 Days | Extended analysis period |
| 30 Days | Full historical tracking |
| Ephemeral | RAM only, cleared on restart |
Flock-You includes Flock Bridge, a Flipper Zero FAP (Flipper Application Package) that extends detection capabilities with dedicated hardware.
Passive Scanners:
Active Probes (Authorized Testing Only):
WIPS Engine:
| Component | Purpose | Required |
|---|---|---|
| Flipper Zero | Base platform | Yes |
| ESP32 Module | WiFi scanning | Optional |
| CC1101 | Extended Sub-GHz | Optional |
| nRF24L01+ | 2.4 GHz sniffer | Optional |
| GINTBN Multi-Board | All-in-one expansion | Optional |
Flipper GPIO Header → ESP32 UART
Pin 13 (TX) ──────── RX (GPIO 16)
Pin 14 (RX) ──────── TX (GPIO 17)
GND ────────────────── GND
3.3V ───────────────── 3.3V
See Flock Bridge README for complete documentation.
# Clone the repository
git clone https://github.com/FlockYou/Flock-You-Android.git
cd Flock-You-Android
# Build debug APK
./gradlew assembleSideloadDebug
# Install to connected device
./gradlew installSideloadDebug
Flock-You supports three build flavors for different deployment scenarios:
| Variant | Use Case | Permissions |
|---|---|---|
| Sideload | Standard user installation | Runtime permission requests |
| System | Privileged system app | Pre-granted via whitelist |
| OEM | Platform-signed embedded app | Maximum privileges |
# Sideload (standard)
./gradlew assembleSideloadRelease
# System (priv-app)
./gradlew assembleSystemRelease
# OEM (platform-signed)
./gradlew assembleOemRelease
| Capability | Sideload | System | OEM |
|---|---|---|---|
| WiFi scan throttling | Subject to OS limits | Can disable | Can disable |
| Continuous BLE scan | Duty-cycled | Continuous | Continuous |
| Real MAC addresses | Randomized | Available | Available |
| IMEI/IMSI access | No | No | Yes |
| Background persistence | Limited | Enhanced | Maximum |
Flock-You is designed for OEM white-labeling and custom ROM integration.
# Automated integration
./system/integrate-grapheneos.sh ~/grapheneos
# Or with pre-signed APK
./system/integrate-grapheneos.sh ~/grapheneos presigned
mkdir -p ~/grapheneos/vendor/flockyou
cp system/Android.bp ~/grapheneos/vendor/flockyou/
cp system/privapp-permissions-flockyou.xml ~/grapheneos/vendor/flockyou/
device.mk:$(call inherit-product, vendor/flockyou/flockyou.mk)
source build/envsetup.sh
lunch <target>
m
| Resource | Purpose |
|---|---|
app_name | Application display name |
ic_launcher | App icon |
| Theme colors | Brand colors |
| Default settings | Privacy/retention defaults |
See OEM_INTEGRATION.md for complete documentation including security considerations.
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
# Unit tests
./gradlew testDebugUnitTest
# Instrumentation tests
./gradlew connectedAndroidTest
# Lint
./gradlew lint
type(scope): description
feat(scan): add support for new device type
fix(ble): correct AirTag detection false positives
docs: update detection documentation
To detect if you're being surveilled, this app must collect data about your environment.
What's Stored Locally:
Forensic Risk: If your device is seized, this data reveals your location history and movement patterns. Consider:
| If you trust... | Use this mode |
|---|---|
| Only yourself (build from source) | OEM with platform signing |
| Project maintainers | System with pre-signed APK |
| Maximum caution | Sideload only |
# Check APK signature
apksigner verify --print-certs app-release.apk
# Verify GitHub attestation
gh attestation verify app-release.apk --owner FlockYou
| Organization | Contact | Services |
|---|---|---|
| National DV Hotline | 1-800-799-7233 | Confidential support |
| NNEDV Tech Safety | techsafety.org | Technology safety resources |
| EFF | eff.org | Digital privacy rights |
| ACLU | aclu.org | Civil liberties support |
| Tool | URL | Description |
|---|---|---|
| DeFlock | deflock.me | ALPR camera locations |
| CellMapper | cellmapper.net | Cell tower mapping |
| OpenCellID | opencellid.org | Cell tower database |
| WiGLE | wigle.net | Wireless network mapping |
| Document | Description |
|---|---|
| Detection System | Complete detection documentation |
| BLE Trackers | AirTag, Tile, SmartTag detection |
| IMSI Catchers | StingRay/Hailstorm detection |
| GNSS Security | GPS spoofing/jamming detection |
| Threat Scoring | Scoring methodology |
| Satellite Monitoring | NTN/satellite detection |
| Flock Bridge | Flipper Zero integration |
| OEM Integration | ROM builder guide |
Flock-You uses an enterprise-grade threat scoring formula:
threat_score = base_likelihood × impact_factor × confidence
| Severity | Score | User Action |
|---|---|---|
| CRITICAL | 90-100 | Immediate action required |
| HIGH | 70-89 | Investigate immediately |
| MEDIUM | 50-69 | Monitor closely |
| LOW | 30-49 | Log and watch |
| INFO | 0-29 | Informational only |
Confidence Adjustments:
This software is intended for authorized security research, personal privacy protection, and educational purposes.
MIT License - See LICENSE for details.
Flock-You: Watch the Watchers
Privacy-first surveillance detection for Android
Report Bug
·
Request Feature
·
Contribute
Kotlin
90.8%
C
5.8%
Python
1.6%
C++
1.1%
Open-Source Counter-Surveillance for Android
"Watch the Watchers" - Know when surveillance equipment is nearby so you can protect your privacy, document police presence, or simply understand the surveillance landscape around you.
Flock-You is a privacy-first surveillance detection application that empowers individuals to identify surveillance devices, trackers, IMSI catchers, and other monitoring equipment in their environment. All processing happens entirely on-device with zero cloud connectivity.
| Device | Detection Method | Stalking Analysis |
|---|---|---|
| Apple AirTag | Manufacturer data + Find My UUID | Multi-location tracking, possession signal |
| Tile (Pro/Mate/Slim/Sticker) | Manufacturer ID 0x00C7 | Duration analysis, RSSI variance |
| Samsung SmartTag | Service UUID 0xFD5A | Following pattern detection |
| Generic Trackers | Heuristic patterns | Behavioral correlation |
Anti-Stalking Features:
| Device Type | Detection Method |
|---|---|
| Flock Safety ALPR | SSID pattern (?i)^flock[_-]?.* |
| License Plate Readers | MAC OUI + SSID patterns |
| Surveillance Vans | Mobile hotspot patterns |
| Hidden Cameras | Manufacturer data analysis |
| Rogue Access Points | Evil twin detection, karma attack detection |
| WiFi Pineapple | Hak5 signature patterns |
| Drones | DJI, Parrot, Skydio WiFi signatures |
Advanced Detection:
| Indicator | Severity | Description |
|---|---|---|
| Encryption Downgrade | CRITICAL | Forced from 4G/5G to 2G |
| Unknown Cell Tower | MEDIUM-HIGH | Cell not in trusted database |
| Stationary Cell Change | MEDIUM | Tower change without movement |
| Rapid Switching | MEDIUM | Abnormally fast tower changes |
| Signal Anomaly | LOW-MEDIUM | Unexpected strength changes |
Cellular Monitoring:
| Threat | Detection Method |
|---|---|
| Spoofing | Signal uniformity, geometry validation, clock analysis |
| Jamming | Satellite count drop, CN0 degradation, AGC anomalies |
| Multipath | Urban canyon detection, variance analysis |
Satellite Analysis:
| Beacon Type | Frequency Range | Use Case |
|---|---|---|
| Cross-Device Tracking | 18-20 kHz | SilverPush, Alphonso |
| Advertising Beacons | 17.5-19 kHz | TV ad synchronization |
| Retail Beacons | 19-22 kHz | In-store location tracking |
Audio Analysis:
| Provider | Technology | Detection |
|---|---|---|
| T-Mobile Starlink | 3GPP Release 17 | Network identifier + timing |
| Skylo (Pixel SOS) | NB-IoT NTN | Service UUID + parameters |
| Unknown NTN | Various | Timing anomaly, unexpected handoff |
Satellite Heuristics:
| Detection | Method |
|---|---|
| RF Jammers | Wideband interference patterns |
| Drones/UAV | 2.4/5.8 GHz control signatures |
| Hidden Transmitters | Unexpected RF energy detection |
| Spectrum Anomalies | Baseline deviation analysis |
┌─────────────────────────────────────────────────────────────┐
│ YOUR DEVICE │
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ BLE │ │ WiFi │ │ Cellular │ │ GNSS │ │
│ │ Scanner │ │ Scanner │ │ Monitor │ │ Monitor │ │
│ └────┬─────┘ └────┬─────┘ └────┬─────┘ └────┬─────┘ │
│ │ │ │ │ │
│ └─────────────┴──────┬──────┴─────────────┘ │
│ │ │
│ ┌────────▼────────┐ │
│ │ Detection │ │
│ │ Processing │ │
│ └────────┬────────┘ │
│ │ │
│ ┌────────▼────────┐ │
│ │ Threat Scoring │ │
│ │ Engine │ │
│ └────────┬────────┘ │
│ │ │
│ ┌────────▼────────┐ │
│ │ SQLCipher │ │
│ │ Encrypted DB │ │
│ └────────┬────────┘ │
│ │ │
│ ┌────────▼────────┐ │
│ │ User UI │ │
│ └─────────────────┘ │
└─────────────────────────────────────────────────────────────┘
║
══════╬══════ NO CONNECTION
║
┌─────────────▼─────────────┐
│ Cloud Services │ ← BLOCKED
└───────────────────────────┘
| Feature | Implementation |
|---|---|
| No Cloud Processing | All algorithms run locally |
| No Telemetry | Zero analytics or crash reporting |
| No Network Calls | App functions fully offline |
| Encrypted Storage | SQLCipher AES-256-GCM |
| Key Protection | Android Keystore (hardware-backed when available) |
| Open Source | Full code transparency |
| Setting | Description |
|---|---|
| 1 Day | Minimal history (recommended for high-risk users) |
| 3 Days | Default setting |
| 7 Days | Extended analysis period |
| 30 Days | Full historical tracking |
| Ephemeral | RAM only, cleared on restart |
Flock-You includes Flock Bridge, a Flipper Zero FAP (Flipper Application Package) that extends detection capabilities with dedicated hardware.
Passive Scanners:
Active Probes (Authorized Testing Only):
WIPS Engine:
| Component | Purpose | Required |
|---|---|---|
| Flipper Zero | Base platform | Yes |
| ESP32 Module | WiFi scanning | Optional |
| CC1101 | Extended Sub-GHz | Optional |
| nRF24L01+ | 2.4 GHz sniffer | Optional |
| GINTBN Multi-Board | All-in-one expansion | Optional |
Flipper GPIO Header → ESP32 UART
Pin 13 (TX) ──────── RX (GPIO 16)
Pin 14 (RX) ──────── TX (GPIO 17)
GND ────────────────── GND
3.3V ───────────────── 3.3V
See Flock Bridge README for complete documentation.
# Clone the repository
git clone https://github.com/FlockYou/Flock-You-Android.git
cd Flock-You-Android
# Build debug APK
./gradlew assembleSideloadDebug
# Install to connected device
./gradlew installSideloadDebug
Flock-You supports three build flavors for different deployment scenarios:
| Variant | Use Case | Permissions |
|---|---|---|
| Sideload | Standard user installation | Runtime permission requests |
| System | Privileged system app | Pre-granted via whitelist |
| OEM | Platform-signed embedded app | Maximum privileges |
# Sideload (standard)
./gradlew assembleSideloadRelease
# System (priv-app)
./gradlew assembleSystemRelease
# OEM (platform-signed)
./gradlew assembleOemRelease
| Capability | Sideload | System | OEM |
|---|---|---|---|
| WiFi scan throttling | Subject to OS limits | Can disable | Can disable |
| Continuous BLE scan | Duty-cycled | Continuous | Continuous |
| Real MAC addresses | Randomized | Available | Available |
| IMEI/IMSI access | No | No | Yes |
| Background persistence | Limited | Enhanced | Maximum |
Flock-You is designed for OEM white-labeling and custom ROM integration.
# Automated integration
./system/integrate-grapheneos.sh ~/grapheneos
# Or with pre-signed APK
./system/integrate-grapheneos.sh ~/grapheneos presigned
mkdir -p ~/grapheneos/vendor/flockyou
cp system/Android.bp ~/grapheneos/vendor/flockyou/
cp system/privapp-permissions-flockyou.xml ~/grapheneos/vendor/flockyou/
device.mk:$(call inherit-product, vendor/flockyou/flockyou.mk)
source build/envsetup.sh
lunch <target>
m
| Resource | Purpose |
|---|---|
app_name | Application display name |
ic_launcher | App icon |
| Theme colors | Brand colors |
| Default settings | Privacy/retention defaults |
See OEM_INTEGRATION.md for complete documentation including security considerations.
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
# Unit tests
./gradlew testDebugUnitTest
# Instrumentation tests
./gradlew connectedAndroidTest
# Lint
./gradlew lint
type(scope): description
feat(scan): add support for new device type
fix(ble): correct AirTag detection false positives
docs: update detection documentation
To detect if you're being surveilled, this app must collect data about your environment.
What's Stored Locally:
Forensic Risk: If your device is seized, this data reveals your location history and movement patterns. Consider:
| If you trust... | Use this mode |
|---|---|
| Only yourself (build from source) | OEM with platform signing |
| Project maintainers | System with pre-signed APK |
| Maximum caution | Sideload only |
# Check APK signature
apksigner verify --print-certs app-release.apk
# Verify GitHub attestation
gh attestation verify app-release.apk --owner FlockYou
| Organization | Contact | Services |
|---|---|---|
| National DV Hotline | 1-800-799-7233 | Confidential support |
| NNEDV Tech Safety | techsafety.org | Technology safety resources |
| EFF | eff.org | Digital privacy rights |
| ACLU | aclu.org | Civil liberties support |
| Tool | URL | Description |
|---|---|---|
| DeFlock | deflock.me | ALPR camera locations |
| CellMapper | cellmapper.net | Cell tower mapping |
| OpenCellID | opencellid.org | Cell tower database |
| WiGLE | wigle.net | Wireless network mapping |
| Document | Description |
|---|---|
| Detection System | Complete detection documentation |
| BLE Trackers | AirTag, Tile, SmartTag detection |
| IMSI Catchers | StingRay/Hailstorm detection |
| GNSS Security | GPS spoofing/jamming detection |
| Threat Scoring | Scoring methodology |
| Satellite Monitoring | NTN/satellite detection |
| Flock Bridge | Flipper Zero integration |
| OEM Integration | ROM builder guide |
Flock-You uses an enterprise-grade threat scoring formula:
threat_score = base_likelihood × impact_factor × confidence
| Severity | Score | User Action |
|---|---|---|
| CRITICAL | 90-100 | Immediate action required |
| HIGH | 70-89 | Investigate immediately |
| MEDIUM | 50-69 | Monitor closely |
| LOW | 30-49 | Log and watch |
| INFO | 0-29 | Informational only |
Confidence Adjustments:
This software is intended for authorized security research, personal privacy protection, and educational purposes.
MIT License - See LICENSE for details.
Flock-You: Watch the Watchers
Privacy-first surveillance detection for Android
Report Bug
·
Request Feature
·
Contribute
Kotlin
90.8%
C
5.8%
Python
1.6%
C++
1.1%