2008年6月12日星期四

[Tips]无线网络安全之三

by 云舒
2008-06-12
http://www.ph4nt0m.org

很久之前写过两篇关于无线网络的文章,一篇是《企业无线局域网安全》,一篇是《无线路由折腾之一》,简单介绍了目前企业无线局域网设计中常用的安全标准,以及认证方面的风险。但是限于一些原因,我没有给出任何网络设计上面比较详细的方案描述,这里想稍微写一点,点到即止。而且即时知道了这里的一点架构方面的东西,也是无法攻击的,就像公开的加密算法一样。

06年初的时候,负责设计了我的第一个无线网络安全方案。由于实际用户群比较窄,只针对公司内部人员,主要是技术人员,因此在安全方面看重的是身份认证的 强度和数据传输加密防篡改的强度,而不去过多的关注用户授权。因此,在身份认证方面,我选择了动态口令认证,即所谓一次性密码,保证了非法用户无法接入网 络。数据传输方面,没有使用比较常用的AES或者TKIP,而是使用了IPSec VPN通道的方式。用户使用通用密码连接到AP之后,各自处于只有自己一个用户的独立隔离的VLAN中,且无法访问除VPN Server之外的任何服务器,这里的VPN Server可以是无线交换机提供的VPN终结功能。只有手动发起VPN连接通过动态口令认证,才可以访问到内部资源。

最近设计了一个新的无线网络安全方案,跟上面的颇有不同。主要是用户群比较杂乱,多个部门多重身份需要使用无线网络。在后期要对用户能够做比较好的审计, 而对于认证和传输没有太高的要求,可以稍微放松。因此,这里使用了ACS服务器结合后台的Radius服务器来做身份认证,根据不同的用户名选择不同的认 证方式,并根据AD信息划分动态的VLAN赋予相应的权限。传输加密方面,则使用了WPA2标准中的AES-CCMP算法。对比上面的方案,在认证和加密 传输安全性上面略有下降,而授权以及审计功能,有所增强。

设计这个新的方案的时候,还有一个小插曲,刚好是木桶理论的印证。有人要求给一个特定的群体所有网络的访问权限,并且给这个群体使用一个比较简单的统一的 密码。对于这样的需求,很显然,是整个设计中最薄弱的一环,也就是说实施了这个需求,其实上面的所有安全措施都是无效的。因为防线上有一个缺口,攻击者就 可以从缺口绕过整个防线,避开了堡垒对后面进行攻击。

目前来说,设计无线网络安全方案没有太多可以选择或者设计的余地,主要的只是和各部门无休止的沟通,需求很难整理清楚。这里插一句题外话,其实可以写一篇 新的文章,但是觉得不太好,就插到这里。那就是KPI的危害。太多的网络维护人员,鉴于网络稳定性在KPI中占的比重,不愿意对网络做一点点无害的改动。 只要目前的网络没有瘫痪,他们可能就不愿意去做改进了,更愿意保持现在的样子继续运行。后期安全策略的推进,真的是一个很困难的事情。安全应该在设计当初 就考虑进去,可是没有企业在创业当初就去做这方面的投入吧,毕竟安全对创业公司来说是一种投入和伤害。让步一点的说,尽可能早的考虑进去,在公司网络规模 还不是过于庞大杂乱的时候,开始部署安全策略,已经是很有远见的战略了。

上面都是安全策略方面的问题,现在略微说说攻击。攻击就拿WEP和WPA来举例,因为目前就这么几个常用的标准。WEP是最简单的安全措施,使用RC4算 法对数据加密传输,密钥就是连接网络时候输入的口令。一个固定的字符串,同时做身份认证和加密密钥使用。显然安全性是非常差的,只要攻击者抓到一定数量的 包,64位的WEP密钥,现在的普通PC大概5-10分钟就能计算出密钥,也就是网络密码来。而足够数量的WEP包,如果用户在上网下载或者看网页之类 的,大概10分钟之内就能够抓到。也就是说64位密钥的WEP,在20分钟之内就能够被破解,而128位密钥的也只是稍微好一点。

就WPA而言,个人用户常用WPA-PSK认证,而企业则一般使用WPA-EAP认证。这是因为企业可以部署Radius服务器提供认证服务,所以可以使 用EAP/802.1x认证协议。而个人用户就那么几台电脑,只能使用WPA-PSK(预共享密钥)进行认证了。WPA和WEP的区别在于,它认证口令和 数据传输加密密钥是分开的,加密密钥在认证通过后协商生成,而且在传输一定的数据包后,会重新协商生成新的密钥。因此,抓取了再多的数据包,也是不能算出 口令的,最多能够解出当前加密的密钥,得到明文数据传输。那么对WPA的口令破解只有一种方法,就是抓取到登陆时候的数据包。对于已经登陆的用户,可以通 过发送特殊的错误数据包,让AP断开该用户的连接,要求用户重新登陆,这个时候攻击者抓取到完整的认证报之后,就可以进行破解工作了。这里的破解,也只不 过是通过字典,或者暴力破解的方法来匹配抓取到的密码HASH,能否成功完全取决于密码的强度,也许只要1分钟,也许要1万年。

最后,不少人喜欢使用隐藏SSID的方法来保护无线网络安全,事实上这是很不可靠的,隐藏的SSID可以很容易的通过无线嗅探得到。

因此,WEP协议是肯定不安全的,容易破解。而WPA认证和加密都提供了足够的安全性,认证是否会被破解完全取决于密码本身的强度。宣称WPA被破解的文章,是不负责任的说法,因为相同意义上,除了一次性口令外的任何认证协议都可以使用同样的方法破解。

破解无线网络的工具,最有名的自然是BackTrack了,它是一个修改过的linux系统,一些攻击工具包的集合,攻击无线网络非常的方便,官方地址是:http://www.remote-exploit.org/backtrack.html。另外一套很全的工具包是aircrack系列,包括WEP,WPA-PSK数据包的捕获破解等多个小工具,地址为:http://www.aircrack-ng.org/。另有一个公司是http://www.wildpackets.com/,不过似乎没有免费的,都要银子。

甲方做了这么多年,攻击方面只能写到这种程度了,再详细就没意思了,而且我的兴趣也只在这个文章的前半部分。手把手的攻击,去搜索吧,大把的文章。

没有评论: