Kali Linux无线渗透测试指南(第3版)(txt+pdf+epub+mobi电子书下载)


发布时间:2020-06-10 03:04:34

点击下载

作者:(英)卡梅伦 布坎南(Cameron Buchanan)、(印度)维韦克 拉玛钱德朗(Vivek Ramachandran)

出版社:人民邮电出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

Kali Linux无线渗透测试指南(第3版)

Kali Linux无线渗透测试指南(第3版)试读:

前言

当今世界,无线网络无处不在。全球每天都有无数人在家、在办公室或通过公共热点(public hotspot)用无线网络登录Internet,处理公、私事宜。无线网络虽然让生活变得更加轻松写意,赋予人们极高的机动性,但同时也带来了风险。近来,时常有人钻不安全的无线网络的空子入侵公司、银行以及政府机构。此类攻击的频率还在不断加剧,因为很多网络管理员都不懂如何以健壮而又万无一失的方法加固无线网络。

本书旨在帮助读者认识与无线网络有关的各种安全漏洞,以及如何通过渗透测试来发现并封堵这些漏洞。对于那些希望在无线网络安全审计方面有所作为,同时需要得到一步步实践指导的读者而言,本书属于必读书籍。本书会先解释每一种无线攻击手法,然后再用实例加以演示,通读本书,读者的所学必将圆满。

本书选用Kali Linux为平台来演示本书所有的无线攻击场景。正如读者所知,Kali Linux是世上最受欢迎的渗透测试Linux发行版。它集成了数百种安全及黑客工具,本书会用到其中的某些工具。本书的内容

第1章,“搭建无线实验环境”,教读者如何使用现成的硬件和开源软件,搭建无线网络测试实验环境。为了试水本书记载的几十个实验场景,需要先搭建好一个无线网络实验环境。本章首先列出了硬件需求,包括无线网卡、天线、接入点(AP)以及其他支持WiFi功能的设备。然后,将重点转移到软件需求上,包括操作系统、WiFi驱动程序以及相关的安全工具。最后,会介绍如何针对书中的实验搭建测试无线网络平台,以及如何借助该平台来验证各种无线配置。

第2章,“WLAN及其固有的隐患”,会重点讨论无线网络固有的设计缺陷,这样的无线网络一般都是由开箱即用的不安全网络设备搭建而成的。本章将首先借助于一款名为Wireshark的网络分析软件,引领读者简要回顾一下各种802.11 WLAN协议。这会让读者对这些协议的运作方式有一个实际的了解。最重要的是,一旦认识了管理、控制以及数据帧,理解无线客户端和AP在数据包层面上的通信方式自然也不在话下。然后,会教读者如何在无线网络中注入以及从中捕获数据包,同时会介绍一些执行相关任务的工具。

第3章,“规避WLAN验证”,揭示了破坏WLAN验证机制之法!本章会详细探讨攻陷开放验证和共享密钥验证的方法。在做相关实验的过程中,读者能学习到如何分析无线数据包,并借此弄清无线网络的身份验证机制。本章还会讲解如何攻陷隐藏了SSID以及开启MAC过滤功能的无线网络。隐藏SSID及开启MAC过滤这两种手段可使无线网络更为隐蔽,难以渗透,网管人员也经常使用,但规避起来也很容易。

第4章,“WLAN加密漏洞”,描述了WLAN协议中最脆弱的一环,即加密方法——WEP、WPA和WPA2。在过去十多年里,黑客们在这些加密方法中发现了多处缺陷,编写了多款可公开获取的软件来破解这些方法及解密数据。而且,即便WPA/WPA2在设计上非常安全,但配置错误也会导致安全漏洞,使其被轻易攻陷。本章可让读者认识每种加密方法的安全隐患,会通过某些实操来演示如何攻陷这些加密方法。

第5章,“攻击WLAN基础设施”,重点关注WLAN基础设施的漏洞。本章探讨由配置和设计问题而引发的漏洞,还会以实操的方式来演示攻击,涉及AP MAC欺骗攻击、evil twin攻击、无赖AP攻击以及拒绝服务攻击。本章将帮助读者深入了解如何对WLAN基础设施进行渗透测试。

