僵尸网络(Botnet)是指多台被恶意代码感染、控制的与互联网相连接的计算机。Botnet正成为一种日益严重的威胁,不过,只要我们用好对付它的六把利剑,僵尸网络就难以造成严重的祸患。
第一剑:采用Web过滤服务
Web过滤服务是迎战僵尸网络的最有力武器。这些服务扫描Web站点发出的不正常的行为,或者扫描已知的恶意活动,并且阻止这些站点与用户接触。
Websense、Cyveillance 、FaceTime都是很好的例子。它们都可以实时地监视互联网,并查找从事恶意的或可疑的活动的站点,如下载JavaScript或执行screen scrapes等正常Web浏览之外的其它骗局。Cyveillance 和Support Intelligence还提供另外一种服务:通知Web站点操作人员及ISP等恶意软件已经被发现,因此黑客攻击的服务器能被修复,他们如是说。
第二剑:转换浏览器
防止僵尸网络感染的另一种策略是浏览器的标准化,而不是仅仅依靠微软的Internet Explorer 或Mozilla 的Firefox.当然这两者确实是最流行的,不过正因为如此,恶意软件作者们通常也乐意为它们编写代码。同样的策略也适用于操作系统。据统计,Macs很少受到僵尸网络的侵扰,正如桌面Linux操作系统,因为大多数僵尸的罪魁祸首都把目标指向了流行的Windows.
第三剑:禁用脚本
另一个更加极端的措施是完全地禁用浏览器的脚本功能,虽然有时候这会不利于工作效率,特别是如果雇员们在其工作中使用了定制的、基于Web的应用程序时,更是这样。
第四剑:部署入侵检测和入侵防御系统
另一种方法是调整你的IDS(入侵检测系统)和IPS(入侵防御系统),使之查找有僵尸特征的活动。例如,重复性的与外部的IP地址连接或非法的DNS地址连接都是相当可疑的。虽然难于发现,不过,另一个可以揭示僵尸的征兆是在一个机器中SSL通信的突然上升,特别是在某些端口上更是这样。这就可能表明一个僵尸控制的通道已经被激活了。您需要找到那些将电子邮件路由到其它服务器而不是路由到您自己的电子邮件服务器的机器,它们也是可疑的。僵尸网络的专家Gadi Evron进一步建议,您应该学会监视在高层对Web进行访问的家伙。它们会激活位于一个Web页面上的所有的链接,而一个高层次的访问可能会指明一台机器正被一个恶意的Web站点所控制。
一个IPS或IDS系统可以监视不正常的行为,这些行为指明了难于发现的、基于HTTP的攻击和来自远程过程的攻击、Telnet和地址解析协议(即ARP)欺骗等等。然而,值得注意的是,许多IPS检测器使用基于特征的检测技术,也就是说,这些攻击被发现时的特征被添加到一个数据库中,如果数据库中没有有关的特征就无法检测出来。因此,IPS或IDS就必须经常性的更新其数据库以识别有关的攻击,对于犯罪活动的检测需要持续不断的努力。
第五剑:保护用户生成的内容
还应该保护你的WEB操作人员,使其避免成为“稀里糊涂”的恶意软件犯罪的帮凶。如果你并没有朝着WEB 2.0社会网络迈进,你公司的公共博客和论坛就应该限制为只能使用文本方式,这也是Web Crossing的副总裁Michael Krieg的观点,他是社会化网络软件和主机服务的创造者。
Krieg 说,“我并不清楚我们成千上万的用户有哪一个在消息文本中允许了JavaScript,我也不清楚谁在其中嵌入了代码和其它的HTML标签。我们不允许人们这样做。我们的应用程序在默认情况下要将这些东西剥离出去。”
Dan Hubbard是Websense安全研究的副总裁,他补充说,“那是用户创建内容站点的一个严重问题,即Web 2.0现象。你怎么才能在允许人们上传内容的强大功能与不允许他们上传不良的东西之间寻求平衡呢?”
这个问题的答案是很明确的。如果你的站点需要让会员或用户交换文件,就应该进行设置,使其只允许有限的和相对安全的文件类型,如那些以。jpeg或mp3为扩展名的文件。(不过,恶意软件的作者们已经开始针对MP3等播放器类型,编写了若干蠕虫。而且随着其技术水平的发现,有可能原来安全的文件类型也会成为恶意软件的帮凶。)
第六剑:使用补救工具
如果你发现了一台被感染的计算机,那么一个临时应急的重要措施就是如何进行补救。
事后进行的检测所谓的恶意软件真是一个错误!因为它会使IT专家确信他们已经清除了僵尸,而其实呢,真正的僵尸代码还驻留在计算机上。
这并不是说你不应该设法实施反病毒软件中最好的对付rootkit的工具,不过你要注意这样做就好似是在你丢失了贵重物品后再买个保险箱而已。用一句成语讲,这就叫做“亡羊补牢”。保持一台计算机绝对安全干净、免受僵尸感染的方法是对原有的系统彻底清楚,并从头开始安装系统。
不要让你的用户访问已知的恶意站点,并监视网络中的可疑行为,保护你的公共站点免受攻击,你的网络就基本上处于良好状态。这是安全专家们一致的观点。