
Wifite but USB-only & cross-platform.
A wireless auditor that runs on Linux and Windows, comes with its own built-in drivers.
At least one of the supported USB adapters is required.
wifit3 is fundamentally different from its predecessor, wifite2:
sudo is required to set up permissions on Linux (udev/modprobe).Thoroughly tested only on my own machine, with the cards I physically own.
Other wireless cards with a supported chipset may not behave as expected.
Bug reports are genuinely welcome: open an issue.
.hc22000 filetype..hc22000 saves.| Scanner | Focus (single target) |
|---|---|
![]() | ![]() |
If your USB device is not listed there, wifit3 will not work with it.
A matching chipset does not guarantee that your wireless card will work.
See Supported Hardware for detailed information about each card's capabilities and performance.
Grab a prebuilt binary from the Releases
wifit3-windows-x64.exe and run it.wifit3-linux-x64, then chmod +x wifit3-linux-x64 && ./wifit3-linux-x64.wifit3-macos-universal2xattr -d com.apple.quarantine wifit3-macos-universal2 && chmod +x wifit3-macos-universal2./wifit3-macos-universal2Wifit3 uses uv (requires internet access to pull dependencies for the first run):
uv sync
uv run wifit3
Build using uv run pyinstaller wifit3.spec --noconfirm --clean (Windows: dist/wifit3.exe, Linux/OSX: dist/wifit3).
Windows: Wifit3 offers to install the WinUSB driver for your device. The bundled installer self-elevates for that one step (a single UAC prompt), after which no Administrator privileges are needed to run Wifit3.
Linux: Wifit3 offers to create udev and modprobe rules which enable userland access. These rules blocklist
the card's kernel driver (so the kernel stops grabbing it). Afterward Wifit3 runs without sudo.
macOS: No driver install is needed. macOS asks to allow the USB device on first plug-in: choose Allow, afterwards wifit3 can see & interact with the device.
Click the red Uninstall button on Wifit3's Splash screen to uninstall
Wifit3 only exists because of the people who reverse-engineered and maintained the Linux drivers we ported from.
Biggest thanks: Christian "kimo" B. (@kimocoder), who
took over wifite2 when its original maintainer (me) stepped away and has kept it alive and
evolving for years since (and maintains aircrack-ng's RTL8188EUS DKMS driver, which we port here).
Special thanks: Sandman, close friend and the master to my Linux & wireless-hacking apprenticeship.
A few more of the driver authors we ported from:
mt76.The full list (every substantive contributor to the drivers we ported, and the cards they enabled) is in CREDITS.md.
wifit3 talks to the wireless cards directly over USB through its built-in "Mini-Drivers": miniature userland ports of the Linux kernel drivers. These ports only include the bare minimum needed for RX and TX in Monitor Mode (no AP/STA modes).
This sidesteps the operating system's wireless stack completely, including Windows' NDIS (Network Driver Interface Specification), which would otherwise block Monitor Mode and injection. The bytes sent to the card are the same on either OS, so a single codebase runs on both Linux and Windows.
Mini-Drivers also enables wifit3's multi-card feature: Plug in multiple (supported) wireless devices and wifit3 will "cross the streams", improving the chances of capturing packets and overall RX.
The Mini-Drivers were ported from their Linux C drivers by a coding agent. During development, the agent is guided by an offline test harness: it replays real USB traffic (recorded from the Linux wireless driver) against the Python port and halts at the first instruction where the port diverges from the recording. The agent ports that next sequence, replays, and repeats until the driver port reproduces the entire recording. Only then is it reasonably safe to try live hardware.
The loop in brief:
airmon-ng, airodump-ng, and aireplay-ng run.
capture.py
automates the capture (usbmon via tshark) and pulls the driver's C source./port <chip> (e.g. /port rt5370), a Claude-specific command. The agent
wires the capture into
verify_pcap.py so the
capture can be replayed & verified against the new driver without touching the hardware at all.verify_pcap.py reports the next USB instruction where the port's
output diverges from the capture. The agent uses the C source to fix it, replays, and repeats
until the capture runs clean.docs/porting/ documents the full process.
Wifit3 is licensed under the GNU General Public License v2.0 (GPL-2.0-only): see LICENSE. The userland drivers are ports of GPLv2 Linux kernel and vendor DKMS drivers, so GPLv2 is the natural fit; the upstream authors are credited in CREDITS.md.
Source for binary releases. The prebuilt executables on the Releases page are built from this repository. The complete corresponding source for any released binary is this repository at its matching version tag. GPLv2 §3 is satisfied by offering source from the same place the binary is offered.
Firmware is not GPL. The vendor firmware blobs that Wifit3 loads onto the cards are redistributed verbatim under their own manufacturers' licenses (Realtek / MediaTek / Ralink), not the GPL. Each ships with its license text alongside it; provenance and byte-verification are documented in FIRMWARE.md.
For use only on networks you own or are explicitly authorized to test.
⚠️ Hardware-damage risk. Wifit3 talks to USB Wi-Fi hardware at the register level, with no kernel driver between it and the silicon. A bad register write, firmware page, or power sequence can damage or permanently disable ("brick") a device. Use at your own risk: there is no liability for hardware damage.
| Chipset | Bands | Cards (Make + Model) |
|---|
| Atheros AR9271 | 2.4 GHz | ALFA AWUS036NHA, TP-Link TL-WN722N V1 |
| MediaTek MT7610U | 2.4 / 5 GHz | ALFA AWUS036ACHM, Panda PAU0B |
| MediaTek MT7612U | 2.4 / 5 GHz | ALFA AWUS036ACM |
| MediaTek MT7921AU | 2.4 / 5 GHz | ALFA AWUS036AXML, Panda PAU0F |
| MediaTek MT7925U | 2.4 / 5 GHz | Netgear A9000 |
| Realtek RTL8812AU | 2.4 / 5 GHz | ALFA AWUS036ACH |
| Realtek RTL8814AU | 2.4 / 5 GHz | ALFA AWUS1900 |
| Realtek RTL8821AU | 2.4 / 5 GHz | ALFA AWUS036ACS, TP-Link Archer T2U Plus/Nano |
| Realtek RTL8821CU | 2.4 / 5 GHz | Auscoumer 600 Mbps |
| Realtek RTL8922AU | 2.4 / 5 GHz | ASUS USB-BE93 |
| Realtek RTL8822BU | 2.4 / 5 GHz | TP-Link T3U Plus |
| Realtek RTL8187L | 2.4 GHz | ALFA AWUS036H |
| Realtek RTL8188EUS | 2.4 GHz | TP-Link TL-WN722N v2/v3 |
| Ralink RT2570 | 2.4 GHz | Buffalo Nintendo Wi-Fi USB Controller |
| Ralink RT3070 | 2.4 GHz | ALFA AWUS036NH |
| Ralink RT5370 | 2.4 GHz | LOTEKOO 150 Mbps |
| Ralink RT5372 | 2.4 GHz | Panda PAU05/PAU06 |
| Ralink RT5572 | 2.4 / 5 GHz | Panda PAU09 N600 |