第6章,“攻击无线客户端”,要是读者始终认为不必劳神无线客户端的安全性,那么本章将会让你大跌眼镜!大多数人在思考WLAN的安全性时,总会忽视无线客户端。本章无疑将会证明为什么在针对WLAN网络进行渗透测试时,无线客户端与AP是同等重要的。本章将研究如何发动各种无线客户端攻击(比如,蜜罐和误关联攻击、Caffe Latte攻击、解除验证和取消关联攻击、Hirte攻击、只用无线客户端的WPA个人口令破解攻击)来破坏WLAN网络安全。

第7章,“高级WLAN攻击”,着眼于更高级的攻击手段,本书至此已经涵盖了大多数针对无线基础设施和客户端的基本攻击手段。高级攻击通常涉及结合使用多种基本攻击手段,在更高难度的情况下破坏WLAN的安全性。这些高级攻击手段包括无线中间人攻击、逃避无线入侵检测和防御系统,以及部署启用自定义协议的无赖AP。本章会介绍现实世界中最前沿的无线攻击手段。

第8章,“KRACK攻击”,探讨了2017年最新发现的有关WPA2握手的漏洞。通读本章,读者将会详细了解WPA2握手的最新知识,以及如何发动这些新的攻击。

第9章,“攻击WPA-Enterprise和RADIUS”,通过介绍针对WPA-Enterprise和RADIUS服务器架设的高级攻击手段,来提升读者的水平。当读者在对依赖WPA-Enterprise和RADIUS身份验证的大型企业网络进行渗透测试,来提高其安全性时,这些攻击手段将会派上用场。

第10章,“WLAN渗透测试之道”,是对前几章所有学习内容的总结,会以抽丝剥茧般的方式来探讨如何进行无线渗透测试。本章将介绍渗透测试的各个阶段——规划(Planning)、发现(Discovery)、攻击(Attack)和报告(Reporting),以及如何将每个阶段应用于无线渗透测试。读者还将了解到在执行过无线渗透测试之后,如何提出安全建议和最佳做法。

第11章,“WPS和探测”,介绍了自本书第1版发行以来在业界发展很快的两种新型攻击手段——WPS暴力攻击(WPS brute-force)和以监控为目的的探测嗅探攻击(probe sniffing for monitoring)。本书的阅读准备

要想弄清并再现本书记载的各种实操场景,读者需要准备好两台配有内置WiFi网卡的笔记本电脑、一块USB无线WiFi适配器、Kali Linux系统以及某些其他的软硬件,详情请见第1章。

当然,也可以在一台安装了Windows OS的笔记本上创建一台容纳Kali Linux的虚拟机,用USB接口将WiFi网卡配备给该虚拟机。如此一来,就不再需要两台笔记本电脑了。这可以让读者更快地使用本书来学习,但强烈建议使用运行Kali Linux的专用电脑来完成实操场景。

读者应具备无线网络的基础知识,包括对事关802.11协议和无线客户端/AP 通信的基本认知,这也是阅读本书的前提条件。哪怕读者已经掌握了上述概念,本书在搭建实验环境的内容里,还是会简单介绍一些这方面的内容。本书的读者对象

本书适合各种水平的读者阅读,无论读者是业余水平还是无线网络安全专家,都能从本书受益。本书从最简单的攻击开始讲解,然后会解释较为复杂的攻击,最后还会探讨最前沿的攻击和研究成果。由于本书通过实操来解释所有攻击,所以无论读者是何等水平,都能很容易地掌握如何独自发动攻击。请注意,本书虽然着重介绍如何针对无线网络发动各种攻击,但真正的意图是引领读者成为无线网络渗透测试人员。身为一名称职的渗透测试人员,不但要能理解本书提及的所有攻击,而且如果客户提出请求,还能轻松地加以演示。免责申明

本书只做教学之用,旨在帮助读者测试自用系统,以应对信息安全威胁,并保护自用IT基础设施免受类似攻击。对本书所授内容的不当使用所导致的一切后果,人民邮电出版社、Packt出版社及作译者不承担任何责任。第1章搭建无线实验环境

鄙人要想花 8 小时砍一棵树,绝对会先用 6小时来磨斧子。——美国总统亚伯拉罕·林肯

每一次的成功,都要花无数的时间来准备,无线渗透测试也不例外。本章将介绍如何搭建一个为本书所用的无线实验环境。在进行真正的实战渗透测试之前,请读者先把这个实验环境当成演练的舞台!

无线渗透测试非常讲究实战,很有必要先搭建一个实验环境,在这里面,可以安全及可控的方式试水所有不同的攻击实验。讲解本书的攻击之前,必须先搭建出这样一个实验环境。

