wifite2

Rewrite of the popular wireless network auditor, "wifite"

Github星跟踪图

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

主要指标

概览
名称与所有者derv82/wifite2
主编程语言Python
编程语言Python (语言数: 3)
平台
许可证GNU General Public License v2.0
所有者活动
创建于2015-05-30 06:09:52
推送于2024-08-20 12:34:38
最后一次提交2018-09-09 10:39:57
发布数10
最新版本名称2.2.5 (发布于 )
第一版名称2.1.0 (发布于 )
用户参与
星数6.9k
关注者数353
派生数1.4k
提交数279
已启用问题?
问题数412
打开的问题数300
拉请求数19
打开的拉请求数24
关闭的拉请求数30
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?