非法无线接入点检测

作者: admin 发表于 Aug 06, 2013 分类在 其它研究, 设计分享

标题也可叫: 流氓AP检测,无线入侵检测(WIPS)。意思大差不差吧。

这个技术是做什么的?比如,你是搞国防武器装备开发的,非常关切信息保密。公司上上下下都在封闭在一个内网中,不允许从外部访问。但是有个员工张三某天带了一个WIFI设备,插上网线接入进公司网络(比如手机啊,无线路由器啊,联通电信的无线上网客户端啊)。于是,只要知道WIFI密码,别人就可以从无线端接入你的公司内网,发生你懂的的结果。

下文中:
AP指无线接入点(Access Point)
Rogue AP指非法无线接入点(Rouge Access Point)

我们要检测的目标是: 现有网络中的非法无线接入点(Rogue AP),

同时,我们也要避免误报。比如,隔壁邻居李四开了一个WiFi。这是不构成危害的,因为它没有接入我的公司网络。不是我的AP,确实也没法管。

无线接入的检测方法 (Rogue AP Detection)
1. 基于特征或指纹
这类套路有点像nmap扫描OS类型,不介绍了。

2. 基于MAC黑白名单
对公司所有网络设备做个白名单,新出现的MAC就是非法设备。但合法设备(如:公司笔记本)可以通过Ad-hoc开放无线网络绕过。

3. 路由器MAC关联
中高端路由器内部都有一张CAM表,里面记录中每一个MAC和路由口的对应关系。CAM表可通过SNMP协议获取到。此时,我们部署一个无线抓包器(Wireless Sniffer), 截获无线中出现的MAC。两者一对比,就能发现非法无线接入点。并且可以探测是从哪个路由口接入的。
如果路由器没有CAM表可供查询,也可以在路由器镜像口部署抓包设备,获取MAC。不过这需要额外负载来处理流量包。

MAC关联的限制是: 如果AP部署成NAT模式,此方法就无能为力了。在NAT模式下,AP接入的设备都圈在一个私网内,对外通讯都用AP的MAC。设备的MAC地址从不在公司网络中出现。

对于NAT模式下的AP,也有一个非常经验性的取巧检测方法。无线AP出厂时,有线口MAC和无线口MAC通常都非常接近。比如
11:22:33:44:55:66 和 11:22:33:44:55:67。 我们可以对比这种特殊关系,来发现非法AP。不过,路由器配置页面通常都能修改MAC。

4. 针对未加密无线AP
未加密或弱加密的AP通讯都可以用无线截包器看到内容。通用的检测手段是这样的。有线网络中部署一个包群发器,向可能的所有设备端口发送带特征内容的包。无线截包器如果发现相应的特征内容的包出现在Wireless环境中,说明检测到Rouge AP。

5. 针对加密无线AP的特征包注入(Signatured Packets Injection)
嗯,好货留到最后介绍。
如果无线加密的话,我们就看不到其中内容了,但依然有其它特征可供使用,比如包长度。不考虑padding的情况下,经过无线加密,包的长度不会改变。我们可以像上节”针对未加密无线AP”中介绍的那样,发送一系列长短不一的特征包序列,然后检测相应序列是否在无线环境中出现。不过,由于发送的包数量需要很多,会稍增加有线网络的负载。如果要达到实时检测并有一定的精度的效果,检测流量大约会占到所有流量的10%

当然,除开软件检测方法外,也可以通过硬件探测Rouge AP物理位置,检测其是否在处于公司范围。听过一家公司介绍过他们的产品,应该是可行的,但这一套着实不便宜。

本文是我参加公司内部的新技术孵化大赛的项目(Anti RogueAP)技术分享, 配合漫画:齐B小短裙 (宣传海报)食用, 效果更佳!
转帖请注明来自色彩笔。

发表评论