使用Aircrack-ng破解WPA2协议无线网络


无线网络的加密协议分为WEP,WPA与WPA2,其中WEP使用一个静态的密钥来加密所有通信,由于安全性弱已经被淘汰;而WPA使用RC4加密、TKIP进行密钥管理和更新,WPA2使用更可靠的CCMP和AES(都是密码学课讲过的),是现在广泛使用的协议。

WPA/WPA2协议也并非绝对安全,比如路由器开启WPS(Wi-Fi Protected Setup)功能可以使用Reaver获取到PIN码从而获得密码:

reaver-wps - Reaver README

又比如去年10月份爆出的KRACK漏洞,是协议本身的缺陷:

WPA2 “KRACK”漏洞简介与重现

本文的攻击方法是较为简单的基于字典爆破,通过无线网卡嗅探目标网络的用于校验用户输入的握手包,使用明文密码字典碰撞握手包从而获取目标密码。

命令参考&可用字典在wpa-dictionary,以下正文。


在kali下直接进行尝试时返回报错:

> aritmon-ng
ls: 无法访问'/sys/class/ieee80211/': 没有那个文件或目录

> iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

历经一番搜索得出结论,Linux如果是物理机可以直接开工,装在虚拟机里则需要额外的无线网卡,通过USB接入。

于是我从百宝箱中翻出来了一个(虚了焦的)360随身WiFi:

不用关机直接热拔插,效果立竿见影:

开启无线网卡wlan0的监听模式:

airodump-ng wlan0mon扫描附近无线网络:

选取攻击目标,参数为MAC地址、信道数以及生成cap包名,开始嗅探:

不要停止上一步的嗅探,在另一个shell中对连接WiFi的设备进行DOS攻击,使其断线重连,当上一步shell中出现WPA handshake时说明握手包抓取成功(仅仅看到cap包生成是不行的,有可能是个空包):

使用字典爆破cap包,图中有相关涉及的所有文件。

KEY FOUND.

文章目录
|