Visualise the wifi devices around you communicating to each other in their own networks
Project description
WifiGaze
WifiGaze is a network security tool designed to:
- Observe WiFi devices in your proximity.
- Create a graph of all devices they communicate with, including non-wireless devices if a WiFi device is interacting with them.
- Incrementally discover more devices as it hops through all available WiFi channels.
Features:
- Reveals devices on networks without decrypting any traffic.
- Web interface that can be accessed locally or configured remotely
- Supports exporting and importing of graphs.
Requirements
To use WifiGaze, you need something like default Kali (which gives the first 3):
- Python3
- Wireshark (tshark)
- sudo/root access - root is required to hop between wifi channels, it won't hop channels if you have the same number of interfaces as channels you are monitoring
- Wireless network interface(s) in monitor mode - See Example configuring of Monitor mode.
- if using a rpi
sudo apt-get install libxml2-dev libxslt-dev
Installing WifiGaze
Create a virtual environment and install the wheel
virtualenv venv
source venv/bin/activate
pip install wifigaze-0.4.0-py3-none-any.whl
Running WifiGaze
Run WifiGaze with default settings and the first WLAN interface:
wifigaze --interfaces=wlan0
For WLAN interfaces that don't support 5GHz, limit the channels to scan:
wifigaze --interfaces=wlan1 --channels=1,6,11
Replay a previously captured PCAP file without requiring live interfaces:
wifigaze --pcap-file=captures/demo.pcap
Once WifiGaze is running you can navigate to the web interface: http://127.0.0.1:8765
Command Line Options:
| Option | Description | Default |
|---|---|---|
| --interfaces= | List of WLAN interfaces to use (e.g., wlan0,wlan1). | |
| --channels= | List of channels to scan. | 1,6,11,36,40,44,48,149,153,157,161 |
| --channel-dwell-time= | Time to listen on each channel before switching. | 1 |
| --no-monitormode | Launches without listening to WLAN interfaces. | |
| --preload-graph= | Preload a previously exported graph. | None |
| --listen-ip= | IP address to listen on. | 127.0.0.1 |
| --listen-port= | Port to listen on. | 8765 |
| --no-browser | Do not launch the browser interface. | |
| --pcap-file= | Replay packets from a PCAP file instead of live capture. | None |
| --log-level= | Log level (TRACE, DEBUG, INFO, WARNING, ERROR, CRITICAL). | INFO |
| -h, --help | Display help message and exit. |
Building the Project
WifiGaze requires Python 3 and Node.js to build. Use the following commands:
python buildvue.py
python -m pip install --user setuptools wheel build
python -m build
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wifigaze-0.5.0.tar.gz.
File metadata
- Download URL: wifigaze-0.5.0.tar.gz
- Upload date:
- Size: 4.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
545a79074321dd68df8a4018fc3c8ff06d3878acac9cc40a6c557e77c93771e0
|
|
| MD5 |
905fd1c01a5d237b01b1ffba48bf644a
|
|
| BLAKE2b-256 |
1e4b4092c9531d00aaefaa65abe8ffbcedbb85a448dd7911102ecfca44b43ba2
|
File details
Details for the file wifigaze-0.5.0-py3-none-any.whl.
File metadata
- Download URL: wifigaze-0.5.0-py3-none-any.whl
- Upload date:
- Size: 4.7 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
20f64b7011f09b1c5d9794d888c8227f488f9856deff4562c4ca0571dfdbee65
|
|
| MD5 |
cbb649b7f8b0aa1f396517983c0be43b
|
|
| BLAKE2b-256 |
e7e7a1b8dd9d6108032d64292048a0f276349847b77cf2b369e8813701d767b1
|