hash3liZer/WiFiBroot

GitHub: hash3liZer/WiFiBroot

一款基于 Python/scapy 的无线网络安全测试工具,集成 WPA/WPA2 握手包捕获、PMKID 攻击及字典破解功能。

Stars: 1070 | Forks: 185

WiFiBroot

A Wireless Pentest/Cracking Tool for 4-way Handshake & PMKID

## 描述 WiFiBroot 旨在为客户端提供破解 WiFi (WPA/WPA2) 网络的一体化工具。它高度依赖 **scapy**,这是一个功能丰富的 Python 数据包操作库。除了在不同的信道上操作无线接口外,其内部几乎每个过程都在某种程度上依赖于 scapy 层和其他函数。无线接口操作将通过原生 linux 命令 **iwconfig** 完成,你可能需要 *sudo* 权限才能执行。目前它提供 **四种** 独立的工作模式来处理目标网络。其中两种是在线破解方法,而另一种在离线模式下运行。离线模式用于破解从前两种模式保存的哈希值。另一种用于对无线网络进行去认证攻击,也可作为干扰处理程序。它可以在多种 linux 平台上运行,并且至少需要 tp-link 的 WN727N 才能正常操作。 ## 安装: 它仅适用于 **Python 2** WiFiBroot 高度依赖 scapy。因此,你需要安装 scapy。几乎所有其他库可能已经安装在你的系统上。请确保你安装的 scapy 版本为 `<=2.4.0`。较新的版本可能会引发一些未知错误。 ``` $ sudo pip install scapy==2.4.0 ``` 该脚本应在 **sudo** 下运行,但即使未在 root 模式下运行,它仍然可以工作。基本的必要参数是: ``` $ sudo python wifibroot.py -i [interface] -d /path/to/dictionary -m [mode] ``` ## 文档 : WiFiBroot 使用模式来识别你想对目标执行哪种攻击。目前有三种可用模式。可以通过在 **-m/--mode** 选项后紧接 **--help/-h** 选项来查看每种模式的用法。以下是可用模式及其功能的列表: ### 模式: ``` Syntax: $ python wifibroot.py [--mode [modes]] [--options] $ python wifibroot.py --mode 2 -i wlan1mon --verbose -d /path/to/list -w pmkid.txt Modes: # Description Value 01 Capture 4-way handshake and crack MIC code 1 02 Captures and Crack PMKID (PMKID Attack) 2 03 Perform Manual cracking on available capture types. See --list-types 3 04 Deauthentication. Disconnect two stations and jam the traffic. 4 Use -h, --help after -m, --mode to get help on modes. ``` 每种模式都有特定的用途和各自的选项: ### 握手 (HANDSHAKE): ``` Mode: 01 Capture 4-way handshake and crack MIC code 1 Options: Args Description Required -h, --help Show this help manual NO -i, --interface Monitor Interface to use YES -v, --verbose Turn off Verbose mode. NO -t, --timeout Time Delay between two deauth requests. NO -d, --dictionary Dictionary for Cracking YES -w, --write Write Captured handshake to a seperate file NO --deauth Number of Deauthentication frames to send NO Filters: -e, --essid ESSID of listening network -b, --bssid BSSID of target network. -c, --channel Channel interface should be listening on. Default: ALL ``` ### PMKID 攻击 (PMKID ATTACK) ``` Mode: 02 Captures and Crack PMKID (PMKID Attack) 1 Options: Args Description Required -h, --help Show this help manual NO -i, --interface Monitor Interface to use YES -v, --verbose Turn off Verbose mode. NO -d, --dictionary Dictionary for Cracking YES -w, --write Write Captured handshake to a seperate file NO Filters: -e, --essid ESSID of listening network -b, --bssid BSSID of target network. -c, --channel Channel interface should be listening on. Default: ALL ``` ### 离线破解 (Offline Cracking) ``` Mode: 03 Perform Manaul cracking on available capture types. See --list-types 3 Options: Args Description Required -h, --help Show this help manual NO --list-types List available cracking types NO --type Type of capture to crack YES -v, --verbose Turn off Verbose mode. NO -d, --dictionary Dictionary for Cracking YES -e, --essid ESSID of target network. Only for HANDSHAKE Type YES -r, --read Captured file to crack YES ``` ### 去认证攻击 (DEAUTHENTICATION ATTACK) (压力测试) ``` Mode: 04 Deauthentication. Disconnect two stations and jam the traffic. 4 Options: Args Description Required -h, --help Show this help manual NO -i, --interface Monitor Mode Interface to use YES -0, --count Number of Deauthentication frames to send. '0' specifies unlimited frames YES --ap Access Point MAC Address NO --client STA (Station) MAC Address NO ``` ### 示例 捕获 4 次握手并破解 MIC 码: ``` $ python wifibroot.py --mode 1 -i wlan1mon --verbose -d dicts/list.txt -w output.cap ``` 捕获并破解 PMKID: ``` $ python wifibroot.py --mode 2 -i wlan1mon --verbose -d dicts/list.txt -w output.txt ``` 离线破解握手和 PMKID: ``` $ python wifibroot.py --mode 3 --type handshake --essid "TARGET ESSID" --verbose -d dicts/list.txt --read output.cap $ python wifibroot.py --mode 3 --type pmkid --verbose -d dicts/list.txt --read output.txt ``` 各种形式的去认证攻击: ``` # Ultimate Deauthentication 攻击: $ python wifibroot.py --mode 4 -i wlan1mon -00 --verbose # 断开所有客户端与 Access Point 的连接: $ python wifibroot.py --mode 4 -i wlan1mon --ap [AP MAC] --verbose # 断开特定客户端: $ python wifibroot.py --mode 4 -i wlan1mon --ap [AP MAC] --client [STA MAC] --verbose ``` ## 支持 网站: [https://www.shelvoide.com](https://www.shellvoide.com)
Twitter: [@hash3liZer](https://twitter.com/hash3liZer)
邮箱: [admin@shellvoide.com](mailto://admin@shellvoide.com)
标签:ASM汇编, Deauth攻击, DNS枚举, PMKID攻击, Python安全工具, Scapy, WiFi渗透测试, WPA/WPA2破解, 压力测试, 四步握手包捕获, 密码字典攻击, 无线干扰, 网络安全工具