【天穹】多个变种!某知名游戏启动器遭银狐劫持

一、概述

近期,天穹沙箱分析人员在样本狩猎时发现,某知名游戏厂商的RPG旗舰游戏客户端启动器由于缺乏完善的签名校验逻辑,遭银狐黑产组织DLL劫持利用,并在互联网上广泛传播。天穹沙箱已捕获到多个变种,经分析,这些样本的攻击手法相似,且均利用了相同的白程序。接下来,我们选取一个典型样本,对其进行深度分析。

二、样本基本信息

  • 样本名:08-13.exe
  • SHA1:7f713ed0b29b496a07a943b0b78f609379c765b3
  • 文件类型:EXE
  • 文件大小:22MB
  • C2:156.251.17.104[:]80
  • 报告链接:天穹沙箱分析报告

三、样本分析

经天穹沙箱动态分析,发现该样本采用了传统的白加黑攻击方式,在运行过程中多次利用了进程注入执行恶意代码,并通过创建计划任务达到持久化。为表述方便,以下先根据沙箱分析报告总结出样本的整体执行流程,如图1所示,再结合沙箱动态行为细致分析样本的恶意行径。

图1 样本流程图

1、规避检测

首先,样本在启动后为避免露出马脚,在运行初期就覆写了SetUnhandledExceptionFilter模块代码块来规避应用层hook检查,如图2所示。SetUnhandledExceptionFilter接口用于注册异常处理函数,样本hook该接口是为了避免在进程崩溃时弹出系统提示错误对话框,防止用户察觉,达到隐蔽执行恶意行为的目的。

图2 Hook SetUnhandledExceptionFilter

2、权限提升

接着,样本调用RPC函数RAiLaunchAdminProcess尝试提权至管理员权限,如图3所示。

图3 提权至管理员权限

在获取管理员权限后,样本向explorer.exe(PID:1112)进程注入恶意代码,如图4所示。进程注入是一种广泛使用的躲避检测的技术,主要原理是利用合法进程代理执行以绕过安全产品的防病毒检测或进程白名单检测等。

图4 注入explorer.exe

3、释放文件

被注入的explorer.exe(PID:1112)通过解密注入代码,释放三个文件到TEMP目录,如图5所示。

图5 在Temp目录释放临时文件

然后,调用move指令将三个临时文件移动到%Program Files%目录,移动命令如下:

  • cmd /c move C:\Windows\temp\4889796 “C:\Program Files\StarRail.exe”
  • cmd /c move C:\Windows\temp\4889921 “C:\Program Files\StarRailBase.dll”
  • cmd /c move C:\Windows\temp\4890031 “C:\Program Files\StarRailBase.dat”

4、侧加载

释放目标文件到指定目录后,被注入的explorer.exe(PID:1112)执行C:\Program Files\StarRail.exe创建新进程,StarRail.exe进程依赖StarRailBase.dll并加载了该dll,如图6所示,动态行为提示签名进程StarRail.exe加载了无签名的StarRailBase.dll,这是一个DLL侧加载行为。

图6 DLL侧加载

StarRail.exe是国内某知名游戏厂商的程序,拥有合法签名信息,是一个白程序,如图7、8所示。

图7 StarRail.exe 证书信息
图8 StarRail.exe 程序图标

StarRailBase.dll是被利用的黑DLL,没有任何签名信息,如图9所示。

图9 StarRailBase.dll 签名状态

通过查看StarRail.exe导入表,可以看到它仅导入了StarRailBase.dll中的1号函数,从反汇编来看,也没有任何签名校验,这就导致了它可被恶意劫持利用,如图10、11所示。

图10 PE导入表
图11 直接调用StarRailBase 1号接口

被劫持的StarRailBase.dll会创建C:\Windows\system32\svchost.exe -Install(PID:2084)进程,随后向新进程svchost.exe(PID:2084)注入恶意代码,如图12所示。

图12 注入svchost.exe

5、持久化

被注入的svchost.exe(PID:2084)进程将之前移动到%Program Files%目录下的三个文件复制到System32目录下,又通过RPC将C:\Windows\system32\StarRailBase.exe -svc写入计划任务,并执行计划任务创建新进程StarRailBase.exe,如图13、14所示。svchost.exe(PID:2084)设置计划任务名为c:\Windows\System32\Tasks\Microsoft\Windows\MicrosoftEdge UpdateTask,其目的是将自身伪装为Microsoft Edge更新任务,实现持久化。

图14 创建计划任务

6、网络通信

最后,StarRailBase.exe进程根据参数-svc创建新进程svchost.exe(PID:864),并向新进程中注入代码,svchost.exe(PID:864)再次创建新进程svchost.exe(PID:928)也向其注入代码,最终执行网络连接C2地址156.251.17.104[:]80完成上线,如图15所示:

图15 报文内容

四、变种样本

除上述分析样本外,我们还发现了多个变种,其攻击手法和利用方式均与该样本高度相似:

样本名样本SHA1报告链接C2
2024.08.16资金统计余额.exe18d821b109779b12fa4116e59b1113ebe387d2b9天穹沙箱分析报告83.229.127.205[:]6639
3621103789.exed5e012abb55e1965c1a00e2a95643cc2f62344a0天穹沙箱分析报告154.82.84.197[:]80
4015269431.exeb91fcd2b8bbad7f7c70c686b2210600d80e8bc78天穹沙箱分析报告180.101.50.242[:]80
System32.zipbc5e2341c7357d60802d1b87a1de6f377d7e04eb天穹沙箱分析报告45.91.226.35[:]80

五、IOC

1
2
3
4
5
6
7
8
9
恶意文件(SHA1)
7f713ed0b29b496a07a943b0b78f609379c765b3 08-13.exe
3a90253bf26597533db0cd1ce7f1e09af5c6c981 StarRail.exe
3a90253bf26597533db0cd1ce7f1e09af5c6c981 StarRailBase.exe
c5f5f0b47e6ec185df1ad49952c3e28910ee66bc StarRailBase.dll
094921263c1e5b352b420d42e599b8f90c155152 StarRailBase.dat

恶意链接
156.251.17.104[:]80 C2地址

报告链接:天穹沙箱分析报告

特别注意:

  1. 截止发稿时,示例样本及文中提到的变种样本C2地址仍处于存活状态,请务必保持警惕。
  2. 由于StarRail.exe存在DLL劫持风险,请务必注意包含StarRail.exeStarRailBase.exeStarRailBase.dll或类似名称的压缩包,或SHA1为3a90253bf26597533db0cd1ce7f1e09af5c6c981的可执行文件,这很可能是攻击者用于钓鱼的白加黑样本。

六、技术支持与反馈

星图实验室深耕沙箱分析技术多年,致力于让沙箱更好用、更智能。做地表最强的动态分析沙箱,为每个样本分析人员提供便捷易用的分析工具,始终是我们最求的目标。各位同学在使用过程中有任何问题,欢迎联系我们。

天穹沙箱支持模拟14种CPU架构的虚拟机,环境数量50+,全面覆盖PC、服务器、智能终端、IoT设备的主流设备架构形态。在宿主机方面,除了Intel/AMD的x86架构CPU和CentOS操作系统之外,天穹沙箱支持海光、飞腾、鲲鹏等x86、ARM架构国产CPU和银河麒麟、中科方德等信创操作系统。

天穹沙箱系统以云沙箱、引擎输出、数据接口等多种形式服务于公司各个业务部门,包括天眼、终端安全、态势感知、ICG、锡安平台、安服等。