成也萧何 败也萧何:ActiveX技术安全报告

今年年初至今,多款著名软件相继爆出安全漏洞,这些安全漏洞都和ActiveX技术有紧密的关系。那么到底是ActiveX技术本身存在问题,还是这些应用软件自身在编写时就先天不足呢?下文将给你详尽的解答。
  西汉的萧何是汉高祖刘邦的重要谋臣,他曾向刘邦推荐了善于用兵打仗的韩信,使之为汉朝的建立立下汗马功劳。后来有人向刘邦的妻子吕后告发韩信谋反,吕后与萧何设计骗韩信进宫,被吕后杀死。因此民间有“成也萧何(韩信成为大将军是萧何推荐的),败也萧何(韩信被杀是萧何出的计谋)”的说法。也就是说事情的成败、好坏都由一个人造成的。
  在计算机技术里,ActiveX控件可以算得上是一个“萧何”,由于ActiveX控件与开发平台无关,因此一种编程语言上开发的ActiveX控件无须修改,就能在另一种编程语言的开发平台中使用。因此各大软件公司都热衷于推出ActiveX控件,ActiveX控件更是得到一般开发者的喜爱。ActiveX控件一旦被成功开发出来,使用者无需知道该控件的开发过程,只需要将其作为程序开发中的一个普通组件使用。正因为如此,也带来了极大的安全隐患――ActiveX控件不但可以被程序员利用,也可以被黑客攻击者利用,通过它黑客可以很轻松的写出一个可利用的网页木马。目前,利用ActiveX技术漏洞的网页木马越来越多,这已成为系统安全不可回避的一个问题。
  从年初的腾讯QQ、新浪UC,到最近的百度搜霸、暴风影音Ⅱ,这些漏洞的起因都和ActiveX控件相关。而且它们常常都是以0day漏洞的面目出现,并且漏洞的运用方法也出奇地一致――网页木马。一时间互联网中网马横风,整个互联网也危机四伏。
  ActiveX漏洞分析
  以下对今年几个有名的ActiveX漏洞进行分析,看看ActiveX技术在该软件扮演的是什么角色,以便对ActiveX技术的安全性有更深的了解。
  腾讯QQ漏洞
  今年年初,腾讯QQ连续出现了几个安全漏洞,这些安全漏洞均是由ActiveX创建的,造成这些漏洞的主要原因是由于腾讯程序员的粗心,使得QQ目录中的vqqplayer.ocx文件的第一个参数没有进行长度检查,当出现超长字符串时就会造成一个栈溢出漏洞。
  虽然这个漏洞看上去和ActiveX技术没什么关系,但是因为vqqplayer.ocx文件是注册到系统的ActiveX插件,因此黑客通过构建恶意代码的网页诱骗用户浏览,即可打开本地系统端口并远程植入木马到用户系统中,这样黑客就可以轻而易举的远程控制用户电脑。
  卡巴斯基漏洞
  杀毒软件在进行病毒清除时都会调用某个程序接口,让那些正在使用的病毒文件从磁盘中彻底删除。卡巴斯基在安装时,有一个名为“AxKLProd60.dll”的库文件注册为ActiveX组件,这个组件提供了一个名为DeleteFile的接口函数,该接口函数正是卡巴斯基在删除病毒文件时使用的。
  该组件在正常情况下使用是没有问题的,但是该组件在被调用的时候没有进行严格的限制。也就是说除了卡巴斯基本身以外,其他程序代码也可以通过某种方式来调用这个接口函数,这样非法用户就可以删除系统中的任意文件。这个漏洞虽然不是ActiveX技术造成的,但是它同样为漏洞的传播起到了推波助澜的作用。
  雅虎通漏洞
  雅虎的IM软件雅虎通,也发现其ActiveX控件存在漏洞,黑客可能利用此漏洞向用户系统上传任意文件。
  漏洞的主要原因是ActiveX控件的GetFile()方式,没有对用户提交的参数做充分的检查过滤,黑客可通过提供畸形参数向远程系统上传任意文件。虽然相关的控件不能进行远程调用,但黑客完全可以通过恶意代码,在用户本地执行后再调用该组件。这样就可以轻而易举地突破软件的限制,使用户系统沦落为黑客手中的一只肉鸡,进而被黑客远程控制。
  查缺补漏
  通过对ActiveX漏洞的分析可以发现,虽然问题都出在程序的内部文件中,但是由于这些功能组件都是通过ActiveX进行调用,因此加强ActiveX组件的使用限制尤其重要。
  那么用户应该如何防范这些通过ActiveX调用的漏洞呢?下面提供四种常见的防范方法供用户根据自己的实际情况选择使用。
  安装补丁文件
  安装相关的漏洞补丁文件是上上之选。如果官方网站已经推出了相关的补丁程序,或者推出了最新的程序版本,用户应该及时更新以免被黑客所利用。但是这种方法对于现在大量出现的0day漏洞不起作用。
