魔芋行动(Operation Ninikachu)针对韩国某大型集团的定向攻击
背景
近日,安恒威胁情报中心猎影实验室在文件威胁分析平台上监测到了一起针对韩国大型公司的高级可持续攻击,分析发现攻击者疑似来自印度,通过样本中的关键词汇将该起攻击命名为Ninikachu行动(Operation Ninikachu)。
样本分析
攻击者会投递高度伪装的文档,文档示例展示如下:
文档利用形式相同,都使用了相似的恶意宏代码,我们拿出其中一个进行分析,如“가격정책_191030.xls”文档。
文档中包含恶意宏代码
宏代码的功能为远程下载文件,其地址如下:
- hxxps://218.233.105[.]187/as/static/webui/skcc.com/ReportSVC.exe
保存到“c:\ProgramData\ReportSVC.exe”并执行。
ReportSVC.exe程序为加过密的python打包程序,将该程序进行解包并反编译还原,
可以得到agent主程序,并可以通过AES算法使用加密key:“XMBciXE37aHQGPDH”解密被加密的一些模块,
如解密config.pyc.encrypted文件解密出config模块:
内部包含程序执行所需要的各种配置信息,如回连地址信息“hxxps://218.233.105[.]187”,服务前缀“skcc[.]com”,帮助信息等等。
接下来分析反编译出的agent.py程序,发现其就是一个python 远控后门程序。包含多个功能指令。
程序会先进行初始化,从配置文件文件中获取各类配置信息,以及收集本机计算中的各类信息,
如获取系统版本信息:
获取uid信息:
获取Hostname信息:
获取Username信息:
然后回连C2,发送信息并通过指令进行交互
几个关键功能包括:
函数Getdocpaths:获取指定路径下的doc*,xls*,ppt*路径信息
函数Upload:上传本地文件到服务器。
函数Download:从远程服务器通过http(s)下载文件。
函数Powershell:运行powershell程序或命令。
函数Python:运行python命令或python程序。
函数Getpw(Ninikachu):通过使用Empire的Invoke-Mimikatz.ps1来获取系统密码。
Agent程序整体函数功能如下列表:
函数 | 功能 |
__init__ | 程序初始化,获取信息和配置等 |
log | 日志记录 |
get_UID | 获取uid |
jsonenc | Aes encrypt |
add_server | 添加C2服务地址 |
server_hello | 请求服务指令 |
send_output | 发送控制台输出内容到服务器 |
expand_path | 扩展环境变量 |
runcmd | 运行cmd指令 |
getdocpaths | 获取指定路径下的doc*,xls*,ppt*路径信息 |
powershell | 运行powershell程序 |
filterInput | 过滤输入内容 |
ninikachu | 获取系统密码 |
python | 运行python命令或python程序 |
cd | 切换目录 |
upload | 上传本地文件到服务器 |
download | 从远程服务器下载文件 |
exit | 退出agent |
zip | Zip压缩文件或文件夹 |
help | 帮助 |
run | 循环运行指令交互 |
关联分析
- https指纹分析
根据之前的样本,我们知道其回连地址是218.233.105[.]187且使用https进行通讯,我们获取https的证书sha1值
-
- c8b81df62b3d9238c8f7050de7e360af7a6e54b0
使用安恒全球网络空间超级雷达sumap进行检索,又发现另2个使用了相关证书的ip地址:
通过关联分析,发现了其中一个IP地址目前仍可访问,其后台地址:
- 代码特征分析
分析页面信息,其含有一个叫“Ares”关键词信息,通过互联网检索发现,该后台是Ares远控程序的控制端,而解密后的agent程序为Ares的被控端。
Ares的代码在github属于开源项目,但是这次攻击的程序是黑客定制修改版本,修改包括:
-
- 设置终端语言版本。代码中使用“cp949”编码可以看出针对目标语言为韩语。
- 添加了一些窃密功能,如getdocpaths、powershell、ninikachu等定制或重要功能
- 被攻击目标分析
最开始的木马ReportSVC.exe程序下载地址为hxxps://218.233.105[.]187/as/static/webui/skcc.com/ReportSVC.exe中包含的skcc[.]com
而在解密的config.py配置文件中服务前缀SERVER_PREFIX也是包含skcc[.]com
猜测本次攻击目标为韩国SK C&C公司。
SK C&C是韩国几大企业集团之一的SK集团的全资子公司,主营业务为IT服务提供商和数字业务。
- 推测攻击者
可以从pyimod01_os_path等文件中得到电脑的用户名“kngkn”的信息。
通过一些搜索发现,推特上有这么一个用户名,并且还关注了两个用户,都和数字媒体相关,并且所在地为南亚某国。
再可通过facebook搜索kngkn用户名查看人物,发现大多数人物所在地都在南亚某国,
如这些人物所在的地址:
说明该名字在某地区有迹可循。
再来看看“Ninikachu”这个函数功能是使用mimikatz,两个单词拼读起来也感觉类似,推测攻击者可能是南亚某国的口音。
拆分ninikachu为nini和kachu,通过检索发现在梵文中kachu叫做芋头,所以我们将这次攻击也叫作魔芋行动(Operation Ninikachu)。
IOC
MD5:
7927a48e2033e44b2f2d0e598c962f4b
526842fdffa6ef89ae8e36d828d5edec
7e851a98cf624f3b11d35937bbb54326
36bcfeb8840b8cbdacd2f1faf9c6a3ae
IP:
218.233.105[.]187
211.209.140[.]113
114.202.238[.]178
URL:
hxxps://218.233.105[.]187/as/static/webui/skcc.com/ReportSVC.exe
hxxps://211.209.140[.]113/as/static/webui/skcc.com/SCMetroUIUpdater.exe
hxxps://114.202.238[.]178/as/login