从大量各种各样的专业术语、定义和专用名词中,找出和计算机恶意软件相关的部分是一件非常困难的事情。因此,为了保证下面分析的可靠性,我们首先要确定的就是将用于整篇文章的关键术语:
· 恶意软件:所谓恶意的软件指的是专门开发用于在没有获得用户许可的情况下潜入计算机或者给系统造成损害的软件。
· 恶意代码:恶意的代码指的是恶意的程序代码,是基于软件的应用程序,通常被称为恶意软件的有效部分。
· 反恶意软件工具:这个概念包括了用来处理恶意软件的所有程序,不论它是用来进行实时保护,还是检测和删除现有的恶意软件。反病毒、反间谍软件应用和恶意软件扫描工具都属于反恶意软件工具的范畴。
关于恶意软件需要记住的一件重要事情就是,如同生物一样,它的首要目标是复制。至于破坏计算机系统、销毁数据或窃取敏感信息,都是次要的目标。
确定了相关的定义后,就让我们来看看目前流行的十种不同类型的恶意软件。
1. 臭名昭著的计算机病毒
计算机病毒是可以感染计算机的恶意软件,但它们需要其它方面的一些手段提供支持。一个真正的病毒可以通过某种形式的可执行代码从一台计算机传播到另一台。举例来说,病毒可以隐藏在电子邮件包含的PDF文件中。大多数病毒包括以下三个方面的功能:
· 复制:一旦宿主程序被激活,病毒和病毒恶意代码进行的第一个操作就是传播。
· 隐藏:计算机病毒可以采用多种方法隐藏起来,以防止被反恶意软件工具发觉。
· 有效部分:对于病毒来说恶意代码的有效部分可以用来进行任何操作,从关闭计算机到销毁数据都是可以实现的操作。
W32.Sens.A、W32.Sality.AM和W32.Dizan.F就是目前比较流行的计算机病毒实例。大部分优秀的反病毒软件都可以在获得病毒特征码后将其清除。
2. 日益流行的计算机蠕虫
与病毒比起来,计算机蠕虫复杂的多,可以在没有经过用户许可的情况下进行复制。如果恶意软件利用网络(因特网)进行传播,它属于蠕虫的可能性比病毒大得多。蠕虫的主要组成部分是:
· 入侵工具:利用受害人计算机的漏洞获取进入方式的恶意代码。
· 安装工具:入侵工具让计算机蠕虫可以绕过系统的安全防护机制。接下来,安装工具就接管了控制权,并开始将恶意代码的主体传输到受害的计算机上。
· 发现工具:一旦安装完毕,蠕虫就会开始使用几种不同的方法来查找网络上的其他计算机,这些方法包括了寻找电子邮件地址、主机列表以及进行DNS信息查询。
· 扫描工具:蠕虫利用扫描工具来确认新发现的目标计算机中是否存在可以被入侵工具攻击的漏洞。
· 有效部分:驻留在每个受害人计算机上的恶意代码,可以利用远程连接的应用从日志记录器那里获取用户名和密码。
自从1988年莫里斯蠕虫出现开始,这种类型已经成为恶意软件中数量最多的部分。直到今天,Conficker蠕虫还在四处感染计算机系统。包括MBAM、GMER在内的恶意软件扫描工具可以清除大部分的计算机蠕虫。
3. 未知的后门软件
后门软件类似我们当中的很多人一直在使用的远程访问程序。它们之所以被当着恶意软件,是因为在安装的时间没有经过使用者的容许,而这正是网络攻击者想做的事情。后门软件通常采用下面给出的安装模式:
· 一种安装方法是利用目标计算机上的漏洞。
· 另一种方法是通过社会工程的方法诱骗用户,让其在不知情的环境下安装后门软件。
一旦安装完成,后门软件就可以让攻击者通过远程访问攻击获得计算机的完全控制权。常见的后门软件包括SubSeven、NetBus、深喉 (Deep Throat)、 Back Orifice以及Bionet等等。通常情况下,包括MBAM和GMER在内的恶意软件扫描工具可以成功地清除后门软件。
4. 神秘的特洛伊木马
很难找到比埃德·斯考迪斯和莱尼·泽来特在他们的作品《恶意软件的真相:我们应该怎样对抗恶意代码》中给出的关于特洛伊木马恶意软件更好的定义了:
"所谓特洛伊木马,就是指一种从表面上看起来包含了有用或好的功能,但实际上是为了掩盖恶意功能的程序。"
在安装的时间,特洛伊木马具有破坏性的有效部分会自动运行,并进行伪装,防止反恶意软件工具发现恶意代码的存在。下面列出的伪装技术就经常会被特洛伊木马采用:
· 重命名:恶意软件会伪装成为常见的文件。
· 暗中破坏:当系统中已经存在恶意软件的话,反恶意软件工具的安装往往是无法成功的。
· 多态代码:对代码进行多态变换可以让恶意软件特征码的更新速度比防御软件的检索速度更快,可以达到隐藏自身的目的。
Vundo就是一个最好的例子;它可以欺骗反间谍软件,创建弹出的广告窗口,降低系统的性能,并干扰网页浏览活动。通常情况下。安装在LiveCD上的恶意软件扫描工具可以检测并清除特洛伊木马。
5. 给人们带来大量烦恼的广告软件/间谍软件
· 广告软件指的是可以在未经用户许可的情况下创建弹出广告的软件。通常情况下,广告软件是作为一个组成部分安装在免费软件中的。除了非常讨人嫌以外,广告软件还会显著降低计算机的性能。
· 间谍软件指的是可以在使用者不知情的情况下从计算机上收集信息的软件。为什么阅读用户协议是非常重要的,就是因为间谍软件经常采用臭名昭著的自由软件作为有效载体。关于间谍软件最典型的例子就是,索尼BMG娱乐公司的光盘复制保护丑闻。
大部分反间谍软件都可以从计算机中快速找出未经许可的广告软件/间谍软件,并将它们删除。定期删除临时文件、Cookie和网络浏览器的历史记录,对网络浏览器进行预防性维护,听起来也不是一个坏主意。
恶意软件混合体
到目前为止,我们所讨论的所有类型恶意软件都具有明显的特征,归类起来很方便。但不幸的是,下面的情况就不一样了。为了提高攻击的成功率,恶意软件开发者已经发现获得最佳性能的方法是将不同类型的恶意软件结合起来。
Rootkits就是一个这样的例子,一个特洛伊木马和后门程序被封装在同一个载体中。这样的话,在使用的时间,攻击者就可以远程访问计算机,在不受怀疑的情况下完成整个攻击。Rootkits已经成为计算机面临的最大威胁之一了,因此,我们需要对它有一个深入的了解。
迥然不同的Rootkits
类似大多数的恶意软件,Rootkits选择的是在现有操作系统中进行改动而不是安装新的应用。这种方式是非常有效的,因为它让反恶意软件工具的监测变得非常困难。
rootkits包含了几种不同的类型,但目前比较流行的主要是三种类型。它们是用户模式、内核模式、和固件rootkit。在下面,我们先对用户模式和内核模式进行一下了解:
· 用户模式:在该模式下,代码通过受限连接进入计算机,获取软件和硬件资源的使用权限。通常情况下,计算机上的大部分代码都运行在用户模式下。由于采用的是受限连接,在用户模式下造成的损害是可以恢复的。
· 内核模式:在这种模式下,代码已经可以不受限制地控制计算机上所有的软件和硬件资源。通常情况下,内核模式是操作系统保留给最值得信赖功能的。在内核模式模式下造成的损害是不可恢复的。
6. 用户模式的rootkit
现在,我们知道了用户模式的rootkit可以和计算机系统管理员拥有相同的权限。这就意味着:
· 用户模式的rootkit可以对进程、文件、系统驱动程序、网络端口甚至系统服务进行改动。
· 用户模式的rootkit还是需要复制文件到计算机的硬盘驱动器上进行安装,并且在每次系统启动的时间自动加载。
Hacker Defender就是用户模式的rootkit的一个例子,值得庆幸的是,众所周知马克·罗斯林伟奇开发的Rootkit Revealer可以防范它和其他大多数用户模式的rootkit。
7. 内核模式的rootkit
由于用户模式的rootkit可以被发现和清除,rootkit设计者们变换了一种思路,并开发出内核模式的rootkit:
· 内核模式意味着rootkit和操作系统以及rootkit检测软件拥有相同的权限。
· 这让rootkit可以控制操作系统,也就意味着操作系统也不能被信任了。
对于内核模式的rootkit来说,不稳定性是一个缺点,通常情况下,它会经常导致无法解释的崩溃或蓝屏。基于这种原因,选择使用GMER是一个不错的想法。作为值得信赖的rootkit清除工具,它可以清除包括Rustock在内的内核模式的rootkit。
8. 固件rootkit
由于rootkit开发者了解了将恶意代码保存在固件中的方法,固件rootkit成为了恶意软件混合体的新发展。在这里,固件可以是从微处理器代码到PCI扩展卡固件的任何位置。这就意味着:
· 当计算机关闭的时间,rootkit可以将恶意代码写入当前指定的固件。
· 重新启动计算机的时间,rootkit就会重新安装。
即使清理软件发现并清除了固件rootkit,在计算机下次启动的时间,固件rootkit也会重新出现。
9. 恶意移动代码
与私下安装相比较,恶意移动代码正迅速成为在计算机上安装恶意软件的最有效方式。首先,我们来了解一下什么是移动代码:
· 从远程服务器上获得。
· 通过网络进行传输。
· 下载到本地系统中并可以执行。
移动代码的例子包括了JavaScript脚本、VBScript脚本、ActiveX控件以及Flash动画。移动代码产生的主要目的是提供交互内容,这是很容易理解的。动态网页内容可以让使用者在浏览的时间获得交互式体验。
为什么移动代码会给使用者带来威胁?原因其实很简单,它在安装的时间不需要用户的许可,并且可以在功能上误导用户。类似,特洛伊木马恶意软件的入侵工具,由于这仅仅是联合攻击的第一步,所以情况会变得更糟糕。在下面,攻击者就可以安装其它的恶意软件了。
防范恶意移动代码的最好方法是确保操作系统和所有辅助软件的及时更新。
10. 混合威胁
当恶意软件有效地结合了多种单项恶意代码可以实现最大限度的破坏时,就会被认为属于混合威胁。尽管如此,对于混合威胁来说特别值得一提的是,安全专家不情愿地承认它们做的是最出色的。混合威胁通常包括以下几项功能:
· 利用已知的漏洞,甚或制造漏洞。
· 复制替代模式。
· 清除使用者的防御,自动执行代码。
混合威胁的恶意软件,举例来说,可以是一封HTML格式的电子邮件,邮件中包含了一个嵌入式木马,而在PDF附件中,则包含了另一种不同类型的木马。比较著名的混合威胁有,尼姆达(Nimda)、红色代码(CodeRed)以及妖怪(Bugbear)。从计算机中清除混合威胁型恶意软件的话,可能需要综合利用多种不同的反恶意软件工具以及安装在LiveCD上的恶意软件扫描工具。
总 结
对于恶意软件来说:它本身可能会带来是什么样的破坏呢?关于这个问题,我有几点想法:
· 恶意软件在可预见的未来是不会消失的。特别是它变得越来越有用,可以带来很多钞票的时间。
· 由于所有的反恶意软件工具起到的都是反作用,所以它们是注定要失败的。
· 操作系统和应用软件开发商对于软件漏洞需要采取零容忍的态度。
· 计算机的使用者需要在安全方面花费更多的时间和精力以保证可以应对不断发展变化的恶意软件。
· 关于这一点怎么强调都是不过分的,请务必保持操作系统及应用软件的及时更新。