Skip to content

Wifyte is a lightweight and optimized tool designed to automate capture WiFi handshakes and crack passwords using the aircrack-ng suite.

Notifications You must be signed in to change notification settings

Mysteriza/wifyte

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

87 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Repository Size Python Version License

Wifyte - WiFi Handshake Capture & Cracking Tool

Wifyte is an optimized Python-based WiFi penetration testing tool for capturing WPA/WPA2 handshakes and cracking passwords. Inspired by Wifite2, built with speed, accuracy, and a modern UI powered by Rich.


โœจ Key Features

๐ŸŽฏ Core Functionality

  • WPA/WPA2 Handshake Capture - Fast and reliable handshake capturing
  • Password Cracking - Dictionary-based password recovery with aircrack-ng
  • HIDDEN SSID Detection & Decloaking - Automatically detect and reveal hidden networks
  • Multi-Target Support - Capture multiple networks in one session
  • Smart VM Detection - Accurate detection with USB adapter identification

๐Ÿš€ Optimization Features (New!)

  • Continuous Real-Time Scanning - Live network table with dynamic updates (wifite2-style)
  • Rich Modern UI - Beautiful panels, tables, and progress indicators
  • Fast Parallel Deauth - Threading-based deauthentication for quick handshakes
  • Intelligent Client Detection - 15-second scan with progress tracking
  • Vendor Identification - MAC address vendor lookup with graceful fallback
  • Sequential Network IDs - Auto-sorted by signal strength (1-N)

๐Ÿ›ก๏ธ Safety & Reliability

  • Smart Interface Detection - Automatic WiFi adapter selection with validation
  • Monitor Mode Management - Safe enable/disable with cleanup handlers
  • NetworkManager Handling - Selective stopping (VM-aware)
  • Signal Handlers - Proper Ctrl+C handling with graceful cleanup
  • Temporary File Management - Auto-cleanup of capture files

๐ŸŽจ User Experience

  • Interactive Interface - Ctrl+C to stop scanning, not exit
  • Progress Tracking - Real-time countdowns and progress bars
  • Color-Coded Output - Signal strength visualization
  • Client MAC Tables - Formatted display of detected devices
  • Detailed Results - Saved reports with timestamps

Screenshot

Screenshot Example Screenshot Example


๐Ÿ“‹ Requirements

  • OS: Linux (Debian/Ubuntu/Kali recommended)
  • Python: 3.10+
  • Tools: aircrack-ng suite (airmon-ng, airodump-ng, aireplay-ng, aircrack-ng)
  • Privileges: Root/sudo access required
  • Wi-Fi Adapter: Monitor-mode capable (e.g., TP-Link TL-WN722N V1, ALFA AWUS036ACS, AR9271)

Python Dependencies

pip install rich mac-vendor-lookup

Or using uv (recommended):

uv pip install rich mac-vendor-lookup

๐Ÿš€ Installation

# Install aircrack-ng suite
sudo apt update && sudo apt install aircrack-ng

# Clone repository
git clone https://github.com/Mysteriza/wifyte.git
cd wifyte

# Install Python dependencies
sudo python3 -m pip install -r requirements.txt

# Run the tool
sudo python3 main.py

๐Ÿ“– Usage

Basic Usage

To run with root privileges (required) while using the virtual environment:

sudo ./.venv/bin/python3 main.py

Or if you installed dependencies globally:

sudo python3 main.py

Workflow

  1. Interface Selection - Auto-detects WiFi adapters (internal/external)
  2. Monitor Mode - Automatically enables monitor mode
  3. Network Scanning - Continuous live scan (press Ctrl+C when ready)
  4. Target Selection - Choose one or multiple networks (e.g., "1, 2, 5")
  5. Client Detection - 15s scan with progress bar
  6. Deauthentication - Parallel threading for speed
  7. Handshake Capture - Real-time monitoring (~3-5s detection)
  8. Password Cracking - Dictionary attack with aircrack-ng
  9. Results - Saved to results/ directory

๐ŸŽฏ Example Session

WiFi Handshake Capture & Cracking Tool

[*] Available WiFi Interfaces:
  [1] wlp1s0 (Internal) - โš ๏ธ Likely unsupported!
  [2] wlx18d6c70831ae (External)
[?] Select interface: 2

[+] Monitor mode active on wlan0mon

โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ 14 Networks Found - Scanning... โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ ID โ”‚ SSID          โ”‚ CH โ”‚ PWR  โ”‚ ENC       โ”‚ VENDOR โ”‚
โ”œโ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ 1  โ”‚ HomeNetwork   โ”‚ 7  โ”‚ 61%  โ”‚ WPA2 CCMP โ”‚ ZTE    โ”‚
โ”‚ 2  โ”‚ <HIDDEN SSID> โ”‚ 11 โ”‚ 57%  โ”‚ WPA2      โ”‚ Huawei โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

[?] Select Targets: 1

โ ‹ Scanning for clients โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ 15/15s

โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โœ“ 5 Client(s) Detected โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚  #  โ”‚ Client MAC          โ”‚
โ”‚  1  โ”‚ 98:AF:65:17:C9:FB   โ”‚
โ”‚  2  โ”‚ 0C:98:38:DA:4F:9D   โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

