一名安全研究人员计划推出一个新的Web浏览器插件,它能在视频被重播之前清除Adobe Flash代码,从而防止攻击者把Adobe Flash的文件错误作为攻击的目标。
Recurity Labs是一家德国的安全公司,该公司的研究人员Felix ”FX” Lindner计划于2010年在拉斯维加斯举行的黑帽大会上推出这项新工具——Blitzableiter(避雷针)。该工具的早期版本是于去年十月份在德国柏林举办的第二十六届混沌黑客年会(chaos communication congress,26C3)上推出的。该工具将会成为NoScript的一部分,NoScript是Mozilla Firefox浏览器中一个防范跨站脚本(cross-site scripting)和点击劫持攻击(clickjacking)的插件。
“这个插件能够自动防范一大部分针对flash的攻击,对此我抱有很大的期望。”Lindner 在SearchSecurity.com网站对他的采访中说到, “这种防范手段很独特,因为它没有影响到本地计算机的数字签名。我们所做的一切都是按规则进行处理,并不会攻击数字签名。”
由于Flash Player占据着巨大的市场份额,因此它经常成为攻击者的目标,Adobe系统公司不得不努力修补Flash Player不断爆出的漏洞。在网络上,Flash无所不在,它被数以百万计的用户用于播放视频内容或显示交互网页和广告横幅。开发Blitzableiter的想法来源于2008年Recurity实验室为德国政府进行的一项分析富应用程序框架(rich application frameworks)研究。Lindner表示,Recurity发现flash远远落后于Silverlight和Java框架。
“我们意识到,开发这方面的防护软件比开发其他产品更具挑战性。”Lindner说,“实际上,我们在flash中看到的许多问题都与它的框架设计密切相关。”
Blitzableiter可被开发者嵌入到网站程序中,也可充当浏览器的插件。它可以检查网站上或嵌入在PDF文件中的Shockwave Flash(SWF)文件。它像规范化引擎(normalization engine)那样工作,检查整个Flash文件的代码异常情况。当被用作浏览器插件时,该工具将对Flash文件进行处理,然后在浏览器的Flash Player中显示干净的文件。例如,该工具可以检查网页广告横幅内的重定向,以确保它们不会指向恶意网站。
“我们并没有删除什么东西,我们只是增加了一些检查,”Lindber说, “在广告横幅中的地址被重定向之前,我们将增加一层验证。”
富互联网应用会形成新的威胁,因为它们为浏览器扩展了一些以前被浏览器设计者故意省略的功能。应用软件开发平台能让开发人员为应用程序添加多媒体功能,并能为程序提供虚拟的运行环境,后者将让程序代码在沙箱中运行以确保其安全。但Lindner表示,这正是Flash的安全漏洞所在。在沙箱中暴露出来的解析音频、视频和图形文件的功能恰好就是攻击者用来强行进入系统的东西。
“那些您必需编写的用于解析这些文件的代码,增加了黑客的攻击面。”Lindner说。
Lindner表示,目前存在着两种类型的攻击。第一类攻击以Flash runtime和解析器为目标。攻击者一旦找到解析器上的漏洞(通常是整数或缓冲区溢出),便会创建一个恶意文件,然后下载到受害者的电脑中。另一类攻击是点击欺诈,在一个SWF文件使用API来创建一个超链接,诱使用户连接到广告网络。不过,该工具并不能防范所有针对Flash的攻击,比如堆喷射(Heap Spraying)和Flash API溢出仍然是一个问题。
“虽然这需要进行大量的工作,但我们有信心该工具能有助于解除大多数以flash为目标的攻击,”Lindner说。 “这是我们能获得的最新的防护工具之一。”
【编辑推荐】