第3章 监听WiFi网络
网络监听是指监视网络状态、数据流程,以及网络上信息传输。通常需要将网络设备设定成监听模式,就可以截获网络上所传输的信息。这是渗透测试使用最好的方法。WiFi网络有其特殊性,所以本章讲解如何监听WiFi网络。
3.1 网络监听原理
由于无线网络中的信号是以广播模式发送,所以用户就可以在传输过程中截获到这些信息。但是,如果要截获到所有信号,则需要将无线网卡设置为监听模式。只有在这种模式下,无线网卡才能接收到所有流过网卡的信息。本节将介绍网络监听原理。
3.1.1 网卡的工作模式
无线网卡是采用无线信号进行数据传输的终端。无线网卡通常包括4种模式,分别是广播模式、多播模式、直接模式和混杂模式。如果用户想要监听网络中的所有信号,则需要将网卡设置为监听模式。监听模式就是指混杂模式,下面将对网卡的几种工作模式进行详细介绍。如下所述。
(1)广播模式(Broad Cast Model):它的物理地址(Mac)是0Xffffff的帧为广播帧,工作在广播模式的网卡接收广播帧。
(2)多播传送(MultiCast Model):多播传送地址作为目的物理地址的帧可以被组内的其他主机同时接收,而组外主机却接收不到。但是,如果将网卡设置为多播传送模式,它可以接收所有的多播传送帧,而不论它是不是组内成员。
(3)直接模式(Direct Model):工作在直接模式下的网卡只接收目的地址是自己Mac地址的帧。
(4)混杂模式(Promiscuous Model):工作在混杂模式下的网卡接收所有的流过网卡的帧,通信包捕获程序就是在这种模式下运行的。
网卡的默认工作模式包含广播模式和直接模式,即它只接收广播帧和发给自己的帧。如果采用混杂模式,一个站点的网卡将接收同一网络内所有站点所发送的数据包。这样,就可以到达对于网络信息监视捕获的目的。
3.1.2 工作原理
由于在WiFi网络中,无线网卡是以广播模式发射信号的。当无线网卡将信息广播出
第3章 监听WiFi网络
去后,所有的设备都可以接收到该信息。但是,在发送的包中包括有应该接收数据包的正确地址,并且只有与数据包中目标地址一致的那台主机才接收该信息包。所以,如果要想接收整个网络中所有的包时,需要将无线网卡设置为混杂模式。
WiFi网络由无线网卡、无线接入点(AP)、计算机和有关设备组成,其拓扑结构如图3.1所示。
图3.1 WiFi网络拓扑结构
图3.1是一个WiFi网络拓扑结构。在该网络中,正常情况下每个客户端在接收数据包时,只能接收发给自己网卡的数据。如果要开启监听模式,将会收到所有主机发出去的信号。大部分的无线网卡都支持在Linux下设置为混杂模式,但是如果无线网卡的功率小的话,发射和接收信号都比较弱。如果用户捕获远距离的数据包,接收到的信号又强,则建
议使用一个功率较大的无线网卡。如拓实G618和拓实N95,都是不错的大功率无线网卡。
3.2 配置管理无线网卡
无线网卡是终端无线网络的设备,是不通过有线连接,采用无线信号进行数据传输的
终端。在计算机操作系统中,都会有一个网络管理器来管理网络设备。本节将介绍在Kali Linux中如何管理无线网卡。
3.2.1 Linux支持的无线网卡
在日常生活中,使用的无线网卡形形色色。但是,每个网卡支持的芯片和驱动不同。对于一些无线网卡,可能在Linux操作系统中不支持。为了帮助用户对无线网卡的选择,本节将介绍一下在Linux中支持的无线网卡。Linux下支持的无线网卡,如表3-1所示。
表3-1 Linux支持的无线网卡
PHY模式 监 听 AP
adm8211 ADMtek/Infineon no ? B 驱 动
制 造 商
·47·
第2篇 无线数据篇
续表 PHY模式
监 听 AP
airo Aironet/Cisco ? ? B ar5523 Atheros no yes A(2)/B/G at76c50x-usb Atmel no no B ath5k Atheros yes yes A/B/G ath6kl Atheros no no A/B/G/N ath9k Atheros yes yes A/B/G/N ath9k_htc Atheros yes yes B/G/N ath10k Atheros ? ? AC atmel Atmel ? ? B b43 Broadcom yes yes A(2)/B/G b43legacy Broadcom yes yes A(2)/B/G brcmfmac Broadcom no no A(1)/B/G/N brcmsmac Broadcom yes yes A(1)/B/G/N carl9170 ZyDAS/Atheros yes yes A(1)/B/G/N cw1200 ST-Ericsson ? ? A/B/G/N hostap Intersil/Conexant ? ? B ipw2100 Intel no no B
驱 动
制 造 商
ipw2200 Intel no (3) no A/B/G iwlegacy Intel no no A/B/G iwlwifi Intel yes (6) yes A/B/G/N/AC libertas Marvell no no B/G libertas_tf Marvell yes ? B/G mac80211_hwsim Jouni yes yes A/B/G/N mwifiex Marvell yes ? A/B/G/N mwl8k Marvell yes yes A/B/G/N orinoco Agere/Intersil/Symbol no yes B p54pci Intersil/Conexant yes yes A(1)/B/G p54spi Conexant/ST-NXP yes yes A(1)/B/G p54usb Intersil/Conexant yes yes A(1)/B/G ** prism2_usb Intersil/Conexant ? ? B ** r8192e_pci Realtek ? ? B/G/N ** r8192u_usb Realtek ? ? B/G/N ** r8712u Realtek ? ? B/G/N ray_cs Raytheon ? ? pre802.11 rndis_wlan Broadcom no no B/G rt61pci Ralink yes yes A(1)/B/G rt73usb Ralink yes yes A(1)/B/G rt2400pci Ralink yes yes B rt2500pci Ralink yes yes A(1)/B/G rt2500usb Ralink yes yes A(1)/B/G rt2800pci Ralink yes yes A(1)/B/G/N rt2800usb Ralink yes yes A(1)/B/G/N rtl8180 Realtek rtl8187 Realtek ·48·
no ? B/G no yes B/G
第3章 监听WiFi网络
续表 PHY模式
在以上表格中,列出了支持网卡的驱动、制造商、是否作为AP、是否支持监听,以及支持的协议模式。在表格中,?表示不确定,yes表示支持,no表示不支持。
监 听 AP
rtl8188ee Realtek ? ? B/G/N rtl8192ce Realtek ? ? B/G/N rtl8192cu Realtek ? ? B/G/N rtl8192de Realtek ? ? B/G/N rtl8192se Realtek ? ? B/G/N rtl8723ae Realtek ? ? B/G/N ** vt6655 VIA ? ? A/B/G vt6656 VIA yes ? A/B/G wil6210 Atheros yes yes AD ** winbond Winbond ? ? B wl1251 Texas Instruments no yes B/G wl12xx Texas Instruments yes no A(1)/B/G/N wl18xx Texas Instruments ? ? ? wl3501_cs Z-Com ? ? pre802.11 ** wlags49_h2 Lucent/Agere ? ? B/G zd1201 ZyDAS/Atheros ? ? B zd1211rw ZyDAS/Atheros yes yes A(2)/B/G
驱 动
制 造 商
3.2.2 虚拟机使用无线网卡
如果要管理无线网卡,则首先需要将该网卡插入到系统中。当用户在物理机中使用无线网卡时,可能直接会被识别出来。如果是在虚拟机中使用的话,可能无法直接连接到虚拟机的操作系统中。这时候用户需要断开该网卡与物理机的连接,然后选择连接到虚拟机。在虚拟机中只支持USB接口的无线网卡,下面以Ralink RT2870/3070芯片的无线网卡为例,介绍在虚拟机中使用无线网卡的方法。
【实例3-1】在虚拟机中使用无线网卡,具体操作步骤如下所述。 (1)将USB无线网卡连接到虚拟机中,如图3.2所示。
图3.2 连接无线网卡
·49·
第2篇 无线数据篇
(2)在该界面依次选择“虚拟机”|“可移动设备”|Ralink 802.11 n WLAN|“连接(断开与主机的连接)(C)”命令后,将显示如图3.3所示的界面。
图3.3 提示对话框
(3)该界面是一个提示对话框,这里单击“确定”按钮,该无线网卡将自动连接到虚拟机操作系统中。然后,用户就可以通过该无线网卡连接搜索到的无线网络。
3.2.3 设置无线网卡
下面介绍使用Kali Linux中的网络管理器来管理无线网卡。具体操作步骤如下所述。 (1)在图形界面依次选择“应用程序”|“系统工具”|“首选项”|“系统设置”命令,将打开如图3.4所示的界面。
(2)在该界面单击“网络”图标,设置无线网络。单击“网络”图标后,将显示如图3.5所示的界面。
图3.4 系统设置 图3.5 网络设置界面
(3)从该界面左侧框中,可以看到有线、无线和网络代理3个选项。这里选择“无线”选项,将显示如图3.6所示的界面。
(4)从该界面可以看到,当前的无线处于断开状态。在该界面单击网络名称后面的图标选择,将要连接的无线网络。然后单击“选项(O)...”按钮,在弹出的界面中选择“无线安全性”选项卡设置WiFi的安全性和密码,如图3.7所示。
·50·