How maluta/privacy-scanner works
Privacy Scanner is a cross-platform defensive tool for finding WiFi-connected surveillance devices. A user starts a scan against a detected or specified network; the scanner discovers hosts, gathers manufacturer and network-service evidence, classifies risk, and presents results in the terminal and an HTML report. The phases are documented as a seven-stage pipeline, while the implementation is largely concentrated in scripts/scan.py. The graph preserves the documented Linux-only Bash alternative and report capabilities; phase-to-phase links are based on the README rather than inspected call sites.
Main entry points: scan.py Python Scanner · report_html.py HTML Generator · scan.sh Linux Bash Scanner
Components 16
Scan Workflow
- Python Scanner
scripts/scan.py - Scan Context
scripts/scan.py - Host Discovery
scripts/scan.py - Port Scan
scripts/scan.py - Service Discovery
scripts/scan.py
Evidence Analysis
- OUI Analysis
scripts/scan.py - Deep Inspection
scripts/scan.py - Risk Classification
scripts/scan.py
Results
- Terminal Results
scripts/scan.py - HTML Generator
scripts/report_html.py - Offline HTML Report
- Raw Scan Data
Platform Alternatives
- Linux Bash Scanner
scripts/scan.sh
Other components
- Scanner User
- WiFi Network
- nmap
Connections 15
- Scanner User → Python Scanner: starts scan
README.md - Python Scanner → Scan Context: configures state
scripts/scan.py - Python Scanner → Host Discovery: runs phase
README.md - Host Discovery → WiFi Network: discovers hosts
README.md - Host Discovery → nmap: uses ping scan
README.md - Host Discovery → OUI Analysis: feeds host evidence
README.md - OUI Analysis → Port Scan: feeds device targets
README.md - Port Scan → Service Discovery: precedes phase
README.md - Service Discovery → Deep Inspection: precedes phase
README.md - Deep Inspection → Risk Classification: feeds evidence
README.md - Python Scanner → Terminal Results: prints results
README.md - Python Scanner → HTML Generator: generates report
README.md - HTML Generator → Offline HTML Report: writes report
README.md - Python Scanner → Raw Scan Data: saves scan data
README.md - Scanner User → Linux Bash Scanner: starts Linux scan
README.md