预计阅读本页时间:-
9.7.4 间谍软件
间谍软件(spyware)是一种迅速扩散的恶意软件,粗略地讲,间谍软件是在用户不知情的情况下加载到PC上的,并在后台做一些超出用户意愿的事情。但是要定义它却出乎意料的微妙。比如Windows自动更新程序下载安全组件到安装有Windows的机器上,用户不需要干预。同样地,很多反病毒软件也在后台自动更新。上述的两种情况都不被认为是间谍软件。如果Potter Stewart还健在的话,他也许会说:“我不能定义间谍软件,但只要我看见它,我就知道。”
其他人通过努力,进一步地尝试定义间谍软件。Barwinski等人认为它有四个特征:首先,它隐藏自身,所以用户不能轻易地找到;其次,它收集用户数据(如访问过的网址、口令或信用卡号);再次,它将收集到的资料传给远程的监控者;最后,在卸载它时,间谍软件会试图进行防御。此外,一些间谍软件改变设置或者进行其他的恶意行为。
Barwinski等人将间谍软件分成了三大类。第一类是为了营销:该类软件只是简单地收集信息并发送给控制者,以更好地将广告投放到特定的计算机。第二类是为了监视:某些公司故意在职员的电脑上安装间谍软件,监视他们在做什么,在浏览什么网站。第三类接近于典型的恶意软件,被感染的电脑成为僵尸网络中的一部分,等待控制者的指令。
广告:个人专属 VPN,独立 IP,无限流量,多机房切换,还可以屏蔽广告和恶意软件,每月最低仅 5 美元
他们做了一个实验,通过访问5000个网站看什么样的网站含有间谍软件。他们发现这些网站和成人娱乐、盗版软件、在线旅行有关。
华盛顿大学做了一个覆盖面更广的调查(Moshchuk等人,2006)。在他们的调查中,约18 000 000个URL被感染,并且6%被发现含有间谍软件。所以AOL/NCSA所作的调查就不奇怪了:在接受调查的家用计算机中,80%深受间谍软件的危害,平均每台计算机有93个该类软件。华盛顿大学的调查发现成人、明星和桌面壁纸相关的网站有最高的感染率,但他们没有调查旅行相关的网站。
1.间谍软件如何扩散
显然,接下来的问题是:“一台计算机是如何被间谍软件感染的?”一种可能途径和所有的恶意软件是一样的:通过木马。不少的免费软件是包含有间谍软件的,软件的开发者可能就是通过间谍软件而获利的。P2P文件共享软件(比如Kazaa)就是间谍软件的温床。此外,许多网站显示的广告条幅直接指向了含有间谍软件的网页。
另一种主要的感染途径叫做下载驱动(drive-by down load),仅仅访问网页就可能感染间谍软件(实际上是恶意软件)。执行感染的技术有三种。首先,网页可能将浏览器导向一个可执行文件(.exe)。当浏览器访问此文件时,会弹出一个对话框提示用户运行、或保存该文件。因为合法文件的下载也是一样的机制,所以大部分用户直接点击执行,导致浏览器下载并运行该软件。然后电脑就被感染了,间谍软件可以做它想做的任何事。
第二种常见的途径是被感染的工具条。IE和Firefox这两种浏览器都支持第三方工具条。一些间谍软件的作者创建很好看的功能也不错的工具条,然后广泛地宣传。用户一旦安装了这样的工具条也就被感染了,比如,流行的Alexa工具条就含有间谍软件。从本质上讲,这种感染机制很像木马,只是包装不同。
第三种感染的途径更狡猾。很多网页都使用一种微软的技术,叫做ActiveX控件。这些控件是在浏览器中运行并扩展其功能的二进制代码。例如,显示某种特定的图片、音频或视频网页。从原则上讲,这些技术非常合法。实际上它非常的危险,并可能是间谍软件感染的主要途径。这项技术主要针对IE,很少针对Firefox或其他类型的浏览器。
当访问一个含有ActiveX控件的网页时,发生什么情况取决于IE的安全性设置。如果安全性设置太低,间谍软件就自动下载并执行了。安全性设置低的原因是如果设置太高,许多的网页就无法正常显示(或根本无法显示),或者IE会一直进行提示,而用户并不清楚这些提示的作用。
现在我们假设用户有很高的安全性设置。当访问一个被感染的网页时,IE检测到有ActiveX控件,然后弹出一个对话框,包含有网页内容提示,比如:
你希望安装并运行一个能加速网页访问的程序吗?
大多数人认为很不错,然后点“是”。好吧,这是过去的事情。聪明的用户可能会检查对话框其他的内容,还有其他两项。一个是指向从来没有听说过的,也没有包含任何有用信息的认证中心的链接,这其实只表明该认证中心只担保这家网站的存在,并有足够的钱支付认证的费用。ActiveX控件实际上可以做任何事情,所以它非常强大,并且可能让用户很头疼。由于虚假的提示信息,即使聪明的用户也常常选择“是”。
如果他们点“不是”,在网页上的脚本则利用IE的bug,试图继续下载间谍软件。不过没有可利用的bug,就会一次次试图下载该控件,一次次的弹出同样的对话框。此时,大多数人不知道该怎么办(打开任务管理器,杀掉IE的进程),所以他们最终放弃并选择“是”。
通常情况下,下一步是间谍软件显示20~30页用陌生的语言撰写的许可凭证。一旦用户接受了许可凭证,他就丧失了起诉间谍软件作者的机会,因为他同意了该软件的运行,即使有时候当地的法律并不认可这样的许可凭证(如果许可凭证上说“本凭证坚定地授予凭证发放者杀害凭证接受者的母亲,并继承其遗产的权利”,凭证发放者依然很难说服法庭)。
2.间谍软件的行为
现在让我们看看间谍软件的常见行为:
·更改浏览器主页。
·修改浏览器收藏页。
·在浏览器中增加新的工具条。
·更改用户默认的媒体播放器。
·更改用户默认的搜索引擎。
·在Windows桌面上增加新的图标。
·将网页上的广告条替换成间谍软件期望的样子。
·在标准的Windows对话框中增加广告。
·不停地产生广告。
最前面的三条改变了浏览器的行为,即使重启操作系统也不能恢复以前的设置。这种攻击叫做劫持浏览器(brower hijacking)。接下来的两条修改了Windows注册表的设置,把用户引向了另外的媒体播放器(播放间谍软件所期望的广告)和搜索引擎(返回间谍软件所期望的网页)。在桌面上添加图标显然是希望用户运行新安装的程序。替换网页广告条(468×60.gif图像)就像所有被访问过网页一样,为间谍软件指定的网页打广告。最后一项是最麻烦的:一个可关闭的广告立刻产生另一个弹出广告,以致无法结束。此外,间谍软件常常关闭防火墙、卸载其他的间谍软件,并可能导致其他的恶意行为。
许多间谍软件有卸载程序,当这些卸载程序几乎不能用,所以经验不足的用户没有办法卸载。幸运的是,一个新的反间谍软件产业已经兴起,现有的反病毒厂商跃跃欲试。
间谍软件不应该和广告软件(adware)混淆起来,合法的软件生产商提供了两种软件版本:一个含有广告的免费版本和一个不含广告的付费版本。软件生产商的这种办法非常聪明,用户为了不受广告的烦扰,而不得不升级到付费版本。