Top Related Projects
WiFi security auditing tools suite
The Rogue Access Point Framework
This is a multi-use bash script for Linux systems to audit wireless networks.
Fluxion is a remake of linset by vk496 with enhanced functionality.
Targeted evil twin attacks against WPA2-Enterprise networks. Indirect wireless pivots using hostile portal attacks.
Automatically exported from code.google.com/p/fern-wifi-cracker
Quick Overview
Wifite2 is an automated wireless attack tool designed for auditing Wi-Fi networks. It's a Python-based command-line utility that simplifies the process of cracking WEP, WPA, and WPS encrypted networks by automating various wireless attacks and tools.
Pros
- User-friendly and automated, making it accessible for both beginners and experienced penetration testers
- Supports multiple attack methods, including WPS Pixie-Dust, WPS Pin Brute-Force, and dictionary attacks
- Actively maintained and regularly updated with new features and bug fixes
- Integrates well with other popular wireless hacking tools like Aircrack-ng and Reaver
Cons
- Requires root privileges, which may pose security risks if used improperly
- Dependent on external tools, which need to be installed separately
- May not work on all wireless adapters, especially those without monitor mode support
- Can be detected by advanced intrusion detection systems due to its aggressive nature
Getting Started
To get started with Wifite2, follow these steps:
-
Clone the repository:
git clone https://github.com/derv82/wifite2.git
-
Install dependencies:
sudo apt-get install aircrack-ng reaver pixiewps bully
-
Run Wifite2:
cd wifite2 sudo ./Wifite.py
Note: Ensure you have the necessary permissions and are complying with all applicable laws and regulations when using this tool.
Competitor Comparisons
WiFi security auditing tools suite
Pros of aircrack-ng
- More comprehensive suite of tools for wireless network security assessment
- Offers lower-level control and flexibility for advanced users
- Wider range of supported wireless card chipsets
Cons of aircrack-ng
- Steeper learning curve, especially for beginners
- Requires manual execution of multiple tools for a complete attack
- Less user-friendly interface compared to Wifite2
Code Comparison
aircrack-ng
airodump-ng wlan0
aireplay-ng -0 5 -a [BSSID] wlan0
aircrack-ng -w wordlist.txt capture.cap
Wifite2
wifite --dict wordlist.txt
Wifite2 simplifies the process by automating multiple steps in a single command, while aircrack-ng requires separate commands for each phase of the attack. Aircrack-ng provides more granular control but demands greater user expertise.
The Rogue Access Point Framework
Pros of Wifiphisher
- More focused on social engineering attacks and phishing
- Offers customizable phishing scenarios
- Provides a web interface for easier management
Cons of Wifiphisher
- Less automated than Wifite2
- Requires more user interaction and setup
- Limited to specific attack vectors
Code Comparison
Wifiphisher (Python):
def start(self):
self.network_manager.start()
self.template_manager.start()
self.access_point.start()
self.phishinghttp.start()
Wifite2 (Python):
def attack_wpa(self, target):
self.crack_result = None
self.crack_result = self.try_crack_handshake(target)
self.result = self.crack_result
Both projects are written in Python, but their approaches differ. Wifiphisher focuses on setting up phishing scenarios, while Wifite2 is more oriented towards automated cracking attempts.
Wifite2 is generally easier to use for beginners and offers a broader range of attack methods. It's more suitable for quick penetration testing and automated audits. Wifiphisher, on the other hand, excels in creating convincing phishing attacks and is better suited for targeted social engineering attempts.
The choice between the two depends on the specific use case and the user's level of expertise in wireless security testing.
This is a multi-use bash script for Linux systems to audit wireless networks.
Pros of airgeddon
- More comprehensive suite of wireless auditing tools
- User-friendly interface with menu-driven options
- Supports multiple languages and customization options
Cons of airgeddon
- Larger codebase, potentially more complex to maintain
- May have a steeper learning curve for beginners
- Requires more dependencies to be installed
Code Comparison
airgeddon:
function set_chipset() {
debug_print
if [ "$AIRMON_INSTALLED" = "0" ]; then
chipset=$(airmon-ng | grep "${interface}" | awk '{print $4,$5,$6,$7}')
else
chipset="Unknown"
fi
}
wifite2:
def get_interface_chipset(iface):
output = Process(['ethtool', '-i', iface]).stdout()
if 'driver:' in output:
return output.split('driver:')[1].split('\n')[0].strip()
return ''
The code snippets show different approaches to identifying wireless chipsets. airgeddon uses a bash function with airmon-ng, while wifite2 employs a Python function utilizing ethtool. This reflects the overall design philosophy of each tool: airgeddon as a comprehensive bash-based suite and wifite2 as a more focused Python-based tool.
Fluxion is a remake of linset by vk496 with enhanced functionality.
Pros of Fluxion
- More user-friendly interface with graphical elements
- Offers a wider range of attack vectors and customization options
- Includes social engineering techniques for capturing credentials
Cons of Fluxion
- Requires more setup and dependencies
- Less frequently updated compared to Wifite2
- May be considered more complex for beginners
Code Comparison
Wifite2 (Python):
def crack_handshake(self, handshake, wordlist):
cmd = ['aircrack-ng',
'-w', wordlist,
'-b', handshake.bssid,
handshake.capfile]
proc = Process(cmd)
return proc.stdout()
Fluxion (Bash):
function startAttack() {
xterm $FLUXIONHoldXterm -title "FLUXION AP" -e \
"sleep 1; airbase-ng -c $channel -e \"$essid\" -v $iface1mon" &
xterm $FLUXIONHoldXterm -title "FLUXION Deauthenticator" -e \
"sleep 2; aireplay-ng --deauth 0 -a $bssid --ignore-negative-one $iface1mon" &
}
Both repositories focus on WiFi security testing, but Fluxion offers a more comprehensive approach with its graphical interface and social engineering techniques. Wifite2, on the other hand, provides a simpler, command-line based tool that may be easier for beginners to use and understand. The code snippets demonstrate the different approaches: Wifite2 uses Python for a straightforward cracking function, while Fluxion employs Bash scripts for a more complex attack setup.
Targeted evil twin attacks against WPA2-Enterprise networks. Indirect wireless pivots using hostile portal attacks.
Pros of eaphammer
- Specialized for targeted rogue access point attacks and EAP-based Wi-Fi networks
- Includes advanced features like hostile portal attacks and captive portal cloning
- Offers more granular control over attack parameters and configurations
Cons of eaphammer
- Steeper learning curve due to more complex features and options
- Less automated than Wifite2, requiring more manual intervention
- Focused primarily on enterprise Wi-Fi attacks, less versatile for general Wi-Fi hacking
Code Comparison
eaphammer:
def hostile_portal():
configure_hostapd()
start_httpd()
start_dnsmasq()
start_hostapd()
Wifite2:
def attack_wpa(target):
crack_handshake(target)
if not handshake_captured:
perform_pixie_dust_attack(target)
The code snippets highlight the different focus areas of the tools. eaphammer's code shows its emphasis on setting up rogue access points, while Wifite2's code demonstrates its automated approach to cracking WPA networks.
eaphammer is more suitable for advanced users targeting enterprise networks, while Wifite2 offers a more user-friendly and automated approach for general Wi-Fi hacking tasks. The choice between the two depends on the specific use case and the user's level of expertise.
Automatically exported from code.google.com/p/fern-wifi-cracker
Pros of Fern-wifi-cracker
- User-friendly graphical interface, making it more accessible for beginners
- Supports multiple attack methods, including WEP, WPA/WPA2, and WPS
- Includes additional features like network mapping and vulnerability assessment
Cons of Fern-wifi-cracker
- Less actively maintained compared to Wifite2
- May have compatibility issues with newer wireless adapters
- Limited command-line options for advanced users
Code Comparison
Fern-wifi-cracker (Python):
from PyQt4 import QtCore, QtGui
import os
class mainwindow(QtGui.QMainWindow):
def __init__(self):
QtGui.QMainWindow.__init__(self)
self.setupUi(self)
Wifite2 (Python):
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from .config import Configuration
from .util.color import Color
def entry_point():
Configuration.initialize(load_interface=False)
Both projects are written in Python, but Fern-wifi-cracker uses PyQt4 for its GUI, while Wifite2 is primarily command-line based. Wifite2's code structure appears more modular and organized, with separate configuration and utility modules.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
Wifite
This repo is a complete re-write of wifite
, a Python script for auditing wireless networks.
Wifite runs existing wireless-auditing tools for you. Stop memorizing command arguments & switches!
Wifite is designed to use all known methods for retrieving the password of a wireless access point (router). These methods include:
- WPS: The Offline Pixie-Dust attack
- WPS: The Online Brute-Force PIN attack
- WPA: The WPA Handshake Capture + offline crack.
- WPA: The PMKID Hash Capture + offline crack.
- WEP: Various known attacks against WEP, including fragmentation, chop-chop, aireplay, etc.
Run wifite, select your targets, and Wifite will automatically start trying to capture or crack the password.
Supported Operating Systems
Wifite is designed specifically for the latest version of Kali Linux. ParrotSec is also supported.
Other pen-testing distributions (such as BackBox or Ubuntu) have outdated versions of the tools used by Wifite. Do not expect support unless you are using the latest versions of the Required Tools, and also patched wireless drivers that support injection.
Required Tools
First and foremost, you will need a wireless card capable of "Monitor Mode" and packet injection (see this tutorial for checking if your wireless card is compatible and also this guide). There are many cheap wireless cards that plug into USB available from online stores.
Second, only the latest versions of these programs are supported and must be installed for Wifite to work properly:
Required:
python
: Wifite is compatible with bothpython2
andpython3
.iwconfig
: For identifying wireless devices already in Monitor Mode.ifconfig
: For starting/stopping wireless devices.Aircrack-ng
suite, includes:airmon-ng
: For enumerating and enabling Monitor Mode on wireless devices.aircrack-ng
: For cracking WEP .cap files and WPA handshake captures.aireplay-ng
: For deauthing access points, replaying capture files, various WEP attacks.airodump-ng
: For target scanning & capture file generation.packetforge-ng
: For forging capture files.
Optional, but Recommended:
tshark
: For detecting WPS networks and inspecting handshake capture files.reaver
: For WPS Pixie-Dust & brute-force attacks.- Note: Reaver's
wash
tool can be used to detect WPS networks iftshark
is not found.
- Note: Reaver's
bully
: For WPS Pixie-Dust & brute-force attacks.- Alternative to Reaver. Specify
--bully
to use Bully instead of Reaver. - Bully is also used to fetch PSK if
reaver
cannot after cracking WPS PIN.
- Alternative to Reaver. Specify
coWPAtty
: For detecting handshake captures.pyrit
: For detecting handshake captures.hashcat
: For cracking PMKID hashes.hcxdumptool
: For capturing PMKID hashes.hcxpcaptool
: For converting PMKID packet captures intohashcat
's format.
Run Wifite
git clone https://github.com/derv82/wifite2.git
cd wifite2
sudo ./Wifite.py
Install Wifite
To install onto your computer (so you can just run wifite
from any terminal), run:
sudo python setup.py install
This will install wifite
to /usr/sbin/wifite
which should be in your terminal path.
Note: Uninstalling is not as easy. The only way to uninstall is to record the files installed by the above command and remove those files:
sudo python setup.py install --record files.txt \
&& cat files.txt | xargs sudo rm \
&& rm -f files.txt
Brief Feature List
- PMKID hash capture (enabled by-default, force with:
--pmkid
) - WPS Offline Brute-Force Attack aka "Pixie-Dust". (enabled by-default, force with:
--wps-only --pixie
) - WPS Online Brute-Force Attack aka "PIN attack". (enabled by-default, force with:
--wps-only --no-pixie
) - WPA/2 Offline Brute-Force Attack via 4-Way Handshake capture (enabled by-default, force with:
--no-wps
) - Validates handshakes against
pyrit
,tshark
,cowpatty
, andaircrack-ng
(when available) - Various WEP attacks (replay, chopchop, fragment, hirte, p0841, caffe-latte)
- Automatically decloaks hidden access points while scanning or attacking.
- Note: Only works when channel is fixed. Use
-c <channel>
- Disable this using
--no-deauths
- Note: Only works when channel is fixed. Use
- 5Ghz support for some wireless cards (via
-5
switch).- Note: Some tools don't play well on 5GHz channels (e.g.
aireplay-ng
)
- Note: Some tools don't play well on 5GHz channels (e.g.
- Stores cracked passwords and handshakes to the current directory (
--cracked
)- Includes information about the cracked access point (Name, BSSID, Date, etc).
- Easy to try to crack handshakes or PMKID hashes against a wordlist (
--crack
)
What's new?
Comparing this repo to the "old wifite" @ https://github.com/derv82/wifite
- Less bugs
- Cleaner process management. Does not leave processes running in the background (the old
wifite
was bad about this). - No longer "one monolithic script". Has working unit tests. Pull requests are less-painful!
- Cleaner process management. Does not leave processes running in the background (the old
- Speed
- Target access points are refreshed every second instead of every 5 seconds.
- Accuracy
- Displays realtime Power level of currently-attacked target.
- Displays more information during an attack (e.g. % during WEP chopchop attacks, Pixie-Dust step index, etc)
- Educational
- The
--verbose
option (expandable to-vv
or-vvv
) shows which commands are executed & the output of those commands. - This can help debug why Wifite is not working for you. Or so you can learn how these tools are used.
- The
- More-actively developed.
- Python 3 support.
- Sweet new ASCII banner.
What's gone?
- Some command-line arguments (
--wept
,--wpst
, and other confusing switches).- You can still access some of these obscure options, try
wifite -h -v
- You can still access some of these obscure options, try
What's not new?
- (Mostly) Backwards compatible with the original
wifite
's arguments. - Same text-based interface everyone knows and loves.
Screenshots
Cracking WPS PIN using reaver
's Pixie-Dust attack, then fetching WPA key using bully
:
Cracking WPA key using PMKID attack:
Decloaking & cracking a hidden access point (via the WPA Handshake attack):
Cracking a weak WEP password (using the WEP Replay attack):
Cracking a pre-captured handshake using John The Ripper (via the --crack
option):
Top Related Projects
WiFi security auditing tools suite
The Rogue Access Point Framework
This is a multi-use bash script for Linux systems to audit wireless networks.
Fluxion is a remake of linset by vk496 with enhanced functionality.
Targeted evil twin attacks against WPA2-Enterprise networks. Indirect wireless pivots using hostile portal attacks.
Automatically exported from code.google.com/p/fern-wifi-cracker
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot