龙空技术网

赶紧打补丁!黑客利用谷歌浏览器零日漏洞CVE-2019-13720发起攻击

网络攻防 875

前言:

眼前朋友们对“ashxjsonajax”大致比较看重,姐妹们都需要学习一些“ashxjsonajax”的相关资讯。那么小编同时在网摘上网罗了一些有关“ashxjsonajax””的相关资讯,希望看官们能喜欢,各位老铁们快快来学习一下吧!

最近,卡巴斯基实验室发现了一场黑客攻击行动,并将其命名为“Operation WizardOpium”。

在这场攻击行动中,攻击者利用了谷歌浏览器中的一个尚未公开的漏洞——CVE-2019-13720,并试图嫁祸给朝鲜黑客组织“Lazaru(拉撒路)”。

技术细节

在一个韩语新闻门户网站上,攻击者在主页中插入了恶意的JavaScript代码,以从远程网站上加载配置脚本。

如你所想,这就是传说中的“水坑攻击(Watering hole)”。

图1. 重定向到漏洞利用登录页面

主页面上托管着一个小型JavaScript标签,可以从hxxp://code.jquery.cdn.behindcorona[.]com/加载远程脚本。

随后,该脚本便会加载另一个名为“.charlie.XXXXXXXX.js”的脚本,用于对比浏览器的用户代理信息(检查浏览器是否运行在64位的Windows系统上,并且不以WOW64进程运行),以检查目标系统是否能够被感染。

此外,该脚本还会尝试提取浏览器的名称及版本——攻击者想要利用的是谷歌浏览器中的一个bug,需要通过该脚本来判断浏览器版本号是否大于或等于65。

图2. 用于检查浏览器版本的“.charlie.XXXXXXXX.js”脚本

如果条件符合,该脚本则会向由攻击者控制的服务器(behindcorona[.]com)发起一系列AJAX请求,其中路径名以参数形式传入目标脚本(xxxxxxx.php)。

第一个请求用于获取某些重要信息,以备后用。信息包括多个经过十六进制编码的字符串,用于指导脚本需要从服务端下载多少块(chunk)漏洞利用代码。

此外,字符串还包含指向某个图像文件的URL,该文件中包含最终有效载荷的秘钥以及用于解密漏洞利用代码块的RC4秘钥。

图3.利用链-向xxxxxxx.php发起AJAX请求

在下载完所有块后,RC4脚本将解密所有数据并将它们拼接在一起,以向攻击者提供一个包含完整漏洞利用代码的JavaScript脚本。

图4. 再次检查版本号

漏洞利用脚本经过混淆处理,在去混淆后,我们会发现一些奇怪的东西:

图5. 经过混淆处理的漏洞利用脚本

1、脚本会再次检查用户代理字符串,以确定浏览器版本是76还是77。

2、一些函数调用了浏览器的BigInt类,而该类可用于在JavaScript代码中执行64位运算。通常来讲,漏洞利用脚本开发者会通过使用32位数值来实现自己的函数。但在这场行动中,攻击者使用的却是BigInt。

图6.用于处理64位数值的代码片段

3、有很多函数及变量并没有在实际代码中使用,这通常意味着这些函数及变量属于忘了被删除的调试代码。

4、大部分代码都使用了多个类,而这些类都与浏览器中存在漏洞的某个组件有关。

5、代码中还有一些大数组,用来表示shellcode代码及内嵌的PE映像。

漏洞利用脚本首先会尝试触发UAF,以获取一些关键的64位地址信息。如此一来,攻击者便可以实现:

如果获取地址成功,意味着漏洞利用脚本运行正常;可以使用提取到的地址获取堆/栈的位置,绕过ASLR(地址空间布局随机化)机制;可以在该地址附近进行搜索,进而发现其他有用的指针,以备后用。

然后,脚本会尝试使用递归函数创建一大堆大型对象。这样做是为了获取特定的堆布局,这对于确保漏洞利用能够成功很重要。

与此同时,脚本还将尝试使用堆喷射技术,目的是复用先前在UAF中被释放的同一个指针。

总的来说,脚本会尝试执行各种操作来分配/释放内存以及其他一些技术,最终攻击者成功实现了任意读/写原语。通过这种方式,攻击者能够构造一个特定的对象,与WebAssembly及FileReader配合使用,以执行嵌入式shellcode有效载荷。

图7.第一阶段shellcode

有效载荷分析

最终下载的有效载荷是一个经过加密处理的二进制文件(worst.jpg),由shellcode负责解密。

图8.经过加密处理的有效载荷“worst.jpg”

解密后,恶意软件模块将以“updata.exe”的形式保存到本地磁盘上并执行。为了实现长久驻留,恶意软件会在Windows Task Scheduler中创建计划任务。

有效载荷的安装程序是一个RAR SFX压缩文件,具体信息如下:

文件大小:293,403MD5:8f3cd9299b2f241daf1f5057ba0b9054SHA256:35373d07c2e408838812ff210aa28d90e97e38f2d0132a86085b0d54256cc1cd

它包含两个文件:

图9. SFX压缩文件所包含的两个文件

文件名:iohelper.exe

MD5:27e941683d09a7405a9e806cc7d156c9

SHA256:8fb2558765cf648305493e1dfea7a2b26f4fc8f44ff72c95e9165a904a9a6a48

文件名:msdisp64.exe

MD5:f614909fbd57ece81d00b01958338ec2

SHA256:cafe8f704095b1f5e0a885f75b1b41a7395a1c62fd893ef44348f9702b3a0deb

这两个文件的编译时间完全相同,都是“2019年10月8日 01:49:31”。

其中,msdisp64.exe就是恶意软件的主模块,用于通过硬编码的C2服务器列表下载下一阶段有效载荷。

想要获取有关这场黑客攻击行动更为详细的信息,可以与卡巴斯基实验室进行联系,部分IoC如下:

behindcorona[.]comcode.jquery.cdn.behindcorona[.]com8f3cd9299b2f241daf1f5057ba0b905435373d07c2e408838812ff210aa28d90e97e38f2d0132a86085b0d54256cc1cd27e941683d09a7405a9e806cc7d156c98fb2558765cf648305493e1dfea7a2b26f4fc8f44ff72c95e9165a904a9a6a48f614909fbd57ece81d00b01958338ec2cafe8f704095b1f5e0a885f75b1b41a7395a1c62fd893ef44348f9702b3a0debkennethosborne@protonmail.com

标签: #ashxjsonajax