Skip to main content

WiFi-Lab-Controller

PyPI version Python versions License Tests Documentation Status


📘 Wi-Fi Lab Controller — User Manual & README

It includes:

  • ✅ README
  • ✅ Installation Guide
  • ✅ Features List
  • ✅ Usage Manual (per tab)
  • ✅ Legal & Safety Notes
  • ✅ Requirements
  • ✅ Troubleshooting
  • ✅ Author & Credits

A GUI‑based Wi‑Fi learning and testing toolkit created by Mohammed Zahid Wadiwale 🌐 https://www.webaon.com


📌 What Is Wi‑Fi Lab Controller?

Wi‑Fi Lab Controller is an educational GUI toolkit that allows you to experiment with Wi‑Fi functions safely on your own equipment.

It is made for:

  • Raspberry Pi
  • Parrot OS
  • Kali Linux
  • Ubuntu (with wireless tools installed)
  • Any Linux system with aircrack‑ng, hostapd, dnsmasq, and NetworkManager

❗ This tool is strictly for lab experiments on your own Wi‑Fi network.

It does NOT include any malicious intent — all functions require manual confirmation and can be restored with the End Attack / Restore Normal button.


📥 Installation

Install required dependencies:

sudo apt update
sudo apt install python3 python3-tk aircrack-ng hostapd dnsmasq network-manager xdg-utils

Clone your repository:

git clone https://github.com/ZahidServers/WiFi-Lab-Controller.git
cd Wifi-Lab-Controller
cd wifilab

Run:

sudo python3 app.py

(root or sudo required)

📥 Installation (Linux / Parrot / Kali / Debian / Ubuntu / Raspberry Pi OS) via PyiPi

🔧 Required System Packages

sudo apt update
sudo apt install -y python3 python3-tk aircrack-ng hostapd dnsmasq network-manager xdg-utils

🐍 Install from PyPI (Recommended)

pip install wifilab

⚠️ Note for Debian/Kali/Parrot/Raspberry Pi OS

If you see:

error: externally-managed-environment

Use pipx or a virtual environment:


▶️ Option 1 — Using pipx (Best)

sudo apt install pipx
pipx ensurepath
pipx install wifilab
wifilab

▶️ Option 2 — Using Virtual Environment

python3 -m venv venv
source venv/bin/activate
pip install wifilab
python -m wifilab

⚠️ Not Recommended

pip install wifilab --break-system-packages

🚀 Running

wifilab

or

python -m wifilab

🧰 Features Overview

Feature Description
Mode 1 — Safe Disconnect + Fake AP Restarts Wi‑Fi + starts your test AP
Mode 2 — Fake AP Only Runs hostapd & dnsmasq
Mode 3 — Scan 2.4 GHz Monitor mode + airodump scan + DeAuth
Mode 4 — Scan 5 GHz Monitor mode + airodump scan + DeAuth
Network Table Shows BSSID, Channel, Band, ESSID
Click-to-Select Networks User must confirm selection
Automated Restore System Stops AP, clears dnsmasq, flushes iptables
Domain Redirection Add dnsmasq rules easily
NAT Routing Enable local routing for fake AP
About Tab Credits, website links, support info

📘 Using Wi‑Fi Lab Controller (Tabs Explained)


🏠 1. Home Tab

Home Tab

Mode 1: Safe Disconnect + Fake AP

  • Restarts Wi‑Fi interface
  • Starts your configured hostapd fake AP
  • Starts dnsmasq DHCP

Mode 2: Fake AP Only

Starts hostapd + dnsmasq without restarting Wi‑Fi.

Safe Disconnect

Equivalent to:

ip link set wlan0 down
sleep 2
ip link set wlan0 up

Start Duplicate AP

Starts hostapd & dnsmasq.

Stop Fake AP

Stops hostapd & dnsmasq.

End Attack / Restore Normal

Restores EVERYTHING to default:

✔ Stops fake AP ✔ Stops dnsmasq ✔ Clears dnsmasq.conf ✔ Flushes iptables ✔ Restarts Wi‑Fi ✔ Restarts NetworkManager

If anything breaks, this button fixes it.


