针对近期活跃的 Glupteba 木马病毒的分析

阅读量    120570 |

分享到: QQ空间 新浪微博 微信 QQ facebook twitter

 

Glupteba 木马是一种具有信息窃取和流量路由功能的加载程序,其最早于 2011 年在野外被发现,人们起初认为它主要用于在受感染的主机上安装其他病毒,但是现在看来它可以做的远不止如此。在经过不断地更新后,它成为了一种危险且需要防范的病毒。

近期,360威胁情报中心和360沙箱云监测到 Glupteba 木马病毒的活跃信息,在这篇文章中对此木马进行详细分析。

 

样本信息:

MD5 63b9bb556d78230dce5834cd8abd1e6b
SHA1 0a83a88b48441e5fc0e7687192d2d5a5e420d742

 

样本概述:

该样本外层是一个 loader,其 payload 是使用 Go 语言开发的 Glupteba 木马。payload 运行后先进行提权操作,在具有 system 权限后才进行恶意操作,包括 bypass firewall、defender,创建计划任务,使用 rootkit 组件隐藏木马进程、文件等,其最终会连接 C2 下载后续组件执行。

 

运行流程:

 

详细分析:

Loader:

1,解密执行 shellcode1。

2,shellcode1 解密执行 shellcode2与 PE1.exe(payload)。

3,shellcode2 中首先进行反调试、反沙箱。

反沙箱。

软件断点检测。

4,shellcode2 使用进程映像替换将当前进程映像替换为 PE1.exe,并进入入口点执行。

Payload:

1,payload 使用 Go 语言编写,由于去除了符号所以使用老版本的 IDA 不能自动恢复符号,需要使用 IDA 7.6 及以上的版本。

文件基本信息。

2,其运行后首先在注册表中存储配置信息及获取的主机信息。
存储位置:

HKEY_USERS\[用户 SID]\Software\Microsoft\[用户 SID SHA256 的前8位]

从存储的信息中可以看出其中包括木马 C2 地址,软件版本等信息。

3,判断当前是否是管理员,不是则利用白名单程序 fodhelper.exe\CompMgmtLauncher.exe 进行 bypass UAC 提权。

首先进行系统版本判断,根据系统版本设置不同的注册表并启动不同的进程进行提权。

是 win10 则设置以下注册表并启动 fodhelper.exe 进程:

不是 win10则设置以下注册表并启动 CompMgmtLauncher.exe 进程:

4,判断当前是否是 system 权限,不是则模拟 TrustedInstaller.exe 进程令牌重新运行。

首先设置 sedebugprivilege 权限,然后打开 TrustedInstaller.exe 进程复制其访问令牌,最后使用复制的访问令牌运行该木马。

5,判断当前是否是以持久化路径运行。

6,不是以持久化路径运行。

6.1>检测虚拟机。

使用符号链接、CPU信息、进程名称检测虚拟机。

6.2>创建互斥体。

6.3>判断是否安装防病毒软件,如果未安装则进行 bypass firewall\defender和持久化操作。

使用 netsh 命令添加防火墙规则 bypass firewall。

在以下注册表中添加文件路径 bypass defender。

在以下注册表进行持久化操作。

持久化完成后重新启动。

7,是以持久化路径运行。

7.1>创建互斥体。

7.2>在配置存储注册表设置用户 uuid。

7.3>创建计划任务。

第一个计划任务用于在登录时运行木马。

第二个计划任务用于从 C2 下载后续组件到本地运行。

下载地址:hxxps://gfixprice.space/app/app.exe

存储位置:%temp%\csrss\scheduled.exe

7.4>释放 rootkit 组件将其注册成服务运行并使用其隐藏木马进程和文件。

在 %windir%\system32\drivers 目录下释放三个驱动文件 Winmon.sys、WinmonFS.sys、WinmonProcessMonitor.sys并将其注册成服务运行。

使用如下 sc 命令将上述三个服务添加 defender 白名单。

使用Winmon.sys隐藏木马进程,包括当前进程和windefender.exe、cloudnet.exe。

使用 WinMonFS.sys 隐藏 %temp%\csrss\ 目录。

WinmonProcessMonitor.sys 则是自动查找并终止安全软件进程,然后阻止安全软件进程启动。

部分被阻止的安全软件进程。

7.5>与 C2 通信,发送主机信息接收数据、指令。

首先是获取主机信息,包括操作系统位数、版本,CPU、GPU信息,病毒组件安装情况,uuid,病毒版本等。

操作系统信息从注册表中存储的配置信息获得。

病毒组件安装情况则是通过检测互斥体获得。

疑似挖矿组件(门罗币)互斥体。

cloudnet组件检测。

要发送的数据如下,经过加密编码后发送。

通信地址是配置注册表中的 Servers 的值加 uuid。

例:

从 C2 获得数据或指令,执行后续操作。

可预见的操作有下载执行、组件更新。

使用永恒之蓝漏洞横向移动。

 

沙箱云检测结果

检测环境 Windows 7 SP1 Pro 32位
默认用户 管理员

1,提权检测。

2,反虚拟机检测。

3,bypass 防火墙、defender 检测。

4,持久化检测。

5,网络行为检测。

 

关于我们

360沙箱云是 360 自主研发的在线高级威胁分析平台,对提交的文件、URL,经过静态检测、动态分析等多层次分析的流程,触发揭示漏洞利用、检测逃逸等行为,对检测样本进行恶意定性,弥补使用规则查杀的局限性,通过行为分析发现未知、高级威胁,形成高级威胁鉴定、0day 漏洞捕获、情报输出的解决方案;帮助安全管理员聚焦需关注的安全告警,过安全运营人员的分析后输出有价值的威胁情报,为企业形成专属的威胁情报生产能力,形成威胁管理闭环。解决当前政企用户安全管理困境及专业安全人员匮乏问题,沙箱云为用户提供持续跟踪微软已纰漏,但未公开漏洞利用代码的 1day,以及在野 0day 的能力。
360混天零实验室成立于2015年,负责高级威胁自动化检测项目和云沙箱技术研究,专注于通过自动化监测手段高效发现高级威胁攻击;依托于 360 安全大数据,多次发现和监测到在野漏洞利用、高级威胁攻击、大规模网络挂马等危害网络安全的攻击事件,多次率先捕获在野利用 0day 漏洞的网络攻击并获得厂商致谢,在野 0day 漏洞的发现能力处于国内外领先地位,为上亿用户上网安全提供安全能力保障。

分享到: QQ空间 新浪微博 微信 QQ facebook twitter
|推荐阅读
|发表评论
|评论列表
加载更多