Convert Figma logo to code with AI

derv82 logowifite2

Rewrite of the popular wireless network auditor, "wifite"

6,382
1,307
6,382
310

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.

4,960

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:

  1. Clone the repository:

    git clone https://github.com/derv82/wifite2.git
    
  2. Install dependencies:

    sudo apt-get install aircrack-ng reaver pixiewps bully
    
  3. 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.

4,960

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 Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

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:

  1. WPS: The Offline Pixie-Dust attack
  2. WPS: The Online Brute-Force PIN attack
  3. WPA: The WPA Handshake Capture + offline crack.
  4. WPA: The PMKID Hash Capture + offline crack.
  5. 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 both python2 and python3.
  • 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 if tshark is not found.
  • 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.
  • 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 into hashcat'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, and aircrack-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
  • 5Ghz support for some wireless cards (via -5 switch).
    • Note: Some tools don't play well on 5GHz channels (e.g. aireplay-ng)
  • 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!
  • 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.
  • 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

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: Pixie-Dust with Reaver to get PIN and Bully to get PSK


Cracking WPA key using PMKID attack: PMKID attack


Decloaking & cracking a hidden access point (via the WPA Handshake attack): Decloaking and Cracking a hidden access point


Cracking a weak WEP password (using the WEP Replay attack): Cracking a weak WEP password


Cracking a pre-captured handshake using John The Ripper (via the --crack option): --crack option