WiFiBroot 旨在为客户提供破解 WiFi(WPA/WPA2)网络的一站式工具。它重度依赖 scapy,这是一个功能强大的 Python 数据包操作库。除了使用本地 Linux 命令 iwconfig(可能需要 root 权限)切换无线接口的信道外,几乎所有流程都依赖于 scapy 的层和其他函数。目前,它提供 四个 独立的工作模式来处理目标网络。其中两个是在线破解方法,另一个是离线模式。离线模式用于破解前两种模式捕获的哈希值。还有一个模式用于对接入点发起解除认证攻击,也可用作干扰工具。它可以运行在各种 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 选项即可查看每个模式的用法。以下是可用模式及其功能列表:
语法:
$ python wifibroot.py [--mode [modes]] [--options]
$ python wifibroot.py --mode 2 -i wlan1mon --verbose -d /path/to/list -w pmkid.txt
模式:
# 描述 值
01 捕获四步握手并破解 MIC 码 1
02 捕获并破解 PMKID(PMKID 攻击) 2
03 对捕获的类型进行手动破解。
参见 --list-types 3
04 解除认证。断开两个站点的连接
并干扰流量。 4
使用 -h, --help 在 -m, --mode 后面获取模式帮助。
每个模式都有特定用途和独立选项:
模式:
01 捕获四步握手并破解 MIC 码 1
选项:
参数 描述 必需
-h, --help 显示此帮助手册 否
-i, --interface 要使用的监控接口 是
-v, --verbose 关闭详细输出模式 否
-t, --timeout 两次解除认证请求之间的
时间延迟 否
-d, --dictionary 用于破解的字典 是
-w, --write 将捕获的握手保存到
单独文件 否
--deauth 发送的解除认证帧数量 否
过滤器:
-e, --essid 监听网络的 ESSID
-b, --bssid 目标网络的 BSSID
-c, --channel 接口应监听的信道。
默认:所有信道
模式:
02 捕获并破解 PMKID(PMKID 攻击) 1
选项:
参数 描述 必需
-h, --help 显示此帮助手册 否
-i, --interface 要使用的监控接口 是
-v, --verbose 关闭详细输出模式 否
-d, --dictionary 用于破解的字典 是
-w, --write 将捕获的握手保存到
单独文件 否
过滤器:
-e, --essid 监听网络的 ESSID
-b, --bssid 目标网络的 BSSID
-c, --channel 接口应监听的信道。
默认:所有信道
模式:
03 对可用的捕获类型进行手动破解。
参见 --list-types 3
选项:
参数 描述 必需
-h, --help 显示此帮助手册 否
--list-types 列出可用的破解类型 否
--type 要破解的捕获类型 是
-v, --verbose 关闭详细输出模式 否
-d, --dictionary 用于破解的字典 是
-e, --essid 目标网络的 ESSID。
仅用于握手类型 是
-r, --read 要破解的捕获文件 是
模式:
04 解除认证。断开两个站点的连接
并干扰流量。 4
选项:
参数 描述 必需
-h, --help 显示此帮助手册 否
-i, --interface 要使用的监控模式接口 是
-0, --count 发送的解除认证帧数量。
'0' 表示无限帧 是
--ap 接入点 MAC 地址 否
--client STA(站点)MAC 地址 否
捕获四步握手并破解 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 "目标 ESSID" --verbose -d dicts/list.txt --read output.cap
$ python wifibroot.py --mode 3 --type pmkid --verbose -d dicts/list.txt --read output.txt
各种形式的解除认证攻击:
# 终极解除认证攻击:
$ python wifibroot.py --mode 4 -i wlan1mon -00 --verbose
# 断开接入点的所有客户端:
$ 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.shellvoide.com
Twitter:@hash3liZer
邮箱:[email protected]