安全分析与研究
专注于全球恶意软件的分析与研究
前言概述
原文首发出处:
https://xz.aliyun.com/t/14272
先知社区 作者:熊猫正正
群里有朋友分享金眼狗的样本,如下所示:
金眼狗是一个针对在东南亚从事博彩、狗推相关人员以及海外华人群体的黑客团伙,其业务范围涵盖远控、挖矿、DDoS攻击等,样本主要通过在社交群组中进行分享传播,免杀性做的比较好,主要通过一些热点的事件进行钓鱼传播,也会使用挂马的方式在一些网站进行传播。
详细分析
1.分享的样本文件,如下所示:
2.采用白+黑的方式,加载同目录下crt.dll恶意模块,如下所示:
3.crt.dll恶意模块在VT上的检出率为零,如下所示:
4.恶意模块会读取内目录下的LP.TXT数据,如下所示:
5.读取LP.TXT数据到内存,如下所示:
6.解密数据,如下所示:
7.解密后的数据,如下所示:
8.解压缩上面解密后的数据,如下所示:
9.解压解密出来的payload使用UPX加壳处理,如下所示:
10.使用upx工具对上面的payload脱壳,如下所示:
11.使用反调试技术,如下所示:
12.使用反虚拟机技术,通过检测内存大小,如下所示:
13.循环解密出c2配置列表信息,如下所示:
14.解密出来的c2配置列表信息:
15.通过|#$|作为分隔符,判断分隔符前面的字符串部分与文件目录名中%之后的字符串是否相同,相同选择后面的c2地址进行通信,该样本目录%之后为n,所以选择118.107.40.15作为通信c2地址,如下所示:
16.判断是否为管理员权限运行,如果不是则尝试以管理员身份运行,如下所示:
17.如果是管理员身份运行,创建目录,将原文件拷贝到目录,如下所示:
18.拷贝之后的文件目录的文件,如下所示:
19.并创建服务自启动项,如下所示:
20.通过修改注册表项绕过系统UAC,如下所示:
21.绕过SESSION 0隔离创建用户进程,实现进程间通信,如下所示:
22.执行相关的c2指令命令,如下所示:
该木马支持各种插件扩展功能,包含清除各种浏览器数据、下载文件或插件、执行指定程序、结束进程等功能。
关联分析
有一些朋友经常问我如何进行关联分析,通过单个样本关联到多个样本或情报,这里教大家一个最简单的关联分析方法,简单谈谈关联分析与溯源归因问题。
最简单的就是一些分析平台或威胁情报平台上已有样本,这样就不需要分析样本,即可以关联分析,例如这个样本VT上已经有了,但是检出率为零,通过VT关联,可以找到这个样本的相关母体样本,母体在VT上的检出率也为零,如下所示:
在VT上查看母体样本,关联信息,发现它已经关联到该样本的c2信息,如下所示:
可以拿这个IP到一些威胁情报平台进行查询,发现已经标注为金眼狗黑产,如下所示:
然后可以将这个IP在VT上进行关联分析,找到更多相关的样本,如下所示:
再去分析上面这些样本,就同样的方法就可以关联出更多的相关样本了,这就是最简单的通过分析平台和威胁情报平台来进行关联分析了,这种关联分析不用分析样本,就可以大概知道它属于哪个黑产团伙或APT攻击组织的攻击样本,不过这只能依靠第三方的分析平台和威胁情报平台的安全能力了,你的关联分析和溯源能力完全取决于别人的平台能力,如果平台上没有,你基本就没办法关联和溯源了,同时未来如果这些平台都开始收费,你可能需要付费,才能进行相关的查询了,同时我们可能看到该样本其实包含有多个不同的c2基础设施,会根据样本运行状态使用不同的c2服务器,大部分沙箱只能跑出其中一个或几个,有很大的局限性,如果想找到样本中包含的多个c2服务器,也只能通过逆向分析才能拿到全部的基础设施了。
上面讲的是平台上已经有了样本,同时威胁情报平台已经更新了情报,一些情况下,如果我们是从客户手上拿到第一手事件攻击样本,这些样本大多数是平台上都没有,属于私有样本,那就只能自己对样本进行深度分析,从样本中找到相关的威胁情报或特征规则,进行规则匹配,然后再将威胁情报拿到平台上进行关联分析,但如果你不太会样本分析,就只能把样本上传到平台了,这有一个问题就是你的私有样本会被泄露到平台上,可能你的私有样本中包含一些很敏感的信息,同时平台也不一定能保证跑通你的样本,现在很多高级样本都有很强的对抗技术,大多数平台只能动态跑出一些简单的东西,深层次有价值的信息,也只能手动逆向分析了。
如果威胁情报平台还没有及时更新信息,可能你通过沙箱或人工分析出来的IP和域名并没有在平台上标记,这个时候,只能通过其他关联信息来对攻击事件和样本进行关联了,一般的可以使用样本静态和动态特征相似度、攻击手法相似度、基础设施特征相似度、网络流量特征相似度等各种相似度,来进行归因,这种归因也需要一定的逆向基础,同时需要有一些有威胁情报分析能力。
关联分析或者说归因其实是一项很复杂的工作,特别是对一些高级样本的归因,需要分析很多相关的样本或威胁情报,才能进行大致归因,如果样本比较复杂,本身分析可能就需要花费很多时间和精力,找到有价值的特征,然后再进行后面的关联分析和归因等。
关联分析和溯源归因就简单聊到这里,针对高级事件的归因是很一个很复杂的事情,因为攻击者会想办法隐藏自己的信息,需要掌握和分析大量的威胁情报数据才能进行归因,就像此前xz backdoor供应链投毒事件一样,因为掌握的样本和信息太少了,导致现在无法准确归因,只能猜测,看后面会不会有新的攻击活动,分析关联到更多的信息了。
威胁情报
总结结尾
攻与防一直在对抗升级,黑产组织一直在更新自己的攻击样本,以逃避各大安全厂商的检测与查杀,免杀就是一场猫捉老鼠的游戏。