第三章 无线接入网入侵与防御 · 移动互联网安全 您所在的位置:网站首页 gpuhashme 第三章 无线接入网入侵与防御 · 移动互联网安全

第三章 无线接入网入侵与防御 · 移动互联网安全

#第三章 无线接入网入侵与防御 · 移动互联网安全| 来源: 网络整理| 查看: 265

第三章 无线接入网入侵与防御绕过那些似是而非的安全机制禁⽌SSID⼴播MAC地址过滤禁用DHCP,使用静态IP地址分配已有安全机制的漏洞原理开放式认证Evil TwinEvil ESSIDTKIP缺陷WPA/WPA2 PSK破解WPS已知脆弱性和漏洞利用⽅法攻击 WPA/WPA2 企业级认证⽆线⽹络安全机制漏洞利用实例构建安全的无线局域网应用层网络层链路层物理层第三章 无线接入网入侵与防御 绕过那些似是而非的安全机制 禁⽌SSID⼴播

AP在主动广播的beacon frame中包含SSID字段值,所有AP的默认出厂设置都是开启了SSID广播功能的。但同时也提供了关闭SSID广播功能的开关,如下图所示:

AP如果关闭了SSID广播功能(部分产品的管理界面使用的功能术语是:隐藏无线网络),手机等无线客户端在“刷新”无线网络列表时会忽略掉这些网络(因为收到的AP广播beacon frame中没有网络名称信息,所以无法在界面上“显示”),造成了这些无线网络似乎就“隐身”了的假象,进而给人一种假象:

攻击者发现不了我的网络,就无法发起攻击,所以网络就安全了。

事实上,攻击者可以选择“被动发现”的方式来“发现”禁止SSID广播的无线网络。这是因为:

当有STA加⼊隐藏SSID的AP时,Probe Request 中包含该无线网络的SSID; 该AP下客户端断线重连AP时发送的Association Request、Probe Request和AP发送的Probe Response中都会包含目标无线网络的SSID。

攻击者只需要“静静”的抓包,就可以“发现”目标网络的SSID。

演示实验如下:

上图中,红色方框高亮的BSSID:08:57:00:6B:11:D0对应AP在airodump-ng的控制台中ESSID字段显示为,这表示抓到的该AP广播的beacon frame中ESSID字段值为空,符合“禁止SSID广播”设置的AP的表现。

说明:不同AP的“禁止SSID广播”的实现方式会有差异,有些厂商的AP会在beacon frame字段中根据实际网络的SSID字段长度(假设为N字节)填充对应长度的\x00字符,这时在airodump-ng的控制台中ESSID字段就会显示为。

下图中,通过向指定AP发送1个解除认证⼴播包,并等待客户端重连和观察airodump-ng的输出信息变化,可以看到原先BSSID 08:57:00:6B:11:D0 对应 AP 在airodump-ng的控制台中ESSID字段变化为HackMeIfYouCanHidden,这就是刚才隐藏的目标网络SSID被我们“发现”了。

aireplay-ng --deauth 1 -a 08:57:00:6B:11:D0 mon0 --ignore-negative-one

另外,我们还注意到,该目标网络当前确实有一个已经处于连接状态的无线客户端,它的MAC地址是:E0:F8:47:DC:38:C4。

下图是我们用wireshark分析我们刚才在“发现隐藏SSID”演示实验中的抓包结果截图,其中HackMeIfYouCanHidden确实出现在了无线客户端发送给AP的Association Request帧之中。

如上图所示,我们使用iwlist wlan11 scanning | grep -A 30 '08:57:00:6B:11:D0'可以再次证明,该AP的广播beacon frame中确实没有有效的ESSID值,是一个“隐藏无线网络”。

MAC地址过滤

如下图所示是一个典型的MAC地址过滤设置界面,图中的过滤规则里的“禁止”和“允许”分别对应“黑名单”和“白名单”机制。由于无线网络即使启用了数据加密功能,但MAC地址依然是明文包含在无线数据帧中的,通过嗅探模式抓包可以轻易的了解到目标网络中有哪些设备处于已连接状态。对于白名单过滤模式来说,攻击者只需要把自己设备的MAC地址修改为网络中已连接客户端的MAC地址,即可绕过白名单限制。当然,黑名单限制就更容易绕过了,攻击者如果怀疑自己的MAC地址被加入到了MAC地址过滤黑名单,只需要修改掉当前使用的MAC地址重新尝试连接即可。

在Linux系统中修改网卡MAC地址的命令行方法如下:

ifconfig wlan0 hw ether 00:11:22:33:44:55

Windows系统可以通过修改注册表项(例如:HKLM\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002bE10318},取决于网卡驱动和操作系统的支持情况),也可以使用一些第三方工具,例如TMAC、MAC Makeup等。

在Linux系统中可以使用命令行工具wpa_supplicant连接WPA/WPA2认证方式的无线网络。首先把明文Passphrase通过Hash运算生成PSK,这会用到命令行工具 wpa_passphrase 生成 wpa_supplicant 所需的最小配置,可以快速连接到已知 SSID 的无线网络。例如:

$ wpa_passphrase TargetSSID # reading passphrase from stdin hellopassword network={ ssid="TargetSSID" #psk="hellopassword" psk=4cc54666ad54da9f19f3e6fde3b8521bd3e06d8be19928c3864aea13db3d5a75 }

上例表明,wpa_supplicant 可以与 wpa_passphrase 协同工作,只需简单地这样即可做:

# 注意: 由于存在进程替换,这个命令不能带着 sudo 执行,必须切换到 root 身份。否则会报错: # 上一步 wpa_passphrase 的输出结果也可以直接保存为一个独立配置文件,在这一步就可以替换 -c 参数的值为配置文件路径 # wpa_supplicant -B -i wlan1 -c


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有