概述
近期,奇安信威胁情报中心红雨滴团队在日常的高级威胁样本挖掘过程中,注意到一起长期针对中东地区的持续性攻击活动:至少从2016年2月活跃至今,该攻击活动背后的组织主要针对Windows端开展攻击。截止目前我们一共捕获到Windows平台攻击样本18个,涉及C&C域名3个。攻击活动具有以下特点:
主要以带有恶意宏的Word文档,伪装成视频、浏览器等软件的可执行文件为攻击载荷开展攻击活动。
C&C域名均伪装成microsoft相关,具有较强的迷惑性,其中microsoft[.]updatei[.]com自2016年开始一直沿用至今。
自2016年2月开始,恶意软件中PDB路径中几乎均带有“mklg”,攻击者一直使用同一家族木马进行重复开发,根据PDB路径,我们将此次活动命名为“MKLG”。
此次攻击活动的针对目标疑似为以波斯语为主要语言的中东国家。攻击者所处地理位置大概于东三区东四区附近。
键盘记录相关功能会将记录的信息转化为波斯语,可见该行动具有较强的针对性。
目前相关攻击对国内无影响,基于奇安信威胁情报中心的威胁情报数据的全线产品,包括威胁情报平台(TIP)、天眼高级威胁检测系统、NGSOC、奇安信态势感知等,都已经支持对此APT攻击团伙攻击活动的精准检测。
诱饵分析
此次捕获的样本均针对Windows平台,主要涉及两种攻击载荷形式:
一是带有恶意宏的Word文档:一旦受害者选择启用宏,恶意宏代码将会释放执行恶意软件,并向受害者展示相关诱饵信息迷惑受害者。
二是伪装成视频、浏览器等软件的可执行文件:其主要通过图标进行伪装,执行后并未展示相关视频或者软件,通常通过报错信息迷惑受害者。
恶意宏文档
恶意宏文档均携带有波斯语相关的文档内容,信息如下:
样本名 | hash | 最后修改时间 |
همبستگی عاشقانه با عاشقان آزادی2.doc | d30484a523fe3d8a883738f4ec06a952 | 2021-03-01 10:39:00 |
New Microsoft Word Document.doc | 458693ca1111a7236b53be25d0f9dca2 | 2021-07-05 12:16:00 |
打开文档后,无内容显示,诱导受害者启用宏以查看信息,一旦受害者启用宏后,恶意可执行文件将被释放执行,同时宏代码会将正文字体颜色设置为黑色以展示信息迷惑受害者,展示诱饵信息如下图所示:
d30484a523fe3d8a883738f4ec06a952 458693ca1111a7236b53be25d0f9dca2
视频类可执行文件
此类攻击样本通常以“.mp4.exe”名称结尾,并以视频图像为图标,试图使自身看起来像视频文件,以此诱导受害者点击执行,当执行后,样本并不会释放相关视频文件播放,仅仅弹出报错框,显示视频文件损坏以误导受害者,报错信息如下:
相关样本信息如下图所示:
软件类可执行文件
捕获的此类样本主要伪装成chrome浏览器,telegram,且图标设置为与正常软件相同的图标以诱导受害者执行,但运行后,并未具有相关功能,此类样本信息如下:
同时其PDB也包含其伪装的相关文件名。
样本分析
最终执行的恶意软件功能都基本样同,这里以最新捕获的d30484a523fe3d8a883738f4ec06a952为例进行分析,该样本基本信息如下所示:
文件名 | همبستگی عاشقانه با عاشقان آزادی2.doc |
MD5 | d30484a523fe3d8a883738f4ec06a952 |
最后修改时间 | 2021-03-01T10:39:00 |
最后修改者 | 98 |
该样本执行后,会诱导受害者启用宏,一旦受害者启用宏后,便会在c:\Users\Pulibc目录释放使用MFC编写的恶意update.exe并执行:
释放执行的update.exe基本信息如下:
文件名 | update.exe |
MD5 | f9509755c5781f87788ffdf9efad075d |
时间戳 | 2020:11:30 10:51:37 |
PDB | D:\mklgs\mfcmklg\Release\mfcmklg.pdb |
该样本运行后,在MFC的OnInitDialog中启动了两个线程,线程一为键盘记录功能,线程二与C2通讯获取命令进行执行。
初始化一部分当前PC环境路径,创建%public%\\AppData\\Libs和%public%\\AppData\\Windows 路径并将%public%\\appdata设为隐藏目录:
创建互斥“Global\\{2194ABA1-BFFA-4e6b-8C26-D1BB20190312}”防止多开:
在%public%\Appdata\Libs路径生成u.nfo文件用于保存键盘记录结果
之后将当前计算机名和用户名以如下结构:/i.php?u=计算机名_用户名&i=ip存放在http请求的ObjectName以POST方式上传至服务器microsoft[.]com-view[.]space,并按如下结构上传当前时间和当前进程路径:”p=<br><mark>Hello: 当前时间_</mark><br><mark>当前进程路径</mark>><br>”。
使用bitsadmin创建名为pdj的作业从”http[:]//microsoft[.]com-view.space/i[.]php?u=计算机名_用户名&i=proxy ip”下载后续文件到” %public%\AppData\Libs\p.b”
之后每隔一段时间上传键盘记录结果,在键盘记录函数中我们发现了对中东使用波斯语地区的字符转换,更加确定此次攻击是针对中东国家。
通讯线程首先将当前计算机的杀软信息以http get方式存放在请求的ObjectName字段以如下方式上传给服务器,以方服务端后续操作:”/ech/client.php?u=计算机名_用户名&k=flag”,如果当前电脑存在avp.exe(卡巴斯基)则设置flag为1,如果存在bdagent.exe(BitDefenderProfessional)则设置flag为3.
之后进入一个循环与服务器通讯,每次循环以http get方式设置ObjectName字段为如下方式上传给服务器:”ech/echo.php?req=rr&u=计算机名_用户名”。服务器返回json字段,json字段包含四个key分别是cmd,cmd2,cmd3,cid。”cmd”为需要执行的命令,cmd2和cmd3分别是命令的补充参数,cid为每次返回结果给服务器时带上的参数,具体分析如下:
解析json数据,如果发送错误则返回”error&r=计算机名_用户名”到服务器并等待循环下一次请求:
之后获取解析json数据,将cmd,cmd2,cmd3中的@userhome@和@public@转为当前电脑的真实路径,以方便后续命令执行:
延时delay命令:设置延时时间,单位(s):
文件夹上传命令uploadsf,uploads:在上传文件夹时候,会根据传入的参数实现不同的结果,可以分别指定递归遍历每一个子文件夹,指定上传特定类型的文件参数:
最终文件都会通过post方式上传到http[:]/microsoft[.]com-view[.]space /up/uploadx.php?u=计算机名_用户名,此处如果为jpg格式,还会使用gdi进行图片压缩上传:
命令runinhome:cmd启动%public%\\AppData\\Windows\\指定的进程:
命令download:使用http get请求,从json中指定的地址下载文件到本地:
命令dir:枚举指定路径下的所有文件和文件夹信息,并以post方式上传至http[:]/microsoft[.]com-view[.]space/ech/rite.php:
如果返回的不是上述命令,则直接以cmd执行返回的命令:
所有的命令整理如下:如下表所示:
cmd | cmd2 | cmd3 | 命令描述 |
delay | 时间(s) | 设置延时(s) | |
uploadsf | 文件夹路径 | 上传路径下的所有文件 | |
uploads | 文件夹路径 | 上传路径下文件夹中如下类型的文件: .rtf,.doc,.docx,.xls,.xlsx, .ppt,.pptx,.ppsx,.txt,.pgp, .pkr,.kdbx,.key,.jpg。 以及文件名为map0和map1的文件。 | |
upload | 文件路径 | 上传指定路径的文件 | |
dir | 文件夹路径 | 上传路径下的所有文件和文件夹信息 | |
runinhome | 进程名 | Cmd启动在%public%\Appdata\Wiindows\进程名 | |
download | http objectname | 下载到本地的路径 | 以get方式从microsoft[.]com-view[.]space设置objectname下载指定到本地指定路径 |
smart | 截屏保存在%public%\scr.jpg并且上传 | ||
smart | dir | 截屏上传,并且上传下列路径所有的文件和文件夹信息,c到z盘,C:\\Users, %HOMEPATH%\\Desktop,\\Documents,\\Pictures,\\Videos,\\Contacts,\\Downloads,\\AppData,\\AppData\\Local,\\AppData\\Roaming,C:\\Program Files,C:\\Program Files (x86) | |
smart | upload | 截屏上传,上传下列路径所有指定类型的文件(和命令uploads上传的文件类型一致),%HOMEPATH% \\Desktop,Documents,Pictures,Downloads,\\AppData\\Roaming\\ViberPc,\\AppData\\Roaming\\Skype,\\AppData\\Roaming\\Telegram Desktop,C:\\Program Files\\Telegram Desktop,C:\\Program Files (x86)\\Telegram Desktop,C:\\Users\\Public,d到z盘 | |
smart | fulldir | 截屏上传,上传路径所有的文件夹信息,%HOMEPATH% \\Desktop,Documents,Pictures,Downloads,\\AppData\\Roaming\\Telegram Desktop, C:\\Program Files\\Telegram Desktop C:\\Program Files (x86)\\Telegram Desktop C:\\Users\\Public ,d到n 盘: | |
其他 | 直接以cmd参数执行 |
溯源关联
此次捕获的MKLG攻击活动至少从2016年2月活跃至今,其中C&C: microsoft[.]updatei[.]com也从16年一直沿用至今。同时根据捕获的相关视频诱饵图标,以及代码中键盘记录转化为波斯语相关操作,都表明了此次攻击活动的针对目标疑似为以波斯语为主要语言的中东国家。
我们整理相关样本的时间戳如下(UTC):
2017-04-29,14:52:23 |
2016-06-20,10:09:59 |
2016-05-31,06:56:26 |
2016-08-25,09:40:03 |
2016-05-29,13:22:28 |
2016-06-11,07:48:28 |
2016-08-25,09:43:23 |
2016-05-30,07:46:03 |
2016-05-31,06:56:26 |
2016-10-10,08:26:46 |
2016-02-03,10:27:36 |
2016-06-08,11:18:57 |
2021-03-01T10:39:00 |
2020-12-14,12:59:48 |
2016-06-28,09:38:52 |
2016-07-20,07:06:37 |
2020-07-05 12:26 |
其时间戳所属区间为06-15(UTC),若按常规的工作时间09-18左右进行推算,攻击者大概处于东三区东四区附近。
总结
此次捕获的样本主要针对中东地区开展攻击活动,暂未发现影响国内用户,但防范之心不可无,奇安信威胁情报中心再次提醒各企业用户,加强员工的安全意识培训是企业信息安全建设中最重要的一环,如有需要,企业用户可以建设态势感知,完善资产管理及持续监控能力,并积极引入威胁情报,以尽可能防御此类攻击。
目前,基于奇安信威胁情报中心的威胁情报数据的全线产品,包括威胁情报平台(TIP)、天眼高级威胁检测系统、NGSOC、奇安信态势感知等,都已经支持对此APT攻击团伙攻击活动的精准检测。
IOCs
MD5:
d30484a523fe3d8a883738f4ec06a952
458693ca1111a7236b53be25d0f9dca2
d62fbd8f3685bdc92b485809e55d50bf
82f14031caec4a01c3572e921eaae8d0
f9d414f14884ec2443db06771f742f80
06c1985557630397000e1b9abc25dab2
4285d5b50cc0ac8ece891c20013b40fc
e9f97cc35389e93741ab13a61a32f164
8187b9a9af3eb78ee3b1190bb1db967e
e43e11b074fa7b071dec9bc294e0f95c
96e692be43e9716978a313557a4ee699
57e43cf7adae82ece53a9227fb6a03fb
a1c3cc33931fae798189cee74c15892b
62044996533a0ad2df418353e3a0192c
becf1a557e5d84e6048fa862e4e21b7f
1cf1685d64d485a82aba2478ded204df
294851a3f0669f17b48e7c1a0a239236
URL:
http[:]//microsoft[.]com-view.space//ech//client.php?u=
http[:]//microsoft[.]com-view.space//up/uploadx.php?u=
http[:]//microsoft[.]com-view.space//ech/echo.php?req=rr&u=
http[:]//microsoft[.]com-view.space//ech/rite.php
http[:]//microsoft[.]com-view.space//i.php?u=
http[:]//microsoft[.]updatei[.]com//ech//client.php?u=
http[:]//microsoft[.]updatei[.]com//up/uploadx.php?u=
http[:]//microsoft[.]updatei[.]com//ech/echo.php?req=rr&u=
http[:]//microsoft[.]updatei[.]com//ech/rite.php
http[:]//microsoft[.]updatei[.]com//i.php?u=
http[:]//microsoft[.]updatei[.]com/fff/s.txt
http[:]//microsoft[.]updatesystem[.]site
http[:]//microsoft[.]updatesystem[.]site//ech//client.php?u=
http[:]//microsoft[.]updatesystem[.]site//up/uploadx.php?u=
http[:]//microsoft[.]updatesystem[.]site//ech/echo.php?req=rr&u=
http[:]//microsoft[.]updatesystem[.]site//ech/rite.php
http[:]//microsoft[.]updatesystem[.]site//i.php?u=
PDB:
D:\mklgs\mfcdownl\Release\mfcdownl.pdb
D:\mklgs\mfcmklg\Release\mfcmklg.pdb
C:\Users\ja\Documents\Visual Studio 2015\Projects\mklg\Release\mklg.pdb
C:\Users\ja\Documents\Visual Studio 2015\Projects\mklg -binder\Release\mklg-binder.pdb
C:\Users\ja\Documents\Visual Studio 2015\Projects\mklgchrome\Release\mklgchrome.pdb
D:\ghabli\Projects\mklgtelegram\Release\mklgtelegram.pdb
C:\Users\ja\Documents\Visual Studio 2015\Projects\psiclient\Release\psiphon.pdb