Tools & Resources
This page catalogs the essential tools for counter-surveillance research: facial recognition testing, adversarial ML evaluation, tracker detection, infrastructure mapping, metadata hygiene, and voice/gait analysis. All tools listed are open-source or free-tier and intended for authorized defensive research.
Responsible Use
Complete Tool Catalog
DeepFace
Facial RecognitionMulti-model face verification and analysis framework. Supports VGG-Face, FaceNet, ArcFace, DeepID, and more. Essential for testing recognition accuracy and threshold calibration.
Fawkes
Image PrivacyImage cloaking tool from SAND Lab (U. Chicago). Adds minimal perturbations to photos that disrupt face recognition model training while remaining visually imperceptible.
LowKey
Image PrivacyResearch tool for adversarial perturbation against facial recognition. Targets commercial FR APIs. Useful for evaluating perturbation effectiveness against different backend models.
IBM ART
Adversarial MLComprehensive adversarial robustness testing framework. Supports 30+ attack methods, 10+ defenses, and multiple ML frameworks (PyTorch, TensorFlow, Keras, scikit-learn).
Foolbox
Adversarial MLClean adversarial attack library with consistent API. Supports decision-based, score-based, and gradient-based attacks. Good for quick benchmarking.
CleverHans
Adversarial MLGoogle Brain adversarial ML library. Implements FGSM, PGD, C&W, and other standard attacks. Designed for adversarial training research.
AirGuard
Tracker DetectionDetects unknown AirTag, SmartTag, and Tile trackers following you. Open-source alternative to Apple's built-in detection. Works on Android devices.
nRF Connect
BLE AnalysisProfessional BLE scanner and analyzer. View all BLE advertisements, GATT services, and device characteristics. Essential for tracker detection.
SnoopSnitch
Cellular SecurityDetects IMSI catchers and rogue base stations on compatible Android devices. Monitors for suspicious cellular network behavior including silent SMS and tracking requests.
Wigle.net
Wi-Fi MappingGlobal database of Wi-Fi access points and cell towers. Useful for identifying known AP locations and detecting new/rogue access points in your environment.
EFF Atlas of Surveillance
Infrastructure MappingCrowdsourced database of law enforcement surveillance technologies deployed across the US. Maps cameras, drones, ALPR, face recognition, and StingRay deployments by jurisdiction.
Shodan
OSINTInternet-connected device search engine. Find exposed cameras, DVRs, and IoT devices. Essential for defensive infrastructure discovery.
Censys
OSINTInternet-wide scan data search. Complementary to Shodan with different scanning methodology. Useful for certificate and host discovery.
ExifTool
Metadata HygieneIndustry-standard metadata reading/writing. Supports 400+ file formats. Essential for stripping GPS, device info, and other identifying metadata from media files.
MAT2
Metadata HygieneMetadata Anonymisation Toolkit v2. CLI and library for cleaning metadata from documents, images, audio, and video. Used by Tails OS.
Resemblyzer
Voice AnalysisSpeaker embedding extraction and comparison. Useful for testing voice verification systems and measuring voiceprint similarity across audio samples.
librosa
Audio AnalysisPython audio analysis library. Extract MFCC, spectrograms, and other features used in speaker recognition. Essential for voice biometric research.
MediaPipe
Pose EstimationGoogle's ML solutions for face detection, pose estimation, hand tracking, and holistic body analysis. Key tool for gait biometric research.
OpenPose
Pose EstimationReal-time multi-person pose estimation. More accurate than MediaPipe for research use but requires more compute resources.
HackRF One
SDR HardwareSoftware-defined radio for spectrum analysis (1 MHz–6 GHz). Analyze cellular, Wi-Fi, BLE, and ADS-B signals. Receive-only for legal passive recon.
Flipper Zero
Multi-Tool HardwarePortable multi-protocol tool: Sub-GHz, RFID, NFC, IR, BLE, and GPIO. Useful for testing RFID access controls and IR sensor responses.
RTL-SDR v4
SDR HardwareBudget SDR dongles ($30–40) for passive RF monitoring. Covers 24 MHz–1.7 GHz. Good entry point for spectrum awareness and ADS-B tracking research.
FLIR Lepton 3.5
Thermal ImagingCompact thermal camera module (160×120 px). Integrates with Raspberry Pi for thermal countermeasure testing and human-presence detection research.
Tracker Detect (Apple)
Tracker DetectionOfficial Apple app for Android to detect unknown AirTags. Limited functionality compared to AirGuard but handles Apple-specific tracker protocol.
Haven (Guardian Project)
Physical SecurityTurns an old Android phone into a physical security sensor. Detects motion, sound, light changes, and device tampering. Secure logging with Tor.
Tool Comparison Matrix
Quick reference for choosing the right tool based on use case, platform support, and learning curve.
| Tool | Linux | macOS | Windows | GPU Needed | Difficulty | Best For |
|---|---|---|---|---|---|---|
| DeepFace | ✓ | ✓ | ✓ | Optional | Easy | FR testing & threshold calibration |
| IBM ART | ✓ | ✓ | ✓ | Recommended | Hard | Multi-attack comparison & defense eval |
| Foolbox | ✓ | ✓ | ✓ | Optional | Medium | Quick adversarial benchmarks |
| Fawkes | ✓ | ~ | ✗ | Recommended | Medium | Image cloaking (install from source) |
| MediaPipe | ✓ | ✓ | ✓ | No | Easy | Pose estimation & gait research |
| ExifTool | ✓ | ✓ | ✓ | No | Easy | Metadata stripping & analysis |
| Shodan CLI | ✓ | ✓ | ✓ | No | Easy | Exposed device discovery |
Hardware Recommendations
Physical tools for field assessment. Budget estimates as of 2026.
| Item | Use Case | Cost (USD) | Notes |
|---|---|---|---|
| 940nm IR LED Board | Camera blinding (night/IR cams) | $15–35 | Invisible to human eye; test on your own cameras first |
| Faraday Bag (phone-sized) | RF signal blocking | $20–45 | Verify >80 dB attenuation; test with signal meter before trusting |
| RTL-SDR v4 Dongle | Passive RF spectrum analysis | $35–45 | Covers 24 MHz–1.7 GHz; receive-only (legal) |
| Flipper Zero | Multi-protocol testing | $170–200 | Sub-GHz, RFID, NFC, IR, BLE, GPIO; all-in-one field tool |
| Raspberry Pi 5 | Portable compute for scripts | $60–90 | Run Python tools in the field; pair with battery pack |
| FLIR Lepton 3.5 Module | Thermal countermeasure testing | $220–280 | 160×120 thermal sensor; Pi-compatible breakout boards available |
| HackRF One | Wide-band SDR (1 MHz–6 GHz) | $320–380 | Professional spectrum analysis; receive-only for legal use |
| USB BT5.0 Adapter | BLE tracker scanning | $12–18 | Required for desktop BLE scanning with bleak/nRF Connect |
Mobile Tools
Essential apps for on-the-go counter-surveillance assessment.
Android
- • AirGuard: BLE tracker detection (AirTag, SmartTag, Tile)
- • nRF Connect: Professional BLE scanner & GATT explorer
- • SnoopSnitch: IMSI catcher detection (Qualcomm root required)
- • Haven: Physical security sensor (motion, sound, light)
- • NetX / Fing: Network scanner for camera discovery
- • Wigle WiFi Wardriving: AP mapping & signal logging
iOS
- • Tracker Detect: AirTag detection (limited vs AirGuard)
- • nRF Connect: BLE scanner (iOS version available)
- • Fing: Network scanner for local device discovery
- • Signal Strength: Wi-Fi/cellular signal mapping
- • Built-in: iOS 14.5+ has automatic unknown AirTag alerts
- • Lockdown Mode: iOS 16+ extreme device hardening
iOS vs Android for Counter-Surveillance
Recommended Toolkit by Goal
Detection & Discovery
- BLE trackers: AirGuard, nRF Connect
- Rogue cells: SnoopSnitch
- Camera networks: Shodan, Censys, nmap
- Wi-Fi mapping: Wigle.net, airodump-ng
- Public mapping: EFF Atlas of Surveillance
Hardening & Hygiene
- Metadata: ExifTool, MAT2
- Image privacy: Fawkes, LowKey
- Account isolation: SimpleLogin, Firefox Relay
- Device hardening: MAC randomization tools
- Audio sanitization: ffmpeg, Audacity
Testing & Validation
- Face recognition: DeepFace, face_recognition
- Adversarial ML: IBM ART, Foolbox, CleverHans
- Pose estimation: MediaPipe, OpenPose
- Voice analysis: Resemblyzer, librosa
- Network scanning: nmap, ONVIF probes
Research Toolkit Setup
One-command setup for a comprehensive counter-surveillance research environment.
#!/bin/bash
# Counter-surveillance research toolkit setup
# Creates isolated Python environment with key assessment tools
set -euo pipefail
echo "=== Counter-Surveillance Research Toolkit ==="
# Create virtual environment
python3 -m venv cs-toolkit
source cs-toolkit/bin/activate # Linux/macOS
# Windows users: replace 'source cs-toolkit/bin/activate' with 'cs-toolkit\Scripts\activate'
# cs-toolkit\Scripts\activate # Windows
# --- Core ML/Vision Libraries ---
# Note: This installs CPU-only PyTorch. For GPU support, use:
# pip install torch torchvision --index-url https://download.pytorch.org/whl/cu121
pip install torch torchvision # PyTorch (CPU or GPU)
pip install opencv-python-headless # OpenCV without GUI
pip install mediapipe # Google MediaPipe (pose, face, hand)
pip install Pillow numpy scipy # Fundamentals
pip install ultralytics # YOLOv8 (object detection)
# --- Facial Recognition & Privacy ---
pip install deepface # Multi-model face verification
pip install face_recognition # dlib-based face recognition
# NOTE: Fawkes pip package is broken since late 2023.
# Install from source instead:
# git clone https://github.com/Shawn-Shan/fawkes.git && cd fawkes && pip install .
# --- Adversarial ML ---
pip install adversarial-robustness-toolbox # IBM ART (PyTorch backend)
pip install foolbox # Adversarial examples (PyTorch-native)
# NOTE: cleverhans targets TensorFlow and may conflict with PyTorch.
# Install only if you need TF-based attacks:
# pip install cleverhans tensorflow
# --- Audio/Voice ---
pip install librosa soundfile # Audio analysis
pip install resemblyzer # Speaker embeddings
pip install pydub # Audio manipulation
# --- OSINT & Network ---
pip install shodan # Shodan API client
pip install censys # Censys API client
pip install scapy # Packet crafting/analysis
# --- Metadata & Privacy ---
# ExifTool (system install — not pip)
# Linux: sudo apt install libimage-exiftool-perl
# macOS: brew install exiftool
# Windows: https://exiftool.org/install.html
# --- BLE/Bluetooth ---
pip install bleak # Cross-platform BLE scanner
echo ""
echo "=== Toolkit Ready ==="
pip list --format=columns | head -30
echo "..."
echo "Total packages: $(pip list | wc -l)"#!/bin/bash
# Counter-surveillance research toolkit setup
# Creates isolated Python environment with key assessment tools
set -euo pipefail
echo "=== Counter-Surveillance Research Toolkit ==="
# Create virtual environment
python3 -m venv cs-toolkit
source cs-toolkit/bin/activate # Linux/macOS
# Windows users: replace 'source cs-toolkit/bin/activate' with 'cs-toolkit\Scripts\activate'
# cs-toolkit\Scripts\activate # Windows
# --- Core ML/Vision Libraries ---
# Note: This installs CPU-only PyTorch. For GPU support, use:
# pip install torch torchvision --index-url https://download.pytorch.org/whl/cu121
pip install torch torchvision # PyTorch (CPU or GPU)
pip install opencv-python-headless # OpenCV without GUI
pip install mediapipe # Google MediaPipe (pose, face, hand)
pip install Pillow numpy scipy # Fundamentals
pip install ultralytics # YOLOv8 (object detection)
# --- Facial Recognition & Privacy ---
pip install deepface # Multi-model face verification
pip install face_recognition # dlib-based face recognition
# NOTE: Fawkes pip package is broken since late 2023.
# Install from source instead:
# git clone https://github.com/Shawn-Shan/fawkes.git && cd fawkes && pip install .
# --- Adversarial ML ---
pip install adversarial-robustness-toolbox # IBM ART (PyTorch backend)
pip install foolbox # Adversarial examples (PyTorch-native)
# NOTE: cleverhans targets TensorFlow and may conflict with PyTorch.
# Install only if you need TF-based attacks:
# pip install cleverhans tensorflow
# --- Audio/Voice ---
pip install librosa soundfile # Audio analysis
pip install resemblyzer # Speaker embeddings
pip install pydub # Audio manipulation
# --- OSINT & Network ---
pip install shodan # Shodan API client
pip install censys # Censys API client
pip install scapy # Packet crafting/analysis
# --- Metadata & Privacy ---
# ExifTool (system install — not pip)
# Linux: sudo apt install libimage-exiftool-perl
# macOS: brew install exiftool
# Windows: https://exiftool.org/install.html
# --- BLE/Bluetooth ---
pip install bleak # Cross-platform BLE scanner
echo ""
echo "=== Toolkit Ready ==="
pip list --format=columns | head -30
echo "..."
echo "Total packages: $(pip list | wc -l)"Docker-Based Environment
Prefer zero-host-pollution? Use Docker to run the full research toolkit without modifying your system Python or installing system packages.
# Docker-based research environment — zero host pollution
# Includes all Python tools + system deps pre-configured
# Expected image size: ~4.5 GB (includes PyTorch + CUDA runtime + all research tools)
#
# ⚠ Create requirements.txt with the following content before building:
# --- requirements.txt ---
# deepface>=0.0.89
# mediapipe>=0.10.0
# resemblyzer>=0.1.3
# librosa>=0.10.0
# easyocr>=1.7.0
# adversarial-robustness-toolbox>=1.17.0
# torch>=2.0.0
# torchvision>=0.15.0
# opencv-python>=4.8.0
# numpy>=1.24.0
# scipy>=1.11.0
# Pillow>=10.0.0
FROM python:3.11-slim
# System dependencies
RUN apt-get update && apt-get install -y --no-install-recommends \
libimage-exiftool-perl \
ffmpeg \
nmap \
libgl1-mesa-glx \
libglib2.0-0 \
git \
&& rm -rf /var/lib/apt/lists/*
# Python toolchain
COPY requirements.txt /tmp/
RUN pip install --no-cache-dir -r /tmp/requirements.txt
# Fawkes from source (pip package broken)
RUN git clone --depth 1 https://github.com/Shawn-Shan/fawkes.git /opt/fawkes \
&& cd /opt/fawkes && pip install --no-cache-dir .
WORKDIR /workspace
VOLUME ["/workspace"]
# Usage:
# docker build -t cs-toolkit .
# docker run -it --rm -v $(pwd):/workspace cs-toolkit bash# Docker-based research environment — zero host pollution
# Includes all Python tools + system deps pre-configured
# Expected image size: ~4.5 GB (includes PyTorch + CUDA runtime + all research tools)
#
# ⚠ Create requirements.txt with the following content before building:
# --- requirements.txt ---
# deepface>=0.0.89
# mediapipe>=0.10.0
# resemblyzer>=0.1.3
# librosa>=0.10.0
# easyocr>=1.7.0
# adversarial-robustness-toolbox>=1.17.0
# torch>=2.0.0
# torchvision>=0.15.0
# opencv-python>=4.8.0
# numpy>=1.24.0
# scipy>=1.11.0
# Pillow>=10.0.0
FROM python:3.11-slim
# System dependencies
RUN apt-get update && apt-get install -y --no-install-recommends \
libimage-exiftool-perl \
ffmpeg \
nmap \
libgl1-mesa-glx \
libglib2.0-0 \
git \
&& rm -rf /var/lib/apt/lists/*
# Python toolchain
COPY requirements.txt /tmp/
RUN pip install --no-cache-dir -r /tmp/requirements.txt
# Fawkes from source (pip package broken)
RUN git clone --depth 1 https://github.com/Shawn-Shan/fawkes.git /opt/fawkes \
&& cd /opt/fawkes && pip install --no-cache-dir .
WORKDIR /workspace
VOLUME ["/workspace"]
# Usage:
# docker build -t cs-toolkit .
# docker run -it --rm -v $(pwd):/workspace cs-toolkit bashGPU Passthrough
--gpus all with NVIDIA Container Toolkit installed: docker run --gpus all -it cs-toolkit bash.
Learning Resources
Research Papers
- • Goodfellow et al. — "Explaining and Harnessing Adversarial Examples" (FGSM origin paper)
- • Sharif et al. — "Adversarial Generative Nets" (physical-world face recognition attacks)
- • Shan et al. — "Fawkes: Protecting Privacy against Unauthorized Deep Learning"
- • Carlini & Wagner — "Towards Evaluating the Robustness of Neural Networks"
- • Thys et al. — "Fooling Automated Surveillance Cameras: Adversarial Patches to Attack Person Detection"
Organizations & Databases
- • EFF (Electronic Frontier Foundation): Digital privacy advocacy and surveillance tracking
- • EPIC (Electronic Privacy Information Center): Privacy policy research and litigation
- • Access Now: Global digital rights and surveillance accountability
- • Citizen Lab: Targeted surveillance research (University of Toronto)
- • MITRE ATT&CK: Adversary tactics and techniques framework
Conferences & Talks
- • DEF CON AI Village — Adversarial ML demonstrations
- • Black Hat — Surveillance and privacy research
- • USENIX Security — Academic security research with ML focus
- • CCC (Chaos Communication Congress) — European privacy/surveillance talks
- • IEEE S&P — Top-tier security research including adversarial ML
Hardware Resources
- • IR LED boards: 850nm/940nm development boards (Amazon, AliExpress)
- • HackRF One: SDR for spectrum analysis (do not transmit without authorization)
- • Raspberry Pi: Portable compute for field testing scripts
- • USB Bluetooth 5.0 adapter: For BLE scanning and tracker detection
- • FLIR Lepton: Thermal imaging sensor module for thermal defense testing
Tool Selection Principle
Getting Started Checklist
- Install ExifTool first: immediate ROI for metadata hygiene with near-zero learning curve
- Set up Python venv: isolated environment prevents dependency conflicts across tools
- Test DeepFace locally: understand face recognition before trying to defeat it
- Try AirGuard: install on your phone to baseline your BLE tracker exposure
- Bookmark EFF Atlas: know what surveillance exists in your area before planning countermeasures
Tool Setup Labs
Hands-on exercises to install, configure, and validate your counter-surveillance toolkit.