aircrack-ng
测试环境 kali linux2.0
kali linux 系统安装完后就自带aircrack-ng 组件,无需自己安装,其他的系统,需要自己安装。
注意事项
电脑带无线网卡,就是可以连接wifi
如果kali linux安装在虚拟机中,是无法使用笔记本自带网卡的,需要自己外接无线网卡。
Mac上也可以是用本套工具进行破解,我在kali linux和mac上都做过。
本文,写在kali linux上测试的详细步骤。
我的电脑配置
笔记本安装了双系统,分别是win8.1和kali linux 2.0
进行抓取无线包的时候使用的内置无线网卡,因为不太想去买一块无线网卡,所以就装了双系统。
开始实战
如果不是kali linux系统,请先在官网选择适合自己操作系统的安装包进行安装。
我们还需要一本字典,字典 就是里面全是密码,然后程序就会一个一个试,因为wpa2加密的算法是不可逆的,所以,我们只能拿现有的密码,经过同样的加密算法之后,和抓包抓到的进行对比,如果相同,就可以得到明文的密码。我这里有一本很小的字典,大家也可以自己去搜索下载更为强大的字典,有一句话说:只要字典足够强大,没有破解不了的密码,只是时间的问题。 现在GPU破解效率比较高,据说可以达到CPU百倍的效率,就是说破解一个密码如果需要100个小时,那么GPU加速就可以达到1小时破解,感性趣的可以自行Google。不过,现在为了破解一个Wi-Fi密码意义不大。能破就破,不能破就算了,没必要太废工夫。 字典下载地址
打开终端,输入如下代码:
1
$ ifconfig
查看本机的网卡配置信息,确认操作系统是否正确识别了无线网卡。
列表里一般w开头的是无线网卡:我的如下图
最下面的 wlan0就是无线网卡。现在网卡的默认模式是 mode:manager。可以输入
1
$ iwconfig #查看无线网卡的详细信息,里面有一个mode项
确认无线网卡无误之后,我们开始下一步。
将无线网卡从manager模式调成monitor模式,称混杂模式,就是它会收集所有散播在空气中的无线信号的包。
输入如下代码:
1
$ airmon-ng start wlan0 # wlan0 是你的网卡名字,我这里的是 wlan0
执行情况如下:
出现这种情况,它是告诉你有3个进程有可能造成一些问题,如果,airodump-ng ,aireplay-ng,airtun-ng 停止了工作一段时间,你可以用这个命令解决,我们不想让它出现问题,所以,就直接在下面输入代码解决:
1
$ airmon-ng check kill
执行效果如下:
然后再次重新输入命令:
1
$ airmon-ng start wlan0
这个时候我们可以查看一下网卡是否真正成功的开启了混杂模式,输入:
1
$ iwconfig
你会看到,我们的网卡名称已经变了,从以前的 wlan0 变成了wlan0mon ,每个人视自己情况而定,名字记好,下面要用到。
然后我们开始进行抓包,使用命令:
1
$ airodump-ng wlan0mon
可以先用这条命令看一下附近有什么Wi-Fi信号比较好,执行效果:
其中,我们看到了很多Wi-Fi,其中有一些乱码是因为wifi名字使用了中文名称,我没有配置终端导致的,如果大家遇到同样的问题,可以自行Google解决。我来解释一下需要用到的字段的含义:
bssid :就是路由器的 mac地址
PWR :是信号的强度,一般越大越好,注意一般 大于-70就可以进行破解
CH:是信道,我们的无线网卡同一时刻只能在一个信道上工作。
ENC:是加密方式,
AUTH:是认证方式
ESSID :是Wi-Fi的名称其他字段我就不说了,详细了解可以自己查阅资料。
一般而言,DLNU是采用的 EAP-PEAP认证,企业级的wpa2,它涉及一个账号在里面,我还没有研究。
我们可以选择破解直接输入密码就能上网的路由。
比如第一个就是AUTH是PSK认证。
确定好目标之后,我们按CTRL+C使终端停止。
接下来我们查看这个路由器有多少个设备连接,输入如下命令:
1
$ airodump-ng -w 写保存文件的路径 -c 写ch的值 --bssid 写BSSID名称 写网卡名称
运行效果如下:
因为包我下午的时候抓过了,晚上回来的时候为了测试,就随便选了一个wifi就行截图,所以有些不一致,请见谅。
在这个页面你可以看到这个WIFI有两个设备连接。
我解释一下字段的名称:
BSSID:路由mac地址
STATION:客户端设备的mac地址
PWR:信号强度
注意这张图片的第一行最后面是空的。
然后就是等待了,当有人连接这个wifi的时候,他经过加密过的密码就会被我们抓取到,抓取到的图片是这样的。
不同之处在于第一行最后出现了一个 WPA handshake:
它的意思是 抓取到了这个wifi的密码。这个时候我们就可以停止抓取了,按CTRL+C停止。就行终极工作,破解.
在破解前,我可以先说一下,有时候等待是相当漫长的,为了让别人重新进行连wifi操作,我们可以开始攻击模式,使这个wifi拒绝服务,用户就会自动掉线, 然后我们停止攻击,他再连的时候就会被我们捕捉到。
我们新开一个终端窗口,注意上一个窗口不要关闭,执行使用如下命令:
1
$ aireplay-ng -c 填写CH的值,这里是1 -0 0 -a 填写你要攻击的路由的地址 -c 客户端的地址,就是station wlan0mon
我先解释每个字段的意思。
-c 的意思是信道,填写上面CH现实的值,-0 表示进行的攻击类型,我们向他无止尽的发送数据,导致它的正常通信被阻塞,-0 后面加的数字表示次数,如果写0 ,就表示无限次,它会一直进行攻击。
执行效果:
这个时候我们可以观察PWR的值,会发现他在网0上跳,表明,攻击成功。
然后我们终止攻击,还是 CTRL+C 停止。不出意外,马上就会有 handshake 了。
好了,开始进行破解。
破解
进行破解我们需要一本准备好的字典,可以从网上下,我给的这个主要是给大家看看格式是什么样子的,并没有什么杀伤力,可以网上找一本字典,集合所有常见的密码,这样破解的成功率就比较高,如果对一个人的了解,可以自己生动生成密码,这里接受一款开源的自动生成密码工具,主要是操作比较简单,
CUPP 安装方式自己看github的 readme文件进行即可。还有一些强大的字典生成工具,比如kali自带的Crunch 可以生成任意指定组合的密码。
是否破解成功取决于对方密码是否复杂,以及字典是否强大。
输入命令:
1
$ aircrack-ng 写你的字典的路径 -w 写你抓到的包路径
然后就自动开始破解了
下面是我破解成功的图片:
在图中,我们可以看到,这个wifi 的密码是 meiyoumima
好了,完成。
最后,开始进行恢复工作,否则只有通过重启才能正常使用我们的网络功能:
可以输入如下命令重启网络模块:
1
service network-manager restart
我把抓包文件也给了下载地址
把字典文件和抓包文件放一个文件夹,然后输入命令验证:
1
$ aircrack-ng -w 抓包文件路径 字典路径