🌐 2. Network Tab

Network Tab

Show Network Interfaces

Runs:

ip a

Enable NAT Routing

Adds a MASQUERADE rule for sharing internet:

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

🧭 3. Domain Redirection Tab

Domain Tab Used for local DNS experiments.

You can add:

address=/example.com/192.168.1.10

Useful for:

  • Phishing lab practice (on your own machines only)
  • Local DNS tests
  • Redirecting domains to internal servers

After adding a rule, dnsmasq restarts automatically.


📡 4. Scan Networks (Mode 3 & 4)

Scan Tab

Requirements

Your Wi‑Fi card must support:

  • Monitor Mode
  • Packet injection

(usb cards: Alfa, TP‑Link T2U, T9UH, AC600, etc.)

Modes

Mode Function
Mode 3 Scans 2.4 GHz (bg band)
Mode 4 Scans 5 GHz (a band)

How Scanning Works

  • Puts interface into monitor mode via airmon-ng
  • Runs airodump‑ng
  • Reads output CSV in live mode
  • Updates table automatically every 2 seconds
  • Auto‑stops after 10 seconds unless manually stopped

Click‑to‑Select Network

When you click a row:

A CONFIRM BOX appears:

Do you want to select this network?

Interface: wlan0
BSSID: XX:XX:XX:XX
Channel: 6
Band: 2.4
ESSID: MyWifi

If user clicks OK:

  • Channel is set
  • (Optional/Disable) deauth function runs if enabled

If user clicks Cancel:

  • Nothing happens

ℹ️ 5. About Tab

About Tab Contains:

  • App description
  • Author info
  • Website links
  • GitHub
  • Blog
  • Academy
  • Support information
  • Copyright

❗ Legal & Safety Notice

This toolkit is for EDUCATIONAL & LAB USE ONLY.

You MUST:

✔ Only test on your own Wi‑Fi ✔ Not use on public Wi‑Fi ✔ Not test on neighbors, hotels, offices, or any unauthorized network

The tool includes features that demonstrate how Wi-Fi attacks work — they are meant for cybersecurity learning only.


🛠 Requirements

  • Linux OS
  • Python 3
  • Python tkinter
  • aircrack-ng
  • hostapd
  • dnsmasq
  • xdg-utils
  • Wireless card supporting monitor mode / AP mode

🐞 Troubleshooting

Problem: "Cannot find device wlan0"

Solutions:

  • Replace with your interface name (use ip a)
  • Many systems use wlp3s0, wlan1, etc.

Monitor Mode Not Starting

  • Use compatible wireless adapter

  • Try:

    sudo airmon-ng check kill
    

Fake AP not starting

Check hostapd.conf and dnsmasq.conf syntax.

Network breaks

Click End Attack / Restore Normal.


👨‍💻 Author

Developed by:

👉 Mohammed Zahid Wadiwale

Support development by buying:

  • Hosting
  • Domains
  • Websites
  • Cybersecurity services
  • Courses

Metadata

Release files for wifilab 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for wifilab 1.2.0
File Size Uploaded Provenance
wifilab-1.2.0.tar.gz 12.8 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for wifilab 1.2.0
File Interpreter ABI Platform
wifilab-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 23.4 kB

Release files / wifilab-1.2.0.tar.gz

Download URL wifilab-1.2.0.tar.gz
Size 12.8 kB
Tags Source
SHA-256 checksum
How to use checksums
9161faecdb7c60473e724b8e9a39fa79d4bd8e03342d5322de8e6f9beb69d442
BLAKE2b-256 checksum
How to use checksums
3bd276e7ee1fe97228edff2da15f7282c84ae674f24b25a26272196f73cd297d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.14

Release files / wifilab-1.2.0-py3-none-any.whl

Download URL wifilab-1.2.0-py3-none-any.whl
Size 10.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
545117829fe0447b7d3a394f64f4b2bba9684d050de446a4a002105d9b62998c
BLAKE2b-256 checksum
How to use checksums
cf014597c103bb5a251ac1a7a95d3f72a926e720243198b9576ab5f21a5c0f50
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.14

Security for wifilab 1.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page