本章涵盖以下内容:● 软硬件需求;● 安装Kali Linux;● 安装并配置接入点(AP);● 安装无线网卡;● 笔记本电脑和AP之间的连通性测试。

现在开始本章的讲解!1.1 硬件需求

搭建无线实验环境需要准备的硬件如下所列。● 两台配备了内置WiFi网卡的笔记本电脑:将使用其中一台笔记本

电脑作为实验环境中的受攻击主机,另一台则用作安装渗透测试

程序的攻击主机。虽然几乎所有的笔记本电脑都能胜任这样的功

能,但还是希望能配备至少3 GB的RAM,因为在实验中可能会

运行很多耗费内存的软件。● 一块无线网络适配器(可选):或许还得准备一块USB WiFi网卡,

此卡要能在Kali Linux中支持数据包的注入和嗅探。具体需不需

这样一块网卡,要视笔记本电脑配备的无线网卡而定。Alfa

Networks公司出品的Alfa AWUS036H无线网卡无疑是最好的选

择,因为Kali Linux默认支持这种网卡。此卡在网上有售,写作

本书之际,其售价为18英镑。也可以选择Edimax EW-7711UAN

无线网卡,其在外观上要小巧一些,价格也更便宜。● 一台AP:可购买任何一款支持WEP/WPA/WPA2加密标准的

AP。本书将使用TP-LINK TL-WR841N无线路由器来作为AP进行

实操演示。写作本书之际,只要花20英镑就可以购得这款设

备。● 一条宽带上网线路(An internet connection):用于进行研究、

下载软件以及进行某些实验。1.2 软件需求

搭建无线实验环境需要准备的软件如下所列。● Kali Linux:该软件是开源软件,可以从其官方站点下载。● Windows XP/Vista/7/10:需要在其中一台笔记本电脑上安装

Windows XP、Windows Vista、Windows 7或Windows 10中的任

何一种OS。在本书的其余内容里,这台笔记本电脑将作为受攻

击主机。 请注意,虽然本书采用基于Windows的操作系统进行测

试,但所传授的技术同样适用于任何支持WiFi联网的设备,

比如,智能手机和平板电脑等。1.3 安装Kali

先来快速浏览一遍如何安装及运行Kali。

Kali将安装在其中一台笔记本电脑上,在本书的其余内容里,这台电脑将作为渗透测试主机。1.4 动手实验——安装Kali

Kali安装起来并不难。本书的安装方法是将先Kali作为Live DVD来引导并运行,再将其安装在硬盘上。

请按以下步骤执行安装。

1.将下载好的Kali ISO(本书使用的是Kali 32位ISO)刻录至可作为启动盘来引导的DVD光盘上。

2.用此DVD光盘来引导笔记本电脑,出现引导界面以后,从Boot menu中选择Install选项,如图1.1所示。图1.1

3.如果引导成功,应该会出现一个看起来很漂亮的复古界面,如图1.2所示。图1.2

4.Kali的安装程序跟大多数Linux系统基于GUI的安装程序很像,安装起来非常简单。在每个界面上选择正确的选项,就可以开始安装了。安装完毕后,要根据提示重启电脑,取出DVD。

5.电脑重启之后,会出现登录界面。请以root用户登录,密码是在安装过程中输入的密码。现在,读者应该已经登录进刚安装好的Kali Linux系统了。恭喜!

6.登录系统以后,作者会更改桌面主题,同时还会针对本书做一些系统设置。读者可根据自己的意愿设置桌面主题和颜色!实验说明

截至目前,已在一台笔记本电脑上成功安装了Kali!这台笔记本电脑将作为本书其他所有实验的渗透测试主机。尝试突破——在VirtualBox里安装Kali

也可以在VirtualBox等虚拟化软件里安装Kali。要是读者不想让Kali Linux独占一整台笔记本电脑,这是最好的安装方式。Kali在VirtualBox里的安装过程也与之前所述完全一样。唯一的区别是安装之前的准备工作,需要在VirtualBox中进行一番设置。读者可用VirtualBox来自行试水Kali的安装!

还有一种安装和使用Kali的方法是利用USB驱动器。要是读者不想将Kali安装在硬盘上,但是仍想永久性地存储Kali实例的数据(比如,脚本和新工具等),就需要使用这种安装方法。作者也鼓励读者去尝试安装一下!1.5 设置AP