禁用相关组件
  运行浏览器并且单击“工具”中的“Internet选项”,在弹出的窗口选择“安全”标签,将“Internet区域”的安全级别由中改为高即可;也可以单击“自定义级别”按钮,在弹出的“安全设置”对话框中,把其中所有ActiveX插件和控件信息全部选择“禁用”即可。不过这样做有一个很大的问题,就是以后的网页浏览过程中可能会造成一些正常使用ActiveX技术的网站无法完整浏览,系统中其它的ActiveX组件也将无法使用。
  
  屏蔽相关组件
  如果觉得禁用的方法不方便的话,可以屏蔽指定的ActiveX组件,达到相应的防范目的。首先需要通过网页木马的源代码了解软件漏洞被调用的ActiveX组件的ID位,接下来只需要将这个ActiveX控件屏蔽即可。
  运行“Windows优化大师”后,单击工具列表下“系统维护”中的“其它设置选项”。在“禁止浏览网页时安装下列ActiveX控件”选项中单击“添加”按钮,在弹出的“ActiveX控件ID”窗口设置该插件的信息。完成后在ActiveX控件列表中选中刚刚增加的CLSID,最后单击“确定”按钮就可以进行防范。
  
  这种方法不但适用于ActiveX控件漏洞,也适用于所有利用ActiveX控件进行入侵的漏洞,关键是需要得到利用ActiveX控件的ID。这种方法虽然可以起到相应的防范作用,但是可能会导致该软件的部分功能或所有功能暂时无法正常使用。
  网页木马拦截
  由于这些ActiveX控件漏洞的使用方法,都是以网页木马的形式展现的,因此还可以利用防范网页木马的方法。首先从“IE卫士”的官方网站([url]www.iekavass.cn[/url]),下载最新版本的“IE卫士”安装程序,双击安装程序后,程序将自动安装到 目录下,接着自动注册浏览器BHO到IE浏览器和Maxthon浏览器中。
  
  以后当访问含有ActiveX控件漏洞的网页时,“IE卫士”就会弹出一个提示窗口,同时会在窗口的“程序路径”选项中显示出可疑程序的路径。只需要单击“拦截(推荐)”按钮,就可以成功阻止该网页木马的操作。如果用户可以肯定该文件的合法性,那么可以选择“将此程序添加到信任区,以后不再提示”选项,并且单击“允许按钮”即可。
  这种方法的优点是不会影响系统中正常ActiveX控件软件的使用,其中包括存在ActiveX控件漏洞的软件。不过用户必须使用IE浏览器和Maxthon浏览器才行,因为“IE卫士”只针对这两款浏览器起作用。
  ActiveX技术对Windows系统安全性至关重要,若要安全使用ActiveX技术,最重要的是加强使用限制。

你可能感兴趣的:(技术,职场,安全,ActiveX,休闲)