本文章是 Microsoft Security 博客“The Rise of the ‘Blackhole’ Exploit Kit: The Importance of Keeping All Software Up To Date”(2012年7月20日发布)的翻译版本。
根据 Microsoft 安全情报报告第12版(SIRv12)发布的数据,驱动下载攻击仍然是全球许多攻击者偏爱的技术,用于试图入侵大量系统。虽然之前已经写过关于驱动下载攻击的文章(“关于驱动下载攻击的注意事项”第一部分和第二部分),但缓解这些攻击影响的关键在于保持所有软件的最新状态。
2011年下半年(2H11),JavaScript漏洞利用的检测显著增加。检测数量增加的主要原因是出现了JS/Blacole漏洞利用家族。这是“Blackhole”漏洞利用工具包中使用的漏洞利用家族,通过受感染的网页分发恶意软件。
图1: 2011年各季度 Microsoft 恶意软件防护产品报告检测/阻止 HTML 和 JavaScript 漏洞利用的独特系统数量 - 来源: SIRv12
](https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/50/43/8004.1.jpg)
Blacole 是一个恶意软件家族的名称,它在感染时利用多个可用的漏洞来入侵系统。攻击者通过黑客论坛或其他非法渠道购买或租赁 Blacole 工具包。该工具包包含一组恶意网页,这些网页嵌入了针对漏洞的利用代码,目标包括 Adobe Flash Player、Adobe Reader、Microsoft Data Access Components (MDAC)、Oracle Java Runtime Environment (JRE) 以及其他常见产品和组件的版本。攻击者在恶意或受感染的 Web 服务器上安装 Blacole 工具包后,未安装适当安全更新的访问者将面临驱动下载攻击感染的风险。
以下是一个实际攻击示例:目标收到一封电子邮件,该邮件似乎来自其常用社交网络中的联系人。点击电子邮件中的“Visit your InBox Now(立即查看收件箱)”链接后,系统上安装的恶意软件防护软件会启动并检测到 JS/Blacole,通知检测到 Blacole 漏洞利用工具包的组件。
图2: 包含恶意链接的电子邮件示例
](https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/50/43/5611.2.jpg)
图3: 系统上安装的恶意软件防护软件检测到 Blacole 漏洞利用工具包组件
](https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/50/43/1070.3.jpg)
如果系统未安装最新的恶意软件防护软件,点击电子邮件中的恶意链接可能导致漏洞利用服务器尝试利用多个已知漏洞,直到成功入侵系统并安装恶意软件。
Microsoft Malware Protection Center (MMPC) 在博客文章中讨论过几种此类攻击示例:
如上所述,Blacole 漏洞利用工具包通常试图利用以下 Adobe Flash Player、Adobe Reader、Microsoft Data Access Components (MDAC)、Oracle Java Runtime Environment (JRE) 以及其他常见产品和组件的漏洞:
- CVE-2006-0003 - Microsoft Data Access Components (MDAC) 中 RDS.Dataspace ActiveX 控件的未指定漏洞(英语信息)
- CVE-2007-5659 - Adobe Reader 和 Acrobat 8.1.1 及更早版本中的多个缓冲区溢出(英语信息)
- CVE-2008-2992 - Adobe Reader 的“util.printf”漏洞(英语信息)
- CVE-2009-0927 - Adobe Reader 和 Adobe Acrobat 9(多个版本)中的基于栈的缓冲区溢出,允许远程攻击者执行任意代码(英语信息)
- CVE-2009-1671 - Deployment Toolkit 的“deploytk.dll”中 ActiveX 控件的 Java 缓冲区溢出(英语信息)
- CVE-2009-4324 - Adobe Reader 和 Adobe Acrobat 的“util.printd”漏洞(英语信息)
- CVE-2010-0188 - Adobe Acrobat Bundled Libtiff 的整数溢出漏洞(英语信息)
- CVE-2010-0840 - Sun Java JRE 信任方法链的远程代码执行漏洞(英语信息)
- CVE-2010-0842 - Java JRE MixerSequencer 无效数组索引的远程代码执行漏洞(英语信息)
- CVE-2010-0886 - Oracle Java SE 的 Java Deployment Toolkit 组件漏洞(英语信息)
- CVE-2010-1423 - Java NPAPI 插件的 URI 处理程序中的 Java 参数注入漏洞(英语信息)
- CVE-2010-1885 - Microsoft Help Center URL 验证漏洞(英语信息)
- CVE-2010-3552 - Sun Java Runtime 的新插件 docbase 缓冲区溢出(“Java Skyline 漏洞利用”)(英语信息)
- CVE-2010-4452 - Sun Java Applet2ClassLoader 的远程代码执行漏洞利用(英语信息)
- CVE-2011-2110 - Adobe Flash Player 中的未指定内存损坏漏洞(英语信息)
- CVE-2011-3544 - Oracle Java SE JDK 和 JRE 7 以及 6 更新 27 及更早版本中的 Java Runtime Environment 组件漏洞(英语信息)
从上述列表中的 CVE 编号可以看出,漏洞利用工具包针对的许多漏洞已经存在多年。
如之前所写(数百万件に及ぶ Java エクスプロイト攻撃: すべてのソフトウェアを最新の状態に保つ重要性(英语信息)),Java 漏洞是许多攻击的目标。与以往一样,许多被利用的 Java 漏洞已经存在多年,并且已经发布了多个安全更新来应对这些漏洞。如下面的 SIRv12 图表所示,2011年下半年(2H11)报告最多的 Java 漏洞利用案例是 CVE-2010-0840 - Sun Java JRE 信任方法链的远程代码执行漏洞。如上列表所示,这是 Blacole 漏洞利用工具包针对的漏洞之一。
图4: 2011年各季度报告 Java 漏洞利用的独特计算机
](https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/50/43/5153.4.jpg)
下表1显示了2011年下半年(2H11)报告 Blacole 漏洞利用工具包检测最多的前10个国家/地区。表1中的许多国家/地区也在同一时期报告了 CVE-2010-0840 漏洞利用攻击的最大检测/阻止数量,如表2所示。
表1: 2011年下半年(2H11)检测 Blacole 最多的前10个地点
](https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/50/43/5127.5.jpg)
表2: 2011年下半年(2H11)检测 CVE-2010-0840 漏洞利用攻击最多的前10个地点
](https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/50/43/8863.6.jpg)
应采取的行动如下:
- 如果最近没有更新环境中的 Java,需要评估当前风险。
- 重要的是要意识到一个系统上可能安装了多个 Java 版本。确定要保留的版本后,确保删除所有其他不需要的版本。
- 不仅保持 Windows 更新,还要保持环境中所有软件的最新状态。攻击者会针对所有常见软件的漏洞。
- 运行由可信供应商发布的恶意软件防护软件,并保持其最新。如上例所示,恶意软件防护软件可以有效缓解此类攻击的影响。
- 不要上当受骗 – 不要点击电子邮件中的链接或打开附件。
Trustworthy Computing(可信计算)部门
总监,Tim Rains(蒂姆·雷恩斯)