欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

FLASH零日漏洞CVE-2018-5002在中东地区的定向网络攻击利用

来源:本站整理 作者:佚名 时间:2018-06-21 TAG: 我要投稿


近期,ICEBRG 安全研究团队 (SRT) 识别出了Adobe Flash 0 day漏洞 CVE-2018-5002 的定向网络攻击行为,该 0 day漏洞被攻击者用于针对中东地区重要人士和组织的网络渗透。攻击者利用该漏洞构造的恶意Flash对象,可以在目标受害者电脑上执行代码,实现后续渗透的一系列Payload和恶意代码运行。
本文对将此类攻击的细节情况进行披露,包括技术分析、针对卡塔尔的定向攻击,以及一些防御性措施建议。我们希望公开这些发现,有助于行业和个人警惕该漏洞的类似网络攻击,及时做好安全防范。针对该漏洞,我们已于2018年6月1日 4:14 AM PDT 向Adobe进行了首报,在最快时间内,Adobe公司和我们ICEBRG 安全团队进行了协调解决并复现了整个漏洞,之后,2018年6月7日Adobe发布了该漏洞补丁。
攻击综述
我们发现,这次CVE-2018-5002漏洞的攻击行为中,其在目标受害者电脑上执行的利用代码是通过Microsoft Office来实现下载执行的,整个漏洞利用过程如下图所示,首先,当目标受害者点击了攻击者嵌入恶意对象的Microsoft Office文档后,会下载执行一个远程Shockwave Flash (SWF)文件。不同于大多数 Flash 利用代码搭载Microsoft Office的嵌入式传播方式,这里的 Microsoft Office 文档使用了一个很少有人熟知的功能,来从攻击者架构的服务器端加载了所有用到的SWF内容。
第一阶段的SWF传播过程中涉及了一个 RSA+AES 的加密体制,它可以保护后续作为实际exploit利用代码的SWF下载执行和分发。这种像RSA的非对称加密应用可以规避一些传统的重放型安全设备,并防止事后网络数据包的捕获分析;第二阶段SWF分发中,当目标受害者系统执行Microsoft Office 文档被点击触发后,就会使用之前的加密方式去从攻击者服务器中远程下载执行包含后门功能和后续利用工具的shellcode代码,最终实现对目标电脑系统的入侵控制。通常,最终的攻击Payload包含了一系列威胁性的核心shellcode代码,我们曾尝试去恢复提取最终Payload,但出于其它原因,最后并未成功。

远程 FLASH 包含
由于很多浏览器禁用了Flash功能,所以,此次攻击是从 Microsoft Office 内部加载Adobe Flash Player而起的,这是一种非常流行的方法。但从另外一个方面来讲,此次攻击又别有不同。通常来说,攻击者会在文档中嵌入整个作为exploit利用代码的Flash文件,或发起一些有选择性的 exploit 或 payload下载操作(如 APT28/Sofacy DealersChoice等),这就为安全防御者留下了可被标记或被回溯识别的 Flash loader 文件。
与这些典型的攻击利用不同,此次攻击没有直接嵌入Flash,而是使用了一个少为人知的功能来远程包含了Flash内容,如下图所示,最终组合效果是,只看得到选择了Flash Player ActiveX 控件的XML封装器和一个带参OLE对象:

上图中的Flash对象中,包含了一个“Movie”属性,而在“Movie”属性中又定义了一个远程的Flach对象地址,这纯粹是一个初始对象包含的应用实例。这种远程加载嵌入式Flash对象的方式具有多个显著优点:
免杀及规避性:首先,从 Microsoft Office 文档本身来说,不包含任何恶意代码。静态检测来说,最好的检查方式是去分析远程包含的Flash内容。动态检测来说,需要防御的沙盒/模拟器必须与攻击者服务器进行恶意内容的接收交互,这就要求分析系统与Internet有实时连接。而且,攻击者可以基于请求的IP地址或HTTP报头,来有选择地服务于下一阶段渗透。一旦对目标系统建立了访问权限通路,攻击者就可以停用他们的C2服务器,随后对攻击的分析只能依赖一些遗留行为证物了。
目标针对性:由于攻击者可以选择性地向受害者系统提供漏洞攻击利用代码,他们可以将攻击限制在有针对性的受害者系统之上。就比如,攻击者可以通过区域ISP将目标公司或个人的网络列入白名单,而将云基础架构和安全公司列入黑名单,从而限制对特定IP地址的访问。HTTP报头中的“Accept-Language” 和 “User-Agent”,也可用于将已知的受害者场所系统环境列入白名单,或将异常或过时响应的安全产品列入黑名单。HTTP报头的排序、包含或缺失通常也可能区分安全产品、真实受害者和定向目标。最后,“x-flash-version”  则可用来包含受害者系统的Flash Player版本,攻击者在服务端可以根据该版本选择最有效的漏洞利用代码来进行攻击。
即使攻击者这种静态的存在方式占用空间较小,但在 Microsoft Office 文档加载过程中,远程Flash对象也还是会在Microsoft Office 文档中提取执行。
加密机制
攻击成功后,从服务端到客户端的数据通信由下图利用AES对称算法的自定义加密机制来混淆,这种AES和RSA的组合利用,使Payload数据和对称密钥也能得到加密保护。而其自定义的加密机制则利用了一个公共的 ActionScript 脚本库来执行一些底层操作。

客户端首先向服务端发起数据通信请求,在此过程中,客户端通过HTTP POST方式,向服务端发送一个随机生成的RSA算法模数n,以及公钥指数e=0×10001,也即公钥(n,e),之后服务端用以下加密格式数据进行响应:
0×0: Encrypted AES key length (L)

[1] [2] [3]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载