现在进行AP的设置工作。如前所述,本书会用TP-LINK TL-WR841N无线路由器作为无线 AP,来完成所有实验。当然,也可以使用任何其他品牌的无线路由器来作为无线AP。操作和使用方面的基本原则全都相同。1.6 动手实验——配置无线AP

先将无线AP设置为使用开放认证(Open Authentication,OAuth),将无线网络的SSID设置为Wireless Lab。

设置步骤如下所示。

1.给AP加电,用网线将一台笔记本电脑连接到AP的以太网端口之一。

2.在笔记本电脑的浏览器中输入AP的管理IP地址。对于TP-Link无线路由器,该IP地址默认为192.168.1.1。读者应查阅自购的无线路由器的说明书,来确定其管理IP地址。要是没有无线路由器的说明书,则可执行route -n命令来查看这一IP地址。该命令输出中的网关IP地址通常就是宽带路由器的管理IP。一旦在浏览器里连接这一IP地址,将会看到一个类似于TP-LINK TLWR841N无线路由器的配置门户,如图1.3所示。图1.3

3.登录进该门户以后,就可以查看并更改AP(宽带路由器)的各种设置,包括重新配置无线网络的SSID。

4.将SSID更改为Wireless Lab。更改之后,取决于不同的AP,可能需要重启才能生效。

5.请找到与Wireless Security(无线安全)有关的设置,点选Disable Security(禁用安全)选项,如图1.4所示。“禁用安全”表示该AP启用的是开放验证模式。图1.4

6.保存AP的配置,重启AP(如有必要)。现在,这个AP应该可以对外公布一个SSID为Wireless Lab的无线网络了。

验证上述配置任务的方法非常简单,只需打开另外一台安装Windows OS的笔记本电脑,使用Windows自带的无线配置实用程序,观察可供连接的无线网络列表,看看其中有没有Wireless Lab。在列表里应该能够看见Wireless Lab,如图1.5所示。图1.5实验说明

之前已经成功配妥了一台SSID为Wireless Lab的AP。该AP正在广播自己的存在,其射频(RF)范围内的那台安装了Windows OS的笔记本电脑(以后简称Windows主机)以及其他无线设备都可以检测到它。

请注意,该AP在最不安全的开放模式下运行。建议暂时不要将此AP与Internet线路互连,因为其RF范围内的任何无线设备都可以使用它来蹭网。尝试突破——配置AP,启用WEP和WPA

请读者多找找AP的其他配置选项,尝试开启并使用AP的WEP和WPA/WPA2等加密功能。后文会介绍如何攻击运行于各种加密模式的AP。1.7 设置无线网卡

设置无线网卡要比设置AP容易得多。Kali支持Alfa AWUS036H无线网卡的“开箱即用”,并且自带了所有为数据包注入和嗅探所必备的设备驱动程序。1.8 动手实验——配置无线网卡

需要在用来执行渗透测试的笔记本电脑(以后简称渗透测试主机)上启用并设置无线网卡。

设置步骤如下所列。

1.将无线网卡插入安装了Kali Linux的笔记本电脑(以后简称Kali主机或渗透测试主机)上的一个USB接口,启动该笔记本电脑。登录后,打开控制台终端窗口,输入并执行iwconfig命令,如图1.6所示。图1.6

由图 1.6 可知,wlan0 是(Kali)为无线网卡创建的无线接口。执行ifconfig wlan0 up命令,即可激活该接口。然后,可执行ifconfig wlan0命令,来查看接口的当前状态,如图1.7所示。图1.7

2.写入Alfa无线网卡的MAC地址看起来应该近似于00:c0:ca:3e: bd:93。作者使用的是Edimax无线网卡,其MAC地址为80:1f:02: 8f:34:d5,如图1.7所示。执行上述检查的目的是,确保Kali Linux的无线接口已正确激活。实验说明

Kali Linux默认自带Alfa和Edimax网卡所需的所有驱动程序。一旦系统引导完毕,就能识别网卡,为其分配网络接口wlan0。现在,无线网卡已经激活并且可以正常运作。1.9 连接AP

接下来,该看看如何用无线网卡来连接AP了。AP的SSID为Wireless Lab,未启用任何身份验证机制。1.10 动手实验——配置无线网卡

将无线网卡连接到AP的步骤如下所列。

1.先了解一下无线网卡当前检测到的无线网络。执行无线网络扫描命令iwlist wlan0 scanning,其输出将会列出无线网卡检测到的周边所有无线网络,如图1.8所示。图1.8