[*] Deauthenticating clients...
[+] Deauthentication completed!

๐Ÿ“ก Capturing handshake for HomeNetwork...
โฑ Time: 5s / 60s | Remaining: 00:55
โœ“ Handshake detected!

[*] Cracking password...
[+] Password found: mypassword123

๐Ÿ“ Project Structure

wifyte/
โ”œโ”€โ”€ main.py              # Entry point & orchestration
โ”œโ”€โ”€ interface.py         # Interface detection & monitor mode
โ”œโ”€โ”€ scanner.py           # Network scanning & client detection
โ”œโ”€โ”€ capture.py           # Handshake capture logic
โ”œโ”€โ”€ cracker.py           # Password cracking
โ”œโ”€โ”€ utils.py             # Helper functions
โ”œโ”€โ”€ wifyte.txt           # Default wordlist
โ”œโ”€โ”€ handshakes/          # Captured handshakes (.cap)
โ”œโ”€โ”€ results/             # Cracking results (.txt)
โ””โ”€โ”€ temp/                # Temporary scan files

๐Ÿ”ง Configuration

Wordlist

Default: wifyte.txt (included)

Custom wordlist:

# In main.py, modify:
self.wordlist = "/path/to/your/wordlist.txt"

Popular wordlists:

Scan Duration

Client detection: 15 seconds (configurable)

# In capture.py:
clients = detect_connected_clients(self, network, duration=15)

๐ŸŽจ Features Showcase

Live Network Scanning

  • Continuous updates without scrolling
  • Ctrl+C stops scan, not program
  • Auto-sorted by signal strength
  • Vendor lookup for each BSSID
  • HIDDEN SSID detection and decloaking

Client Detection

  • Progress bar with countdown
  • 15-second scan for better accuracy
  • Rich table display of MACs

Handshake Capture

  • Fast detection (~3-5 seconds typical)
  • Parallel deauth using threading
  • Real-time countdown with styled output

โš ๏ธ Legal Disclaimer

FOR EDUCATIONAL PURPOSES ONLY

This tool is intended for:

  • Authorized penetration testing
  • Security research on YOUR OWN networks
  • Educational purposes in controlled environments

UNAUTHORIZED ACCESS TO NETWORKS IS ILLEGAL

Users are responsible for compliance with local laws. The author assumes no liability for misuse.

By using this tool, you agree to:

  • Use it only on networks for which you have explicit permission
  • Refrain from illegal, malicious, or unauthorized activities
  • Understand that misuse may violate applicable laws

๐Ÿ› Troubleshooting

Interface Issues

Problem: No WiFi interfaces detected

# Check interfaces
iwconfig
ip link

# Ensure wireless tools installed
sudo apt install wireless-tools

Problem: Monitor mode fails

# Kill interfering processes
sudo airmon-ng check kill

# Manual monitor mode
sudo ip link set wlan0 down
sudo iw dev wlan0 set type monitor
sudo ip link set wlan0 up

Capture Issues

Problem: No clients detected

  • Ensure network has active clients
  • Increase scan duration to 20-30s
  • Try different times of day

Problem: Handshake not captured

  • Ensure clients reconnect after deauth
  • Check capture file manually: aircrack-ng handshake.cap
  • Verify network encryption (WPA/WPA2 only)

VM Environment

Problem: USB adapter not recognized

  • Ensure USB passthrough enabled
  • Check adapter in VMware/VirtualBox settings
  • Verify driver support: lsusb and dmesg

๐Ÿค Contributing

Contributions welcome! Please:

  1. Fork the repository
  2. Create feature branch
  3. Commit changes
  4. Push to branch
  5. Create Pull Request

๐Ÿ“œ License

MIT License - see LICENSE file


๐Ÿ™ Credits

  • aircrack-ng - Core WiFi tools
  • Rich - Beautiful terminal UI
  • mac-vendor-lookup - MAC address vendor database
  • Wifite2 - Inspiration for workflow and features

๐Ÿ“ Changelog

v2.0 (Latest) - Optimization Release

  • โœจ Continuous real-time scanning with live display
  • โœจ Rich modern UI (panels, tables, progress bars)
  • โœจ Improved VM detection (no false positives)
  • โœจ Vendor lookup with graceful fallback
  • โœจ 15-second client detection with progress
  • โœจ Sequential network IDs sorted by signal
  • ๐Ÿ› Fixed Ctrl+C behavior during scanning
  • ๐Ÿ› Fixed screen clearing issues
  • โšก Maintained original fast capture speed
  • โšก Threading-based parallel deauthentication

v1.0 - Initial Release

  • Basic handshake capture & cracking
  • Monitor mode management
  • Client detection & deauthentication
  • HIDDEN SSID decloaking
  • Multi-target support

๐Ÿ“ง Contact

For issues, questions, or suggestions:


Happy Ethical Hacking! ๐Ÿ”

About

Wifyte is a lightweight and optimized tool designed to automate capture WiFi handshakes and crack passwords using the aircrack-ng suite.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages