阅读本文大概需要 3.3 分钟
最近因为工作比较忙,没有时间更新公众号。让各位看官久等了!
今天给大家带来的是,使用 Kali Linux 破解 WIFI 密码。
准备工作
- 装有 Kali Liux 的电脑一台
- 一个支持监听模式的无线网卡(例如:RT 3070)
- 至少一个可连接的 WIFI
开始行动
注:以下所有命令均使用 root 用户运行。
我是在虚拟机上安装的 Kali Linux。首先打开 Kali Linux,进入系统。
插入在某宝 20 块钱买的 RT 3070 无线网卡。
如上所示,将网卡分配给虚拟机。
使用 iwconifg
查看一下当前网卡。
可以看到 wlan0,这就是我刚刚插入的无线网卡。
再使用 airmon-ng
命令列出支持监听的网卡列表。
可以看到 wlan0,说明我的无线网卡是支持监听的。如果没有任何输出,说明当前无线网卡不支持监听。
扫描 WIFI
接下来开启网卡的监听模式,扫描周围的 WIFI 热点。
使用 airmon-ng start wlan0
命令。wlan0 就是对应的网卡名称。
出现如下输出。
说明还有其他网卡处于监听状态,需要先将其关闭。按照上面提示,使用 airmon-ng check kill
。
成功停止其他进程。
使用 iwconfig
命令,可以看到当前网卡名字由 wlan0 变成了 wlan0mon。
说明其实已经开启了该网卡的监听模式。
如果没有,则再次执行 airmon-ng start wlan0
即可。
执行 airodump-ng wlan0mon
扫描 WIFI,不出意外的话可以扫描到很多。按 Ctrl + C
即可停止扫描。
这里讲一下上面几个项的大概意思。
- BSSID:路由器的 mac 地址
- PWR:路由器信号强度,绝对值越小,信号越强
- Data:路由器的在线数据吞吐量,数值越大,数据上传量越大
- CH:路由器 WIFI 所在的频道
- ESSID:路由器 WIFI 名称
攻击 WIFI,抓取握手包
在上面扫到的 WIFI 中,选一个你想要破解的。这里我选择我自己的 WIFI,就是上面的 MERCURY_5D8T。
使用以下命令,监听该 WIFI 的流量。
airodump-ng -c 6 -w ./MERCURY_5D8T --bssid 56:DF:7D:0D:55:A8 wlan0mon
简单解释一下上面几个参数。
6 是 WIFI 所在的频道,MERCURY_5D8T 是抓到的包要保存的文件名,我这里直接用 WIFI 名称。56:DF:7D:0D:55:A8 为路由器 mac 地址,最后是网卡名字。
这些参数都是在上面扫描 WIFI 的时候得到的。
监听到的流量如下图所示。
红框中的内容,Station 这一列,是当前连接了路由器的设备 mac 地址。我们等下需要对这个地址进行解除认证攻击。
如果上面一行内容都没有,说明当前没有设备连接了该路由器。那么这个时候我建议换一个时间再试试,或者换一个 WIFI。
新开一个窗口,使用以下命令,开始解除认证攻击。
aireplay-ng -0 20 -a 56:DF:7D:0D:55:A8 -c 50:EB:71:D0:89:2D wlan0mon
-0 表示攻击模式为持续攻击,20 代表攻击 20 次,如果为 0,则攻击无限次,一般十几二十次就够了。
56:DF:7D:0D:55:A8 是路由器 mac 地址,50:EB:71:D0:89:2D 是要攻击的设备 mac 地址,即上面监听到的流量的 Station 那一列。
如下。
回到刚刚监听的窗口,等待一会儿。左上角出现 WPA handshake
,说明成功抓到握手包!按 Ctrl + C
停止。
使用 ls
查看一下。
其中 MERCURY_5D8T-01.cap
中就包含了抓到的握手包,等下就要对这个文件进行破解。
别忘了关闭无线网卡监听模式。
airmon-ng stop wlan0mon
破解密码
终于到了最后一步,开始破解密码!
准备好字典。Kali Linux 自带了一份,需要先解压。
gzip -d /usr/share/wordlists/rockyou.txt.gz
开始爆破!
aircrack-ng -w /usr/share/wordlists/rockyou.txt -b 56:DF:7D:0D:55:A8 MERCURY_5D8T-01.cap
如果你运气足够好,破解成功,则会显示 KEY FOUND!
如下。
如果没有爆破出来,可能是密码比较复杂,可以尝试更换字典。
注:本文仅供学习,请勿随意攻击他人 WIFI。