Add recon: a WiFi and BLE scanner that identifies what it sees - #11
Open
jgamblin wants to merge 2 commits into
Open
Add recon: a WiFi and BLE scanner that identifies what it sees#11jgamblin wants to merge 2 commits into
jgamblin wants to merge 2 commits into
Conversation
Names devices by manufacturer, product and protocol rather than listing MAC addresses, using the IEEE MA-L registry (39,877 prefixes) and Bluetooth SIG company IDs (3,988) compiled to sorted fixed-width binaries and binary-searched on the badge, plus parsers for Apple Continuity, GAP appearance, service UUIDs and SSID conventions. Dashboard by device kind with drill-down, live list, detail pages, flags for open networks and possible evil twins, vendor ranking, and a persistent de-duplicated log with a bounded disk budget. Entirely passive: no association, no transmission, no traffic capture.
recon moved out of the badge-faces repo into jgamblin/tufty-recon.
Author
|
Small update: the scanner now lives in its own repository at https://github.com/jgamblin/tufty-recon rather than alongside my badge faces, so the links in the app README point there. No change to the app itself. The 763KB |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Hello! Adding an app I built for BSidesLV and DEF CON.
recon scans WiFi and Bluetooth and tells you what things are rather than
listing MAC addresses. Carried around for an evening it logged 214 access points
and named 86% of them by manufacturer, plus 93% of the Bluetooth devices it
heard, picking out cable-company gateways, Tile trackers, AirPods, smart-home
hubs and a garage-door opener by name.
Everything is passive. It never associates, transmits or captures traffic; every
beacon and advertisement it reads is a public broadcast.
A dashboard counts what is around you by kind and drills into any row; there are
also live list, per-device detail, flags (open networks, WEP, possible evil
twins, trackers), a vendor ranking, and a persistent de-duplicated log.
One thing to flag before you review
data/is 763KB of compiled vendor databases (39,877 IEEE MA-L prefixes and3,988 Bluetooth SIG company IDs, as sorted fixed-width binaries). That is a lot
heavier than the other apps here, so entirely understandable if it is too much
for this repo. Happy to either trim it to the few hundred most common vendors,
or ship the app without the data and have people run the builder themselves.
Just say which you prefer.
Notes
ci/ruff.tomlclean.resolve lazily at two devices a frame, so a crowded room never stalls drawing.
to 1800 devices.
full rather than silently dropping records.
devices. Apple Find My beacons look static by their address bits but rotate
every ~15 minutes, so rotation is decided from the payload too; without that
one outing counted 356 "devices" that were roughly 55.
Source, plus the database builder, CSV exporter and stress test:
https://github.com/jgamblin/Tufty2350-Badgeware