2013年7月 《专用≠安全可靠》

专用≠安全可靠

——20137月安全天下事

江海客

本月初移动安全公司BlueboxSecurity研究人员声称其发现Android严重漏洞,这个漏洞允许攻击者修改应用程序的代码但不影响其签名验证过程。堪称本月影响最大的安全事件。

该公司声称他们将在下个月的BlackHat会议公布漏洞细节,但由于这个问题过于严重,全球移动安全团队几乎都迅速投入了这一漏洞的定位之中。

AndroidAPK格式安装包文件实际采用了Java行业的JAR文件签名规范,因此笔者和团队伙伴最初都认为这个问题的根源在于Google对该签名规范进行了自己的特有实现,而实现细节上的不一致将导致问题。沿着这一思路,分析人员花费了不少精力对比源码,但一无所得。此后,微博上又有国内的安全爱好者曝出了所谓“系统文件只做部分签名验证导致代码篡改”的漏洞及利用方法,也是从Android的签名实现不严谨的角度来分析,但其实这一利用方法需要root权限,严格地讲难以归为漏洞。腾讯公司在新闻中称独立发现了这一“新漏洞”,显然也是绕到了“寻找专有实现的失误”的这一思路里。其实,最终通过补丁分析,我们可以发现是由于Android系统在安装软件时,在签名验证部分和代码抽取部分使用了不同的代码来解析ZIP格式文件,而这两部分代码的哈希表实现存在不一致,一个使用了哈希链表来处理重复项,另一个则没有判断重复项而是直接覆盖记录,因此抽取出来的代码片段将不同。其实是一个编码错误所导致,而并非设计性的。

BlueboxSecurity新闻发布没几天之后,Marvell中国移动事业部的安全研究者发现了一个类似的新漏洞。这一次的问题是ZIP格式解析时的整型变量类型不当(即整数溢出),也是一个编码的细节问题,但漏洞效果同样是修改APK文件代码而不影响其签名。

现在再来回顾这两个漏洞,虽然它们的具体原因是没有一致地处理ZIP文件中的同名条目、没有严格按照规范地使用无符号整数这样两个典型的编码错误,但根源上,还是在于Android系统在解析ZIP文件中没有全局地使用通用的、标准的ZIP解析库,而是对ZIP文件解析进行了再次的自有实现,从而出现了这样两个编码不严谨的问题。

多数被广泛使用的公共算法实现等基础的开放代码模块,在过去几十年经历了非常严格的漏洞分析和挖掘的考验而获得不断改善,其安全性和稳定性普遍好于开发者的自我实现。这已经是一个基本规律和共识。规律就是如此,不管违背者实力多么强大,技术多么高超,如果你违背你就可能遭到惩罚。但中国的IT界则更缺少这种规律共识,在更多领域对“专用”有一种独特的偏爱。

本月,“地铁万元天价专用U盘其实是一个特殊接口转接头+金士顿2GB U盘”的新闻在网络上流传,最后相关单位出现澄清其售价实际为200~400元。我相信,将通用接口改为专用接口(从图片看似乎是USB mini B型口)可能既有避免普通U盘随意插入导致病毒和攻击的考虑,或者也有降低用普通U盘插入导致电气故障的想法。这种设计本身并不能说有问题,但要警惕的是,专用虽然可能会提升入侵的成本和门槛,但也可能给规划管理者一种错觉,以为靠简单的专用接口或某个单点政策就可以抵御威胁于系统之外,从而放弃了对内部系统安全机制的缜密规划。更何况在APT时代,专用带来的攻击成本和难度提升,对攻方来说,完全可以忽略不计。

缺少安全策略、缺少IT治理能力是中国信息化中必须解决的问题,不可能有一劳永逸的解决方案。某些采用物理隔离的行业、单位,以为隔离之后就万事大吉,但对外部设备接入、违规无线外联、USB存储设备控制都没有严格的策略,结果就是内网病毒此起彼伏,网络隔离又导致补丁无法及时更新、杀毒软件获得最新病毒库,反而使病毒感染更加严重。

实际上,专用不仅难以保障安全,更不一定意味着可靠;甚至从某种意义上说,专用还是难以使用的代名词。及时在过去100%专用化的军品领域,也开始呈现出军民一体,通用体验的趋势。过去军品一直采用集中优质资源集中、生产专用高规格产品的方法,但在信息产品上,这一思路未必适用。因为现代民品基于持续的大量生产和使用反馈的迭代,其可靠性可能反而会高于少量生产的军品;同时,用户在民品上已经积累的使用习惯,如果在军品上没有得以集成,那么军队就要徒增使用和培训的成本。

所以大家才会看到美军的一些小型无人机用XBox的手柄,狙击手使用的风偏等计算工具的载体是iPod,看到了iOS6通过了level2的认证(预计iPhone将会进入美国更多的政府机要部门和军队)。当然,军品对环境的要求远比民品苛刻,所以对于具有军民通用性的产品来说,让原有民品厂商按照军标去生产,要比让一些专用厂商单独研发要靠谱的多。

而部分国人一直对“专用”有着特殊的偏好,对狭隘的经验有着特殊的信任,对专属产品有着特殊的信仰。这些倾向与信奉“千年古方”、“传男不传女”的文化导向,与向往特供、御用的价值倾向一脉相承。

对网络安全行业来说,从技术特点、解决方案等角度,安全必然有其个性化的因素,有其专用的技术和实现。但在很多特定的层面上安全技术也有其通用性、普适化的规律,但这些规律并不完全为国内部分同行所认同。比如“加密算法的安全性,不依赖于算法本身的保密”,我一直认为这是加密算法领域的基本原则。而就在去年的一次安全会议上,一位同行对我说,“最安全的加密算法就是不公开的算法,你都不知道算法你怎么破解”。他是一位信息安全专业的大学教授,这可能意味着,一些中国信息安全的后继者们,尽管掌握了的知识、技能和经验,却也获得了错误的原则。

(感谢同事Claud对本文的贡献)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值