概述
瑞星威胁情报平台于2022年3月捕获到一起疑似针对军工领域相关从业人员的攻击事件。捕获到的样本伪装成知名企业洛克希德马丁公司的招聘文件,以工作机会为主题诱骗军工领域的相关用户。该文件内容被设置为乱码,以此欺骗用户通过启动文件的宏程序解码文件内容,从而释放出恶意程序。其行为具有高隐蔽性,难以被用户发现。根据详细分析,判定此次攻击活动是由Lazarus
组织所为,同时通过关联分析,发现此次事件是该组织自2021年以来一系列攻击活动的延续。
Lazarus
组织是一个自2007年就开始对目标进行网络攻击的威胁组织,该组织又被称为APT-C-26
、T-APT-15
等,是现今最活跃的威胁组织之一。该组织疑似来自朝鲜,具有国家背景。其除了擅长信息盗取,间谍活动,还会蓄意破坏获取经济利益,攻击的国家包括中国,德国,澳大利亚,日本等,涉及的领域有航空航天、政府、医疗、金融和媒体等。
ATT&CK矩阵
战术 | 技术 | 具体行为 |
---|---|---|
TA0002 -执行 |
T1204 -用户执行 |
诱使用户点击执行 |
TA0005 -防御规避 |
T1036 -伪装 |
初始文档伪装为职位招聘文件,欺骗用户 |
TA0005 -防御规避 |
T1027 -混淆过的文件或信息 |
传送信息均通过base64及异或算法编码处理,以规避流量监控 |
TA0007 -环境发现 |
T1057 -收集进程信息 |
收集被入侵主机的所有进程列表 |
TA0007 -环境发现 |
T1082 -收集系统信息 |
收集被入侵主机的主机名 |
TA0007 -环境发现 |
T1016 -收集系统网络配置 |
收集被入侵主机的网络配置信息 |
TA0007 -环境发现 |
T1033 -探测系统所有者/用户 |
收集被入侵主机的用户名 |
TA0011 -指挥与控制 |
T1071 -应用层协议 |
使用HTTP/HTTPS进行通信 |
TA0011 -指挥与控制 |
T1132 -数据编码 |
传输的信息经过base64及异或编码处理 |
TA0011 -指挥与控制 |
T1573 -加密通道 |
使用SSL/TLS加密通道传输信息 |
TA0011 -指挥与控制 |
T1008 -备用通道 |
文档传入的参数内包含3个编码后的C2地址 |
TA0010 -外传信息 |
T1020 -自动外传 |
自动发送收集到的受害者机器信息 |
TA0010 -外传信息 |
T1041 -通过C2通道外传 |
C2通道同时可以接收木马回传的受害者机器信息 |
事件详情
此次攻击事件的初始样本是名为LMCO_Senior Systems Engineer_BR09.doc
的文档,通过名字可知,该文档以知名军工企业的高级职务招聘为诱饵,欺骗相关用户查看文件内容。但其文档内容显示为乱码,如下图所示,进而引导用户启动宏代码以达到解码文档内容的目的。但宏代码会在后台释放并执行内嵌于文档中的恶意程序,开启攻击行动。该攻击流程利用人性弱点,极具诱惑性和隐蔽性,使普通用户难以防范。下图为诱饵文档内容:
攻击流程
样本分析
瑞星威胁情报平台在此次攻击行动中捕获到的恶意文件为doc
文档,利用职位招聘为诱饵,欺骗用户主动打开文档。该文档最终释放的payload
为远控类木马,与远程服务器通信,执行窃密、远控等恶意操作。攻击流程虽然简单,但是极具诱惑性和隐蔽性,普通用户较难防范。
1、初始文档分析
字段 | 内容 |
---|---|
原始文件名 | LMCO_Senior Systems Engineer_BR09.doc |
文件大小 | 227.0KB(232448 bytes) |
文件MD5 | 12cca852c5c2862d678faf08500e347a |
文件类型 | DOC |
备注 | 初始文档,释放并执行恶意程序 |
1.1、获取恶意代码
不同的数据存放在不同的shape
对象的文本框内。部分数据经过内嵌的解码函数处理,key
为3452211
。
解码函数代码如下:
解码后的数据如下:
1.2、释放恶意文件
将获取到的数据写入本地文件C:\ProgramData\AxInstUI.exe
,并设置为隐藏属性。然后调用run
方法执行,其中需要向恶意程序执行传递三个参数,分别是:
- 参数0:
AddLanguageFontRC
- 参数1:
AppX
- 参数2:
D4kQiD20CLgnok6oSJtxpiSZI5UxshRJNXoPYTp2JGNhaT5o5lQXWDpCPQggOx4GQTkXNRISMSn/GvwBDRbVA9bJ2cjC9Mz45+Kd6DHb8+bL2fnVsvLaifi626GttvOj7Kn5qN2U6ZjFgrpI/XvYRtd5b3V+Urdp1VrCQZhWTENCCV0IdjTNOOAizCjVG/4m9RnOFdQy0cn7+uHh+Pb341jpQOhq1JPYgML9iKK7noaWuW61gJJzqX2ar4FJlkGDVklQSHR0t3ggYlRoRVtgZj5ZD1VvcmsJdTpmITI2NyMiKXsoJhRWGEoCf8h8+x7GRflB9VHSPOlb2j3BGdYRwwSJJ4g3tAy4IaIZqBybfqYmmSOVLLJOSQJ6HmEEdiRj2Gl9aOpUG1gGQn0IJjsTBhc5RDX3EvcpGRoWAQ==
代码如下图
2、木马AxInstUI.exe分析
字段 | 内容 |
---|---|
原始文件名 | AxInstUI.exe |
文件大小 | 120.00 KB (122880 bytes) |
文件MD5 | e1a7fc9184aa8329605f083b6a439eca |
文件类型 | EXE |
主要功能 | 远控木马 |
病毒名 | Backdoor.[Lazarus]NukeSped!1.DB16 |
该恶意样本为远程控制类木马,具有收集本地敏感信息、连接远程服务器、上传信息并接受命令等基本功能。与远程服务器的双向通信数据都经过编码处理,可以有效的逃避以检测特征码为主要防御手段的流量监控,隐蔽性极高。
2.1、收集主机信息
恶意程序手机受害者主机的相关信息,标识主机的字段是根据主机名+MAC
地址组成的字符串,在本地经过计算得出的数字,后面该数字将作为受害主机标识符与远程服务器通信,经过编码处理后可以有效规避流量监控
2.2、获取C2地址
判断传入参数是否包含字符串AppX
。如果不符合条件,则程序退出运行。符合条件,则获取该字符串之后的参数,然后在本地解码就可得出后续需要用到的远程服务器地址,共有三个,以防止失联。
解密出的地址有三个,后续将循环连接。
hxxps://monitorr.jamdown.co.nz/assets/data/css/custom.php
hxxp://13.88.245.250/admin/install/custom.php
hxxp://mantis.binarysemantics.com/extra/map/map
2.3、处理收集的本地信息
将收集本地主机名、网络配置及进程列表信息保存到内存缓冲区中
内存中收集到的信息如下图
调用动态获取地址的API
函数RtlCompressBuffer
,对收集到的信息就行压缩处理。
2.4、与C2服务器通信
通过HTTP
协议与服务器交互。恶意程序在与C2
服务器建立连接后,通过发送POST
请求与服务器进行交互
数据内参数共有三个,分别是search
、ei
和oq
。 其中参数search
的值类似于指令,告知服务器执行不同的操作,其值和功能如下表。参数ei
的值为前面在本地计算出的标识符,参数oq
的值则根据参数search
的值而有所不同,后续会进行详细分析。指令功能表如下:
值 | 功能 |
---|---|
YOIPOUP |
上传信息 |
DOWNPANY |
下载 |
TOPMEIL |
通知服务器入侵是否成功 |
2.5、指令YOIPOUP
功能分析
search
参数值为YOIPOUP
时表示向C2
服务器上传信息,其中第三个参数oq
的值就是收集到的本地敏感信息。不过需要将之前压缩处理后的数据再次进行base64
编码,就此实现了窃密功能。
YOUPOUP
指令代码。
网络抓包内容。
2.6、指令DOWPANY
功能分析
search
参数值为DOWPANY
时表示向服务器提出下载请求,此时不需要传递第三个参数。虽然服务器已经失效,无法获取下载数据,但对后续代码分析可知,下载的数据将作为下阶段的恶意payload
,执行其他恶意行为。
下载的数据是经过编码处理的,需要在本地进行二次异或处理,代码如下图。
判断下载数据中的首字节字段,决定是否释放并执行下载文件,并根据其具体的值,执行不同分支。其中下载数据中0x2C
偏移处的字段将作为参数传递给释放的恶意程序,三个分支中执行的恶意程序都需要传递此参数。
分支一,通过写文件的方式将数据写入本地文件,文件名格式为~DMF%04d.tmp
,%04d
为当前系统运行时间。
执行下载的恶意程序,红框内的两个数值在后续与TOPMEIL
页面通讯时将会用到,作为参数oq
的组成部分,用以告知服务器入侵程序是否成功执行。
分支二,同样执行本地写文件操作,但是这里释放的文件为dll
,其路径是一样的,只是需要调用rundll32.exe
执行dll
文件。
分支三,根据代码可知,读取的数据为一段shellcode
,此处直接调用执行,并传入参数。
2.7、指令TOPMEIL
功能分析
search
参数值为TOPMEIL
时,此时参数oq
的值由三组字段组成,每个字段的不同含义根据程序的不同执行流程而有所不同,此值将告知远程服务器目前的入侵情况。
关联分析
Lazarus
组织是东亚地区最为活跃的APT
组织之一,据研究人员追踪分析,该组织早期主要针对韩国、美国等政府机构,以窃取敏感情报为目的。但是,近年来研究人员发现该组织则转变了攻击目标,主要以全球各大金融机构、军工企业及虚拟货币交易所等机构为目标,窃取现金或是高价值商业情报。
通过进一步关联分析,据研究人员报告,于2021年10月份捕获的一起攻击事件非常相似。其初始文档都是伪装成军工企业的招聘文件,以工作机会为诱饵展开攻击行动。与本次攻击行动不同的时,该样本释放的是DLL
恶意程序,同样由宏代码传递的三个参数中,第一个参数为DLL
程序的导出函数。
初始文档名LMCO - JD.doc
,文件内容同样为乱码,如下图。
宏代码基本相似,从文档的text
控件中提取文本内容,经过本地解码后获得所需数据,两次攻击活动初始文档宏代码对比图。
传递的参数如下。
总结
APT攻击有着针对性强、组织严密、持续时间长、高隐蔽性和间接攻击的显著特征,针对的目标都是具有重大信息资产,如国家军事、情报、战略部门和影响国计民生的行业如金融、能源等,国内相关政府机构和企业单位务必要引起重视,加强防御措施。
预防措施
-
不打开可疑文件。
不打开未知来源的可疑的文件和邮件,防止社会工程学和钓鱼攻击。
-
部署网络安全态势感知、预警系统等网关安全产品。
网关安全产品可利用威胁情报追溯威胁行为轨迹,帮助用户进行威胁行为分析、定位威胁源和目的,追溯攻击的手段和路径,从源头解决网络威胁,最大范围内发现被攻击的节点,帮助企业更快响应和处理。
-
安装有效的杀毒软件,拦截查杀恶意文档和木马病毒。
杀毒软件可拦截恶意文档和木马病毒,如果用户不小心下载了恶意文件,杀毒软件可拦截查杀,阻止病毒运行,保护用户的终端安全。
瑞星ESM目前已经可以检出此次攻击事件的相关样本。
- 及时修补系统补丁和重要软件的补丁。
沦陷信标(IOC)
-
MD5
12cca852c5c2862d678faf08500e347a a145fc533ba903209544597c978d0e08 e1a7fc9184aa8329605f083b6a439eca 4750356c638d963f1021103bebaafc55
-
URL
hxxps://monitorr.jamdown.co.nz/assets/data/css/custom.php hxxp://13.88.245.250/admin/install/custom.php hxxp://mantis.binarysemantics.com/extra/map/map
-
IPV4
13.88.245.250
-
瑞星病毒名
Backdoor.[Lazarus]NukeSped!1.DB16