content/projects/uaf.md (2106B)
1 +++
2 title = "uaf"
3 description = "Ultimate AP Finder. Wireless AP discovery and classification for PCI-DSS audits."
4 weight = 30
5 date = 2026-02-14
6
7 [extra]
8 tier = "brief"
9
10 eyebrow = "Wireless AP audit · Python"
11 tagline = "PCI-DSS asks for a wireless assessment, and the honest version of that question is: which of these access points are ours, and which of them are open?"
12 lang = "Python"
13 license = ""
14 version = ""
15 platform = "Linux"
16 repo = "https://github.com/sqzer-x/uaf"
17 stars = 0
18 accent = "#9aa6cc"
19 mark = ""
20 logo = ""
21
22 actions = [
23 { label = "Source", url = "https://github.com/sqzer-x/uaf", style = "ghost" },
24 ]
25
26 facts = [
27 { value = "3", label = "Bands scanned" },
28 { value = "5", label = "Security classes" },
29 { value = "3.10+", label = "Python" },
30 { value = "root", label = "Privileges" },
31 ]
32
33 features_eyebrow = ""
34 features_title = ""
35 features_intro = ""
36 features = []
37
38 session_eyebrow = ""
39 session_title = ""
40 session_shell = ""
41 session_caption = ""
42 session_lines = []
43
44 cta_title = ""
45 cta_text = ""
46 cta_actions = []
47 +++
48
49 Scanning tools tend to stop at a list of SSIDs. An audit report needs more than
50 that: whether the encryption is WEP or WPA3, whether the SSID is hidden, who
51 made the radio, and — for the open ones — what is actually behind them.
52
53 **Passive.** Real-time detection across 2.4, 5 and 6 GHz. Every AP is classified
54 by security (WEP, WPA, WPA2, WPA3, OPN) and by standard (802.11 a/b/g/n/ac/ax),
55 with channel width, hidden-SSID recovery and MAC vendor lookup. Open networks
56 are highlighted, because those are the ones the report is about.
57
58 **Active.** Pick a suspicious open AP from the list and uaf connects to it, then
59 maps what it finds: DHCP details, an ARP sweep for other clients, and a port
60 scan of the gateway. Results come back in an overlay rather than a new screen.
61
62 **Export.** CSV and JSON, active-scan results included, so the findings go
63 straight into the audit document instead of being retyped.
64
65 Needs a Linux box with `iw` and `ip`, root, and an adapter that does monitor
66 mode.
67
68 ```bash
69 pip install uaf
70 ```