向下滚动鼠标滑轮,应该能够看到无线网络Wireless Lab。按照作者的设置,该无线网络被检测为Cell 05,可能跟读者的不同。命令输出中的ESSID字段包含的是无线网络的名称。

2.由于可为多个AP配置相同的SSID,因此需要通过上述命令输出中的Address字段,来判断是否与正确的AP的MAC地址匹配。在AP(TP-LINK宽带路由器)的背面,或通过基于Web的GUI配置界面都可以很容易地看到其MAC地址。

3.接下来,请先执行iwconfig wlan0 essid "Wireless Lab"命令,然后再执行iwconfig wlan0命令来检查无线接口的状态。若已成功连接AP,在iwconfig命令的输出中的Access Point字段里,应该能够看到AP的MAC地址。

4. 如读者所知,AP的说明书里会列出其管理接口的IP地址192.168.0.1。此外,还可以在连接到AP的Kali主机上执行route -n命令,观察命令输出中默认路由器的IP地址,该IP地址一般就是AP的管理接口的IP地址。作者执行ifconfig wlan0 192.168.0.2 netmask 255.255. 255.0 up命令,为Kali Linux主机的wlan0接口配置了一个IP地址,该IP与AP的管理IP隶属同一个IP子网。执行ifconfig wlan0命令,检查其输出,即可验证IP地址是否配置成功。

5.在Kali Linux主机上执行ping 192.168.0.1命令来ping AP,如图1.9所示。若网络连接设置正确,则应该可以ping通。还可以执行arp -a命令,验证AP的MAC地址。透过该命令的输出,应该可以看到IP地址为192.168.0.1的设备的MAC地址,这正是前文提到的AP的MAC地址。请注意,某些新款AP可能不会对Internet控制消息协议(ICMP)echo request数据包做出任何回应,因此也就ping不通其管理地址了。如此行事是为了提升安全性,确保设备在开箱时的配置最小化。对于这样的AP,则需要启动浏览器访问其Web管理界面,来验证无线连接是否正常。图1.9

6.登录AP,可以通过查看系统日志来了解无线网络的连接情况。由图 1.0所示的日志内容可知,AP已经收到了MAC地址为4C:0F: 6E:70:BD:CB的无线网卡发出的DHCP请求。图1.10实验说明

之前,作者展示了如何使用无线网卡作为无线设备,让Kali Linux主机成功连接至AP。此外,还传授了如何在无线客户端和AP上了解无线网络的连接情况。尝试突破——在WEP模式下建立无线网络连接

这是一个有点难度的实验:在AP上开启WEP模式。请读者尝试在该模式下,用无线网卡与AP建立连接。

提示:可执行man iwconfig命令,查看iwconfig命令的帮助手册,来获知如何在WEP模式下配置无线网卡。随堂测验——基本知识的掌握

Q1.如何凭借ifconfig wlan0命令的输出,来判断Kali Linux主机的无线网卡是否已被激活,能否正常运作?

Q2.可单独使用Kali live CD来完成所有实验吗?可以不把CD里的东西安装进硬盘吗?

Q3.透过arp-a命令的输出,能获悉什么样的信息?

Q4.在Kali Linux中应使用什么样的工具来连接WPA/WPA2网络?1.11 总结

本章详述了如何搭建本书必备的无线网络实验环境。在搭建过程中,向读者传授了下述知识。● 如何在硬盘上以及如何通过其他安装方法(比如,虚拟机和USB

驱动器)安装Kali Linux。● 如何通过Web界面配置AP。● 使用哪些命令来配置并启用无线网卡。● 如何验证无线客户端和AP之间的连接状态。

在配置系统时,读者一定要有信心,这非常重要。要是读者的信心还不够,请回过头多看几遍前文所举示例。在本书后面的内容里,读者还将面对更为复杂的场景。

下一章,读者会了解到WLAN设计中与生俱来的安全隐患。作者将借助于网络分析工具Wireshark,以实操的方式帮助读者理解这些概念。第2章WLAN及其固有的隐患

只有地基挖得深,房子才能盖得高。——托马斯·坎佩斯

基础不牢,万事难立。用安全的行话来讲,要是有一个系统天生就有许多安全隐患,那么建在其上的任何东西都安全不到哪里去。

