尽管WEP并不安全,但是,生活中仍然有人在无线网络中使用WEP。破解WEP的工具和方法有很多种,主要分为有客户端环境和无客户端环境两大类。有客户端环境指无线网络中存在活动的无线客户端。这里简要介绍一个有客户端环境的破解WEP的方法。
由于WEP破解基于有效数据报文的积累,也就是常说的IVS。当收集到足够数量的IVS数据报文后,相应破解工具就能进行破解。虽然说依靠单纯的等待也能够抓取足够数量的报文,但如何提高数据包的捕获速度也是破解WEP时要考虑的。目前最为广泛使用的无线WEP攻击中,主要采用通过回注数据报文来刺激无线接入点AP做出响应,从而来达到增大无线数据流量的目的。
下面就以最为广泛使用的Aircreak-ng工具套件为例,给出破解WEP密码的步骤及命令,如表8-2所示。其中wlan0为无线网卡的名称,wlan0mon为处于监听模式的无线网卡名称。
注意,Aircreak-ng不是一个可以在Windows中运行的工具套件,它运行在Linux系统中。已经有人将这个工具及其他黑客工具集成到一个专用的Linux系统中,这个系统早期叫作BackTrack,2013年改名为Kali Linux。可以在这里下载它:https://www.kali.org/。Kali Linux有多个版本,有64bit版和32bit版,还有虚拟机版(VMware VM或VirtualBox)。不过,虚拟机版的Kali Linux不能识别本机内置的网卡,但可以识别USB网卡。
表8-2 使用Aircrack-ng的工具破解WEP的步骤
下面按照表8-2的步骤演示破解WEP密码的过程。在做这个练习的时候需要先搭建实验环境,应使用自己的Wi-Fi进行实验,不要尝试破解他人的Wi-Fi。
(1)打开一个Shell输入“ifconfig wlan0 up”命令来启用无线网卡(同理“ifconfig wlan0 down”就是关闭无线网卡),如图8-11所示。图8-11还显示了执行“ifconfig -a”命令之后显示的无线网卡wlan0的信息,其中ether之后的“38:59:f9:e9:07:09”是无线网卡的MAC地址,后面会用到。
图8-11 激活无线网卡
(2)输入“airmon-ng start wlan0”命令尝试开启网卡的监听模式,如图8-12所示。
如果无法开启监听模式,则输入“airmon-ng check kill”命令来找到冲突的进程ID。然后输入“kill冲突进程ID”命令来杀死这个进程,再次尝试用airmon-ng来开启网卡监听模式。
开启监听模式完成之后,使用ifconfig命令来找到开启监听模式的网卡名称,通常是wlan0mon或者是mon。图8-12显示的是wlan0mon。
(3)输入“airodump-ng wlan0mon”命令来查看检测到的无线网络。然后选择要破解的WiFi,记下其BSSID(即MAC地址)和频道号,如图8-13和图8-14所示。这里选择图8-14中显示的第一个无线网络,即ESSID为“d-link_99536”的无线网络作为破解对象。其BSSID是“1C:5F:2B:A0:E9:A8”,频道号是1。
图8-12 为无线网卡开启监听模式
图8-13 输入“airodump-ng wlan0mon”命令
图8-14 检测到的无线网络列表
记下BSSID和频道号后,按Ctrl+C键停止airodump-ng程序。(www.daowen.com)
(4)输入“airodump-ng -c 1 --bssid 1C:5F:2B:A0:E9:A8 -w test --ivs wlan0mon”命令开始捕获无线数据包,其中test是数据包存入的文件名,如图8-15所示。图8-16是捕获数据包的过程界面。
图8-15 执行捕获无线数据包的命令
图8-16 捕获无线数据包界面
不要关闭图8-16所示的窗口,开启新的Shell来执行其他命令。这个程序需要保持开启来抓取数据包。
(5)输入“aireplay-ng -3 -b目标Wi-Fi的BSSID -h连接在目标Wi-Fi上客户端的BSSID wlan0mon”来进行ARP请求攻击,从而加速破解的过程,如图8-17所示。其中的“-h 38:59:f9:e9:07:09”是实验用的无线网卡的MAC地址(即BSSID)。
说明:若连接在目标Wi-Fi上AP的无线客户端正在进行大流量的交互,如正在使用BT工具下载大文件,则依靠单纯的抓包就可以破解出WEP密码。但是有时候这样等待显得过于漫长,于是就采用了一种称之为“ARP Request”的方式来读取ARP请求包,伪造数据包并再次重发出去,以便刺激AP产生更多的数据包,从而加快破解过程。这种方法就称之为ArpRequest注入攻击。
图8-17 对目标Wi-Fi执行ArpRequest注入攻击
等待一会儿后,aireplay-ng就会开始接收到大量的回复,这时查看开启了airodump-ng的窗口,你会发现#Data这一栏开始迅速增长。当#Data增长到1万以上就可以进行破解了,如图8-16所示。
(6)输入“aircrack-ng 存放捕获数据包的文件名”命令来分析存储在本地的数据包并破解WEP密码,如图8-18和图8-19所示,显示破解成功,WEP的密码是“ma@c&”。
在抓取的无线数据包达到了一定数量后,就可以开始破解了。若破解不成功就继续抓取数据包,多试几次。注意,此处不需要将进行注入攻击的Shell关闭,而是另外开一个Shell进行同步破解。
图8-18 输入破解命令
图8-19 破解完成
提醒,在使用命令破解之前,可以输入ls命令查看当前目录的文件信息,确定存放捕获数据包的文件名。本例的文件名是test-01.ivs。
最后需要说明的是,Aircreak-ng工具也可以用来破解WAP和WAP2的密码。不过,因为WAP和WAP2自身相当安全,破解它们的前提是WAP和WAP2的密码比较简单,或者恰好被攻击者猜中,并被放在密码字典里。只要WAP和WAP2密码足够复杂,要破解它们几乎是不可能的。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。