防御漏洞利用工具
2017-11-23
漏洞利用工具如何运行
多数漏洞利用工具的作者都使用软件即服务(SaaS) 作 为其业务模式。这种模式有时被称为平台即服务(PaaS),恶意软件即服务(MaaS)、漏洞利用工具即服务(EKaaS)。
利用漏洞利用工具即服务(EKaaS)这种模式,漏洞利用工具的制作者会将其出租给制造威胁的不法之徒。漏洞利用工具可以通过广告或口头相传的方式来传播,而领先的漏洞利用工具的价格往往达到每月几千美元。例如,2016年最流行的漏洞利用工具之一Neutrino,其定价达到每月7000美元。
漏洞利用工具的所有者向购买者提供管理控制台来监视出租漏洞利用工具的服务器,但购买者必须提供一种攻击的基础架构来执行活动。大规模的漏洞利用活动所需要的基础架构还可以外包给企图发布恶意软件的犯罪份子。
在登录到漏洞利用工具的管理控制台后,主页面会显示基本的统计和检测状态。管理控制台的另一个页面还可用于上传恶意软件。其他页面提供高级的统计信息,显示出一些重要信息,例如,有哪些反病毒厂商可以检测到恶意软件。
漏洞利用工具的事件
在漏洞利用工具中,为成功实施感染,必须经过如下几步:首先是“着陆页”,侦察受害者的主机;其次是漏洞利用,主要是利用目标主机上的基于浏览器的应用程序的漏洞,最后是上传网络罪犯准备发布的文件下载器或恶意软件。
着陆页面:着陆页面是漏洞利用工具发送的第一个项目。在多数情况下,着陆页面都包含侦察受害者电脑的代码,其目的是找到任何有漏洞的基于浏览器的应用程序。如果用户的计算机全面地打上了补丁并且保持了更新,漏洞利用工具在“着陆页面”就停止了。否则,漏洞利用工具会发送适当的漏洞利用程序。
漏洞利用程序:它利用有漏洞的应用程序,在用户的电脑上秘密运行恶意软件。目标应用程序有很多,例如,JRE(Java运行时环境)、Flash Player或 Web浏览器等。漏洞利用程序可以使攻击者在受害者主机上执行任意的代码。
文件下载器或恶意软件:在漏洞利用程序成功后,漏洞利用工具会发送一个可以检索其他恶意软件的文件下载器,或者是有其他目的的恶意软件。由于有了更高级的漏洞利用工具,文件下载器或恶意软件以加密二进制的形式通过网络发送。在受害者的电脑上,再解密并执行此加密的二进制代码。
漏洞利用活动过程
如前所述,漏洞利用工具无法独自感染计算机,须用某种方式指引用户的计算机访问。漏洞利用工具必须是漏洞利用活动的一部分。
大多数漏洞利用活动都利用一个受破坏的网站来将网络通信指引到一个漏洞利用工具。受到破坏的网站被攻击者将代码注入到网页中,从而指引用户访问漏洞利用工具。如此就从受攻击破坏的网站向漏洞利用工具提供了简单的事件链条。
还有其他的恶意活动可以利用受破坏的网站和漏洞利用工具服务器中的一台或多台其他服务器。这些额外的服务器称为“门”。多数情况下,“门”仅允许Windows主机连接到漏洞利用工具服务器。如果用户使用的是苹果笔记本电脑或Linux主机,“门”在检查完Web通信中的用户代理字符串后,不将其转交给漏洞利用工具。
图1 漏洞利用活动过程
恶意软件广告
恶意软件广告是利用网络广告来传播恶意软件。漏洞利用工具的活动可以利用恶意的网络广告到达成千上万的潜在受害者。
很多网站都被恶意软件广告活动利用了。这些网站并未受到破坏,但其广告通信却是恶意的。恶意软件广告可以使违法人员逃脱并达到更大规模的潜在受害者。
防御漏洞利用工具
随着操作系统和Web浏览应用的不断演变,漏洞利用工具可能会转向其他类型漏洞利用。但是虽然有技术上的变化,使用基于Web的漏洞利用工具进行自动的漏洞利用可能成为威胁态势的一种不变特性。
针对漏洞利用工具的优秀防御就如同针对其他相关恶意软件攻击的高效防御一样。如果说漏洞利用工具就像是枪,那么恶意软件就是子弹。针对漏洞利用工具的防御应当将关注点放在枪上(交付机制),而不是子弹上。
企业对漏洞利用工具活动的响应依赖于相应的恶意软件。勒索软件就是一种常见的伎俩。当然勒索软件不是唯一的恶意负载。信息窃取器、网银木马以及其他类型的恶意软件都使用这种攻击手段。因为漏洞利用工具是一种可能的受害者无法知晓的秘密方法,所以有效防御非常重要。我们建议企业利用如下方法实施防御。
减少攻击面
1.打补丁、更新、升级
由于漏洞利用工具针对的是基于浏览器的漏洞,因而最佳的防御应从保证所有应用程序的完全最新开始。各种浏览器及Adobe Flash Player等都在发现补丁后及时发布补丁。漏洞利用工具的制作者都擅长利用最新的漏洞,这对于忘记打补丁的用户非常有效。如果可能,用户的系统应升级到最新。例如,最新的Windows版本有更多的安全控制,可以更有效防止通过漏洞利用工具活动引发的感染。
2.限制易受攻击的应用程序的使用
如果可能存在漏洞的应用程序所带来的风险超过了其业务利益,企业应限制访问,从而减少漏洞利用工具的潜在影响。例如,对于经常被利用漏洞的Adobe Flash或Java来说,很多现代的浏览器都与其脱离了关系。管理员应考虑控制特定的用户组对易发生漏洞的应用程序的访问。
3.对网络驱动器的访问控制
在很多企业中,网络驱动器连接到了多个系统。如果一个受到感染的系统连接到了一个共享的驱动器,那么存储在此网络驱动器上的所有文件都面临着风险,在漏洞利用工具所带来的危险是勒索软件时,问题更严重。由此可以将简单的感染变成一个影响整个企业用户的事件。企业必须实施措施确保对网络共享的访问受到控制。网络访问应当总是仅限于最少数量的用户或系统。
预防
1.浏览限制
漏洞利用工具可能发端于很多不同类型的网站,而罪恶的对手可以建立定制的网页,破坏现有的网站,或者通过网络发布恶意广告活动。很多企业都将实施浏览限制作为一项策略,但是限制浏览对于限制漏洞的暴露也是一种好方法。安全团队应当考虑能够阻止对已知的恶意域名、钓鱼网站、未知域名的所有通信。
2.基于网络的防御
很多漏洞利用工具使用一些较老的漏洞利用伎俩和恶意软件的组合,安全团队就可以通过阻止已知威胁来防止感染。应当在网络中的所有位置实施入侵防御和反恶意软件功能,并有能力在无需人为干预的情况下阻止进入网络的威胁。
3.基于终端的防御
端点保护方法能够重点防御基于漏洞利用的攻击所使用的核心漏洞利用技术,这比那些仅重视个别攻击或底层软件漏洞的技术更有效。要实现额外的保护,企业不妨选择基于端点的解决方案,用以检测和阻止由漏洞利用工具交付执行的恶意文件。
4.未知威胁预防
安全团队应当确保自己有能力自动检测和防御未知的威胁,因为攻击者的漏洞利用工具及其交付的恶意软件也在不断变化。安全团队应广泛地从其他途径搜寻情报,并尽可能适时地实施应对措施。
5.数据备份
由于勒索软件是一种常见的漏洞利用工具,企业应有一套备份和恢复数据的可靠进程。即使并非勒索软件,其他类型的恶意软件也会给企业的机密数据带来风险。有效的备份和恢复计划可减少漏洞利用工具的感染对企业的影响。拥有原始数据的主机不能访问备份。如数据备份不应存放在USB硬盘,或可由网络主机访问的共享驱动器上。
测试是否能够恢复备份文件就如同备份一样重要。如果没有经常的测试恢复过程,在遭受破坏后,就无法确认那些可能导致数据恢复失败的问题。