WLAN在设计上就存在许多安全隐患,很容易为歹人所乘,比方说,极易遭受数据包欺骗、数据包注入以及嗅探攻击(这些攻击甚至能在很远的地方发起)。本章将探讨WLAN固有的安全隐患。

本章介绍的内容包括:● 重温WLAN帧;● 帧的各种类型和子类型;● 用Wireshark来抓取管理、控制和数据帧;● 抓取某特定无线网络的数据包;● 将数据包注入某特定无线网络。

开始学习吧!2.1 重温WLAN帧

由于本书涉及无线网络安全,因此假定读者已经对无线网络协议和相关数据包的头部有基本的认知。如果不是这样,或读者接触无线网络已经有了一段时间,也可以借机来重温相关主题。

这就来快速重温读者可能已经了解的事关WLAN的某些基本概念。在WLAN中,设备之间要靠帧来通信,帧的结构如图2.1所示。图2.1“帧控制”字段的结构本身就非常复杂,如图2.2所示。图2.2“类型”字段定义了三种WLAN帧,如下所示。● 管理帧:负责维护AP和无线客户端之间的通信。管理帧可分为

若干子类型,如下所示。● 认证● 解除认证● 关联请求● 关联响应● 重新关联请求● 重新关联响应● 解除关联● 信标(Beacon)● 探测请求● 探测响应● 控制帧:负责确保AP和无线客户端之间正确的数据交换。控制

帧也可划分为若干子类型,如下所示。● 请求发送(RTS)● 清除发送(CTS)● 确认(ACK)● 数据帧:承载着无线网络中穿梭往来的实际数据。数据帧没有子

类型。

后文在讨论不同的攻击时,还会细谈以上每一种WLAN帧的安全要义。

来看一下如何在无线网络中用Wireshark抓取这些帧。当然,使用其他的工具(比如,Airodump-NG、Tcpdump或Tshark)也无不可。虽然本书大多时候都用Wireshark来抓包,但也鼓励读者研究其他抓包工具。抓包的第一步是要让(行使抓包功能的设备的)接口在监控模式下运行。为此,需要为笔记本电脑的无线网卡创建一个接口,使其可以接收到在空气中传播的所有无线帧,不管帧的实际归宿是不是该接口。对有线网络而言,这种接口所处的监控模式俗称混杂模式(promiscuous mode)。2.2 动手实验——创建运行于监控模式的接口

这就将无线网卡设置为在监控模式下运行。

请按以下步骤行事。

1.启动配备了无线网卡的Kali Linux主机。进入终端控制台,执行iwconfig命令,确认系统是否已检测到无线网卡,能否正确加载网卡驱动程序,如图2.3所示。图2.3

2.执行ifconfig wlan0 up命令,激活无线网卡(命令输出中的wlan0就是无线网卡)。执行ifconfig wlan0命令,验证无线网卡是否已被激活。若在该命令的输出中能看见UP字样,就表示已经激活了无线网卡,如图2.4所示。图2.4

3.要让无线网卡在监控模式下运行,还得使用Kali Linux默认提供的airmon-ng工具。请执行airmon-ng命令,来验证系统是否已检测到可用的无线网卡。在该命令的输出中,应该能够看到接口wlan0或wlan1,如图2.5所示。图2.5

4.执行airmon-ng start wlan0命令,创建与wlan0设备相对应的监控模式接口。这一处于监控模式的新接口会被命名为wlan0mon(可执行不带任何参数的airmon-ng命令,来验证监控模式接口是否已经创建),如图2.6所示。图2.6

5.执行ifconfig wlan0mon命令,观察其输出,应该可以看到一个名为wlan0mon的新接口,如图2.7所示。图2.7实验说明

之前,已经成功创建了一个监控模式接口,名为wlan0mon。该接口用来捕捉在空气中穿行的无线数据包。该接口基于无线网卡创建而成。尝试突破——创建多个处于监控模式的接口

可用同一块物理无线网卡去创建多个处于监控模式的接口。请读者试着使用airmon-ng实用工具来执行该操作。

太好了!监控模式接口总算创建妥当,可以坐等读取流淌于空气中的数据包了。抓包行动可以开始。

下一个实验会借助于Wireshark,通过之前创建的监控模式接口wlan0mon,来抓取过往于空气的数据包。2.3 动手实验——抓取无线数据包

抓包步骤如下所列。

1.为在第1章里就配置妥当的AP Wireless Lab加电。

