首页
社区
课程
招聘
[翻译]朝鲜APT组织HIDDEN COBRA远控工具NukeSped的深入分析
2019-11-28 20:57 7245

[翻译]朝鲜APT组织HIDDEN COBRA远控工具NukeSped的深入分析

2019-11-28 20:57
7245

朝鲜APT组织HIDDEN COBRA远控工具NukeSped的深入分析

简介

高级持续性威胁(APT)组织对全球安全构成了巨大威胁,尤其是有国家背景和支持的组织。在所有的APT组织中,来自朝鲜的组织因其强破坏能力以及高持续性而尤为值得注意。美国政府特别提到,一个称为HIDDEN COBRA的APT组织与朝鲜政府相关。

 

FortiGuard Labs一直在积极监视各种APT组织,包括HIDDEN COBRA。例如,在上一篇文章中,我们介绍了FALLCHILL远控工具(RAT)。最近,我们捕获到该组织使用的一些有趣的新样本,因此我们决定做进一步研究。

远控样本概览

我们分析的远控样本如下:

 

远控样本
图1:远控样本

 

总体来看,它们具有以下相似特征:

  • 大多数是32位
  • 字符串已加密以对抗分析
  • 编译时间范围为2017年5月4日10:40:47至2018年2月13日04:06:28

如下文所分析,实际上,它们的相似点要多于不同点,有的甚至复用函数。

 

代码复用
图2:代码复用

 

让我们进一步看下资源部分,因为这部分常常可以提供一些恶意软件来源的线索。

 

Language ID
图3:Language ID

 

可以看到,每个资源都有对应的Language ID。好奇的是,多数样本Language ID都是1042。

 

多数样本Language ID都是1042
图4:多数样本Language ID都是1042

 

根据权威数据,1042(0x0412)是韩语的语言标识。

 

LANG_KOREAN
图5:LANG_KOREAN

恶意软件功能

我们首先尝试分析这种恶意软件可能对受害者系统造成的影响。通常,最好的方法是检查恶意软件从目标系统调用的函数(比如API)。让我们开始吧。

 

乍一看,这些恶意软件似乎并没有调用很多API。导入表很短,也没有导入很多常见的DLL和函数。我们的直觉认为它可能会动态解析函数。确实,我们很快找到了GetProcAddress的实例。它甚至还加密了其API名,根据我们的经验,这是对抗静态分析的常用技术,但是对动态分析无效。因此,我们跟踪了恶意软件行为活动并找出了加密的API。

 

解密后的API
图6:解密后的API

 

可以看出,在用IDA分析之后,一切都说得通了。

 

下图显示了一个特例,其中函数名并没有加密,因此静态分析就可以了。

 

函数表
图7:函数表

 

该特殊样本的哈希值为b05aae59b3c1d024b19c88448811debef1eada2f51761a5c41e70da3db7615a9。聪明的读者可能已经注意到,此样本加载的函数的顺序与其他样本非常相似。

 

DLL
图8:DLL

 

用IDA查看函数名后,我们可以清楚地看到该恶意软件使用了注册表(Advapi32.dll)、网络(ws2_32.dll)等核心函数。

 

为了保持持续性,该恶意软件将其自身注入到Run键中:

 

持续性
图9:持续性

 

某些情况下,该恶意软件会伪装成服务进程。

 

服务
图10:服务

 

可以看到,DLL原始名隐藏于此。

恶意软件猫腻

我们来看下NukeSped的主要功能:远程控制。

 

经过逆向分析,我们找到了解密字符串的算法。

 

解密算法
图11:解密算法

 

简而言之,恶意软件使用基于xor的自定义加密方式。反过来,我们用decodeCmd来解密远程攻击者的命令。

 

解密命令
图12:解密命令

 

shell的逻辑
图13:shell的逻辑

 

正如典型的远控工具,该恶意软件会监听、执行和响应远程命令。完整的控制流程图(CFG)如下所示:

 

控制流程图
图14:控制流程图

 

从图14可以看出,shell的控制流程很清楚。首先是解析命令及其参数的通用逻辑,然后接入一个非常庞大的switch-case来处理每个命令。

 

我们逆向分析了该远控工具的逻辑,发现了许多经典的远控功能:

  • 遍历文件
  • 以其他用户的身份创建进程
  • 遍历进程和模块
  • 终止进程
  • 创建进程
  • 写文件
  • 读文件
  • 连接到远程主机
  • 移动文件
  • 从云端获取并运行payload
  • 获取磁盘信息,包括磁盘类型和磁盘的可用空间大小
  • 获取当前目录
  • 切换到其他目录
  • 从受害系统中删除主文件和其他关联文件

归因

归因几乎总是不精准的艺术,但让我们考虑以下关键证据:

  • 加密字符串的方式,以及加载API时调用字符串的方式(如图8)
  • 功能集和主要功能(远控)的结构让人想起FALLCHILL(如下)

FALLCHILL的shell逻辑
图15:FALLCHILL的shell逻辑

  • NukeSped的大多数样本都包含以下blob加密(如图16)。有趣的是,样本都包含相似的blob加密:

blob加密
图16:blob加密

  • 有趣的是,还有与HOPLIGHT关联的文件名

dump文件
图17:dump文件

 

HOPLIGHT分析
图18:HOPLIGHT分析

  • 大多数NukeSped样本(约70%)语言为韩文(如图4)

鉴于到目前为止的所有证据,我们可以得出结论,NukeSped远控工具与朝鲜APT组织(HIDDEN COBRA)有关。

解决方案

FortiGuard Labs的内部测试表明,受Fortinet解决方案保护的网络和设备,且安装了最新的订阅服务更新,可免受此恶意软件的影响。

 

尤其是,FortiGuard Antivirus服务可检测以下样本:

C2

与该恶意软件有关的恶意URL可被FortiGuard Web Filtering Service和僵尸网络IP引擎识别和过滤:

  • 119.18.230.253
  • 218.255.24.226

感谢Artem Semenchenko在归因过程中提供的思路。

 

像往常一样,FortiGuard实验室会密切注意此类高级威胁,以帮助和保护所有人。

 

原文链接:https://www.fortinet.com/blog/threat-research/deep-analysis-nukesped-rat.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+fortinet%2Fblog%2Fthreat-research+%28Fortinet+Threat+Research+Blog%29

 

翻译:看雪翻译小组 SpearMint

 

校对:看雪翻译小组 Green奇


[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
点赞1
打赏
分享
最新回复 (2)
雪    币: 720
活跃值: (343)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
gaoliangk 2019-11-29 00:38
2
0
1024
雪    币: 2176
活跃值: (1170)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
SpearMint 2019-11-29 19:09
3
0
gaoliangk 1024
你好,请问1024是指?
游客
登录 | 注册 方可回帖
返回