安全分析与研究
专注于全球恶意软件的分析与研究
前言概述
原文出处:
先知社区 作者:熊猫正正
某微信好友求助笔者,可能自己中招了,让笔者看看是啥东西,具体做了什么,如下所示:
随后发来了样本和解压密码,如下所示:
笔者通过VT查了一下,发现VT上已经有样本了,但是检出率还挺低的,如下所示:
这么低的检出率,难倒是样本给错了?这瞬间激起了笔者想一探研究的兴趣,笔者平时没事的时候就喜欢研究一些有趣的好玩的对抗型攻击样本,如果恶意样本在VT已经标记的很清楚了,我倒真没啥兴趣分析,越有趣越好玩越高级越新鲜的对抗型攻击样本,我反而是越有兴趣深入分析研究,今天就让我们看看它究竟是什么?
详细分析
1.样本解压之后,如下所示:
2.里面包含一个EXE程序和一个XML文件,XML文件内容,如下所示:
好像没什么特别的内容,为啥样本压缩包里会包含这个XML文件呢?难倒是样本运行之后会检测这个XML文件?
3.通过分析EXE程序,发现该程序确实会针对XML文件进行相关操作,如下所示:
4.该EXE程序会检测XML文件,检测到XML文件,则跳转到恶意代码,如下所示:
5.恶意代码前面是一段数据解密操作,获取核心函数地址,后面解密Payload的核心代码,如下所示:
6.分配内存空间,用于解密ShellCode数据,如下所示:
7.解密ShellCode数据,如下所示:
8.将解密的ShellCode数据移动到此前分配的内存空间,如下所示:
9.最后通过CreateThreadpoolWait执行解密的ShellCode代码,如下所示:
10.跳转到ShellCode代码执行,如下所示:
11.解密出第二段ShellCode代码,如下所示:
12.执行第二段ShellCode代码,加载执行里面的Payload代码,如下所示:
13.Payload代码与此前母体核心代码相似,分配内存空间,用于存放第三阶段的ShellCode代码,如下所示:
14.解密第三阶段的ShellCode代码,如下所示:
15.解密出来的第三阶段的ShellCode代码,如下所示:
16.第三阶段的ShellCode代码,从黑客远程服务器读取第四阶段ShellCode代码,然后在内存中加载执行,如下所示:
17.ShellCode代码,如下所示:
18.通过分析发现该ShellCode代码通过异或算法解密出第五阶段的ShellCode代码并加载执行,如下所示:
19.该ShellCode加载执行里面的CS木马,如下所示:
20.解析出该CS的配置信息,如下所示:
关联分析
通过该域名关联到相关的样本,如下所示:
分析关联到的样本123.exe,编译时间为2023年8月14日,如下所示:
该样本就是上面母体样本解密出来的第二阶段ShellCode里面包含的Payload代码,如下所示:
分析下面两个ProgramData压缩包的样本,发现里面的EXE是一样的,与上面的样本一样都包含一个XML文件,如下所示:
样本的编译时间为2023年8月7日,应该是比上面母体样本更早的攻击样本,如下所示:
该样本需要加载读取XML文件内容才能执行后面的恶意代码,如果没有读取到XML文件相应的内容,则直接报错误,如下所示:
加载XML成功之后,执行跳转到后面的恶意代码,如下所示:
恶意代码解密出ShellCode代码,如下所示:
解密出来的ShellCode代码,如下所示:
最后通过CreateThread执行ShellCode代码,如下所示:
该样本解密出来的ShellCode代码,与上面样本解密出来的第三阶段的ShellCode代码基本一致,如下所示:
通过上面的分析,可以得出此前我们分析的样本应该是关联到样本的更新版本,关联到的样本编译时间为2023年8月07日,我们分析的样本编译时间为2023年9月11日,同时去年八九月份正好在进行相关的攻防演练,可以判断该样本大概率是某个公鸡队的样本。
威胁情报
总结结尾
做安全,免杀是一个永恒的话题,是一场猫捉老鼠的游戏,通过研究一些对抗型的攻击样本,可以更好的了解攻击者在使用什么技术。