2.在Kail Linux主机的终端控制台里输入Wireshark &命令,启动Wireshark程序。Wireshark主窗口弹出之后,请点击Capture |Options,会弹出图2.8所示的窗口。图2.8

3.在Interface一栏下,先选中wlan0mon,再点击窗口右下角的Start按钮,选择用wlan0mon接口抓包,会弹出图2.9所示的Capture from wlan0mon窗口。当Wireshark开始抓包时,应该能够在Wireshark抓包主窗口中看见抓到的数据包了。图2.9

4.Wireshark抓包主窗口中显示的都是无线网卡隔空捕获的数据包。要想查看任何一个数据包的内容,请先在窗口顶部的数据包列表区域中选中,再到窗口中间的数据包内容区域查看,如图2.10所示。图2.10

点击IEEE 802.11 Wireless LAN管理帧前面的小三角形,即可展开并查看该帧额外的信息。

请读者仔细查看Wireshark抓到的数据包的不同头部字段,并将这些头部字段与之前介绍过的WLAN帧的各种类型和子类型建立起联系。实验说明

在之前的实验里,用 Wireshark 隔空抓到了首批数据包!咱们启动了Wireshark,用之前创建的监控模式接口wlan0mon抓包。读者应该已经注意到,通过查看Wireshark抓包窗口底部的状态栏区域,可以了解到抓包的速度以及已经抓到的数据包的数量。尝试突破——发现其他的设备

Wireshark留痕(Wireshark trace)所保存的数据包的数量有时可能会让读者望而生畏;对一个使用人数众多的无线网络而言,可能会抓到几千个数据包。因此,重要的是要能从中挖掘出那些对自己有用的数据包。这可以通过在Wireshark中输入过滤器(过滤表达式)来完成。读者需要学会如何使用过滤器在(包括了AP和无线客户端发出的数据包的)Wireshark留痕中精确“定位”某台无线设备。

要是读者现在还做不到这些,请不要担心,这是下一节将要讲解的内容。2.4 动手实验——观看管理、控制及数据帧

本节将学习如何在Wireshark留痕中应用过滤器,来筛选并观看管理、控制和数据帧。

具体的操作步骤如下所列。

1.要想让 Wireshark 只显示所抓数据包中的所有管理帧,请在过滤器窗口中输入过滤表达式wlan.fc.type == 0,然后按回车键,如图 2.11 所示。要是不想让Wireshark抓包主窗口的数据包列表区域向下滚动的过快,可以先停止抓包。图2.11

2.要是只想筛选并查看控制帧,请将过滤表达式修改为wlan.fc.type == 1,如图2.12所示。图2.12

3.要是只想筛选并查看数据帧,请将过滤表达式修改为wlan.fc.type == 2,如图2.13所示。图2.13

4.要想筛选并查看某一类802.11帧的某一种子类型,请使用wlan.fc.subtype过滤选项。比方说,要筛选并查看所有管理帧中的信标(Beacon)帧,过滤表达式应该这么写:(wlan.fc.type == 0)&&(wlan.fc.subtype == 8),如图2.14所示。图2.14

5.还可以在抓包主窗口的数据包结构区域内,选中数据包的某个属性值,单击右键,在弹出的右键菜单里点选Apply as Filter | Selected菜单项,将该属性值添加为显示过滤器,如图2.15所示。

6.如此行事,将会在Wireshark抓包主窗口的过滤器(Filter)一栏里,自动添加正确的过滤表达式。实验说明

之前,向读者传授了如何使用显示过滤表达式在Wireshark留痕中筛选数据包。这可以让读者只关注由感兴趣的设备发出的特定数据包,无须关注Wireshark隔空抓到的所有数据包了。图2.15

此外,读者可以看见Wireshark抓到的管理、控制和数据帧的头部都是以明文方式显示,并没有加密。任何人只要能够抓到数据包,都可以看到这些头部。同样需要注意的是,这些数据包很可能是先经过了黑客的篡改,再由其重新发送回网络的。由于咱们目前尚未启用完整性检测或防重放攻击缓解机制,因此黑客很容易这么干。读者将会在后面的内容里看到类似的攻击。尝试突破——玩转Wireshark过滤器

读者可参考Wireshark使用手册,来学习与过滤表达式的写法及使用方面有关的信息。请读者研习各种过滤表达式的组合使用方法,能做到即便在数据包非常多的Wireshark留痕中,也能精确找到自己需要的蛛丝马迹。

