Skip to main content

Real-time wireless AP scanner with active reconnaissance for Linux

Project description

AP Scanner

Real-time wireless access point scanner with active reconnaissance for Linux.

Features

Passive Scanning

  • Real-time AP discovery with terminal display
  • Automatic channel hopping (2.4GHz / 5GHz / 6GHz)
  • Security detection: WEP, WPA, WPA2, WPA3
  • WiFi standard detection: 802.11 a/b/g/n/ac/ax
  • Channel width detection (20/40/80/160 MHz)
  • Hidden SSID detection and resolution
  • MAC vendor lookup
  • Band filtering and sort modes

Active Scanning (New!)

  • Interactive AP selection with arrow keys
  • Connect to open (OPN) networks for reconnaissance
  • DHCP lease acquisition and network info extraction
  • ARP scan to discover connected clients
  • Gateway port scanning (22, 53, 80, 443, 8080, 8443)
  • Client device enumeration with MAC vendor lookup
  • Results displayed in overlay panel

Export & Configuration

  • CSV / JSON export with active scan results
  • Configuration file support

Requirements

  • Python 3.10+
  • Linux with iw and ip commands
  • Root privileges
  • WiFi adapter that supports monitor mode

Installation

From PyPI (recommended)

# Using pipx (isolated environment)
pipx install uaf

# Or using pip
pip install uaf

From source

git clone https://github.com/devastator-x/uaf.git
cd uaf
pip install -e .

Ubuntu/Debian (.deb package)

# Download from releases
wget https://github.com/devastator-x/uaf/releases/download/v1.0.0/uaf_1.0.0_all.deb
sudo dpkg -i uaf_1.0.0_all.deb
sudo apt-get install -f  # Install dependencies

Usage

# Basic scan (auto-detect interface)
sudo uaf

# Specify interface
sudo uaf -i wlan0

# Scan specific channels
sudo uaf -c 1,6,11

# Band filter
sudo uaf -b 2.4

# Sort by channel
sudo uaf --sort channel

# Save to specific file
sudo uaf -w output.csv

# Use config file
sudo uaf --config /path/to/config.ini

Keybindings

Normal Mode

Key Action
q Quit
w Write CSV
j Write JSON
b Cycle band filter (All / 2.4GHz / 5GHz / 6GHz)
s Cycle sort mode (RSSI / Channel / ESSID / ENC)
Enter Enter AP selection mode

Selection Mode

Key Action
/ Navigate through AP list
Enter Run active scan on selected open AP
Esc Exit selection mode

Configuration

Default config path: ~/.config/ap-scanner/config.ini

[scanner]
interface = wlan0
band = all
sort = rssi
no_color = false
verbose = false

Development

pip install -e ".[dev]"
pytest tests/ -v

License

GPL-2.0-or-later. See LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

uaf-1.0.1.tar.gz (44.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

uaf-1.0.1-py3-none-any.whl (39.2 kB view details)

Uploaded Python 3

File details

Details for the file uaf-1.0.1.tar.gz.

File metadata

  • Download URL: uaf-1.0.1.tar.gz
  • Upload date:
  • Size: 44.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for uaf-1.0.1.tar.gz
Algorithm Hash digest
SHA256 e4b7fffc560a7c313c97ed332069ff9367e3b2c676fb88f908540173b2e13326
MD5 2d84794008457b2573495612eef10249
BLAKE2b-256 ac096bb68ac2bae4f42766263d2109c40864f42f2dc2e56bb5f85a490bcbdfed

See more details on using hashes here.

File details

Details for the file uaf-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: uaf-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 39.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for uaf-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a455a9eb7a5b9de765992d2326741a1a7fe242160cbb40c6343a58e6792142a3
MD5 b39e2b353e05ccbf7b292695c079d9fa
BLAKE2b-256 ef0a02e09cebd2c39c1dee6f6fbd54d8bc3fb2b654d69e44686394fec74bd6ae

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page