接下来,将介绍如何窃取传播于AP和无线客户端之间的数据包。2.5 动手实验——实验环境中数据包的窃取

在本节的实验里,读者将学到如何从特定的无线网络“窃取”数据包。为了简单起见,先看看如何抓(窃)取未经任何加密的数据包。

抓取步骤如下所列。

1.给名为Wireless Lab的AP加电。保留其不启用加密的配置。

2.首先得获悉AP Wireless Lab运行于哪个信道。为此,请在Kali Linux主机的终端里执行airodump-ng --bssid wlan0mon命令,其中为AP的MAC地址。该命令一执行,终端窗口很快就会显示该AP及其所运行的信道。

3.由本书之前的截图可知,AP Wireless Lab运行于信道11。请注意,读者自建的AP可能会运行于别的信道。

为了抓取由该AP收发的数据包,需将无线网卡锁定在这个信道,即信道11。要锁定该信道,请执行iwconfig wlan0mon channel 11命令。然后,可执行iwconfig wlan0mon命令来进行验证。在该命令的输出中,应该可以看到Frequency: 2.462 GHz(频率:2.462 GHz)字样,如图2.16所示,这对应于信道11。图2.16

4.现在启动Wireshark,令其从接口wlan0mon接口抓包。开始抓包之后,在Wireshark抓包主窗口的过滤器区域中应用过滤表达式wlan.bssid == ,其中为AP Wireless Lab的bssid,如图2.17所示。图2.17

5.要想筛选并查看由AP Wireless Lab生成的数据包,过滤表达式的写法为(wlan.bssid == )&&(wlan.fc.type_subtype == 0x20)。请在作为无线客户端的笔记本电脑上打开浏览器,输入访问AP管理界面的URL。如第1章所述,该URL为http://192.168.0.1。该操作生成的数据包将会被Wireshark捕获。

6.通过抓包,可以让任何人都能轻易地对未加密的数据包进行分析,这就是要启用无线加密的原因所在。实验说明

之前,使用Wireshark外加各种过滤表达式,就可以随意隔空抓取并分析数据包。由于实验环境中的AP未启用任何加密机制,因此能够以明文方式查看到所有数据。这是一个重大安全隐患,因为处于AP射频范围内的任何人只要手握Wireshark之类的抓包工具,便可抓到所有数据包。尝试突破——分析数据包

用Wireshark对数据包做进一步分析,就会发现无线客户端会发起DHCP请求,要是无线网络内有可用的DHCP服务器,便会为无线客户端分配一个IP地址。随后,还会发现空气中还流淌着ARP数据包以及其他协议数据包。这是在无线网络中以被动方式发现主机的一个既简单又好用的方法。能够拥有抓包记录(packet trace),并且能够回溯(reconstruct)无线网络内主机所运行的应用程序之间的交流,可谓非常重要。Wireshark支持一种叫做follow stream的功能,允许一并查看隶属于同一条(TCP)流的所有数据包,这批数据包是TCP交换的一部分。

另外,请读者尝试登录任何其他受欢迎的网站,来分析由此生成的数据流。

接下来演示如何将数据包注入无线网络。2.6 动手实验——数据包注入

本节将会向读者传授如何用Kali Linux提供的aireplay-ng工具,来执行数据包注入。

执行数据包注入的步骤如下所列。

1.要执行数据包注入测试,需先启动Wireshark,再应用过滤表达式 (wlan.bssid == ) &&!(wlan.fc.type_subtype == 0x08)。如此行事的目的是,只筛选出实验环境网络中的非信标帧。

2.在Kali Linux主机的终端里执行aireplay-ng -9 -e Wireless Lab -a wlan0mon命令。

3.回到Wireshark界面,应该可以看到它抓到了很多数据包。其中的某些数据包正是由之前执行的aireplay-ng命令注入的,还有一些数据包则是AP Wireless Lab生成的数据包,作为对注入数据包的响应。实验说明

之前,利用aireplay-ng工具,成功地将数据包注入了无线实验网络。值得关注的是,Kali Linux主机的无线网卡其实并未连接AP Wireless Lab,就能将数据包随意注入网络。尝试突破——aireplay-ng工具的其他选项

在本书后面的内容里,会更加详细地讨论数据包注入;请读者自行钻研aireplay-ng工具的其他选项,使用这些选项来注入数据包。可用Wireshark隔空抓取数据包,来验证注入是否成功。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载