恶意后门利用多种免杀手段,可远控用户电脑

VSole2023-07-20 09:42:51

近期,火绒威胁情报系统监测到一款后门病毒正在快速传播,被激活后会通过远程服务器下载多个恶意文件并获取远端恶意代码,随后黑客可以进行截取受害者屏幕图像、远程控制受害者电脑等各种恶意操作。不仅如此,该病毒还使用多种手段来躲避安全软件的查杀,隐蔽性极强。目前,火绒安全产品可对上述病毒进行拦截查杀,请用户及时更新病毒库以进行防御。

火绒查杀图

该黑客团伙投递的文件名大部分与用户常用软件有关, 火绒安全实验室目前收集到其伪装的部分文件名如下图所示:

相关文件名

火绒工程师分析发现,该病毒使用了包括 VMProtect 壳保护、构造 ROP 链、DLL 内存加载、“白加黑” 、多层内存解密等多种技术来躲避安全软件的查杀,因此,火绒安全提醒用户不要轻易点击来历不明的文件,建议先查杀后再使用。

注:“ROP (返回导向编程) ” 是一种将栈上写入的 shellcode 指令串联起来,使其能作为函数被已加载指令调用的一种手段。

样本分析

本次分析的病毒执行流程如下所示:

病毒执行流程

该病毒类型随着时间线推进,分别使用了 UPX、VMP 等保护壳,而目前监测到最新的版本为无壳版本,可见作者仍在积极开发测试当中:

加壳情况

病毒首先在栈中开辟大块区域写入代码,该代码块随后作为 EnumFontsW 的回调函数被执行。这种通过记录栈中的可执行流(ROP)的方式可以绕过数据执行保护(DEP),增强其隐蔽性。

栈中记录代码

获取栈中展开的代码后发现内嵌了一个 DLL 文件,该 DLL 在内存中自加载,并调用其唯一的导出函数 make,这种加载方式能使其无法通过 ProcessExplorer 等软件检测出加载的行为,进一步增强了免杀效果。

DLL 内存加载

在 make 函数的执行过程中,其会先判断当前执行的文件名是否包含预定义数字,这些数字目前理解有两个含义:回连标志和单独执行标志。执行流程图如下所示:

执行流程图

1:第一个是回连标志,当包含特定的数字(回连标志)时,其会从 C2 下载相应的

jpg 文件并重命名为 md.jpg,分别存放在 "C:\Users\Public\" 和

"C:\Users\Public\Documents\" 目录下以供后续使用。

下载指定 jpg 文件

每一个下载的 jpg 文件实际上都是一个 shellcode,不同的 jpg 文件在代码层上都是统一的,但是在数据段中有着不同的回传 IP 和 C2 域名,所以称其为回连标志。(该类

shellcode 将在后面分析,每个 jpg 所含有的 IP 在附录中可查)

jpg(shellcode) 文件解析

2:第二个是单独执行标志,当程序不具备单独执行标志(这里是"16116")时,其必须先拥有 md.jpg 文件,然后再下载其他恶意文件。这些病毒文件会分别存放到不同的位置中,包括

•"C:\Users\Public\Documents"

目录下 ttd.exe、UnityPlayer.dll

•“C:\Users\Public\”

目录下 zd.exe、md.exe、zd.jpg

其它文件下载

分类执行:

根据 make 函数中的执行逻辑可知,所下载的恶意文件分成 3 大部分:

第一部分:zd.exe (单独线程执行,内存加载 zd.jpg)

第二部分:md.exe(单独线程执行,内存加载 md.jpg(如果有的话))

第三部分:Documents 下的

ttd.exe、UnityPlayer.dll (设置隐藏属性,暂时保留)

分别执行

第一部分——zd.exe:

zd.exe是一个由 Rust 编写的恶意加载程序,用于将一同下载的 zd.jpg 作为 shellcode 加载并执行:

由 Rust 编写

在 zd.exe 内部也存在着 PDB 路径,许多调试符号,有意义的字符串等信息可以验证分析:

字符串等验证信息

zd.jpg 作为 shellcode 被加载执行,在代码与数据之间,病毒作者以codemark 作为分界线。在数据区中,前面部分字节被赋予了特定的含义,有用作函数参数的,有用于作为执行条件的,称其为标志位区。后面有可直接使用的域名信息,称其为字符串区。最后是待解密使用的字符,称其为解密数据区(在后面会使用)。

shellcode 加载

当定位到分隔符 "codemark",获取特定标志位信息及域名字符串 yk.ggdy.com 后,便会对其发起连接请求。这里发送给 C2 的 "64" 猜测是要求回传 64 位的代码,由此也可进一步猜测有 32 位版本。

从 C2 下载恶意代码

回传代码部分:

C2 对指令的响应可能在不同的时间有着不同的下发代码,也可能还存在别的响应指令,这里仅讨论本次下发的代码内容。本次下发的恶意代码进行了包括屏幕截图,注册表读取,保持回连等操作。详细分析如下:

本次接收的代码依旧处于加密状态,在解密运算中,从 E byte 位开始为待解密信息,解密计算从 0 偏移处开始算起,解密逻辑如下。

解密回传代码

然而,在解密后的代码中发现里面还嵌套着两个 DLL 文件,并且是递归嵌套,下图并未展示嵌套关系:(在母 DLL 里面还嵌套着子 DLL 文件,但子 DLL 并未执行)。

DLL 嵌套

在执行过程中,其会先后执行内嵌母

DLL 的 dllmain 函数和 load 函数:

回传代码执行

虽然该 DLL 有 3 个导出函数,并且run 和 zidingyixiugaidaochuhanshu(喻指自定义修改导出函数)并未执行,但是它们所作的操作都围绕着两个点:

•第一个是获取并修改前面 zd.jpg 待解密数据区中数据进行解密并与注册表中 IP 数据相关联。

这部分代码将 shellcode 末尾加密数据的特定字符进行包括字符替换等解密方式后,得到一个类似于域名,时间,路由消息组成的以 "|" 分隔的关键字串,猜测是想创建并写入注册表 IpDate 中进行后续提取利用。

shellcode 末尾数据区解密

•第二个是开启两个后台线程,一个是屏幕截图,另一个是保持回连。

屏幕截图所在的线程先会获取系统目录"C:\ProgramData",然后在该目录下创建 quickScreenShot 文件夹,以当天日期创建分类文件夹,最后把拍摄的屏幕数据以 "日期时间" 的命名方式写入并保存。

获取屏幕截图

在进行屏幕截图的过程中,另一个保持回连的线程也会同步开启,但该线程会先休眠整整60分钟:

进程休眠

之后会进行代码解密操作,以

hackbrian 作为 key 执行解密算法:

代码解密

解密后的代码与前面分析的 shellcode 同类,用于等待 C2 的下一步操作,可以执行包括远程控制在内的各种操作。(这里 ttkk.youbi.co 域名是错误的,末尾少了个m,怀疑由作者的疏漏导致)。

内嵌加密 shellcode

最后在该内嵌 dll 的字符串中发现有 "上线模块.dll",猜测会在后续阶段的由 C2 下发。

上线字符串

第二部分——md.exe

md.exe也是由 rust 编写,经过逻辑对比发现其与 zd.exe 一致, 代码字节也是相同,故不再重复分析。

逻辑对比图

代码字节对比图

第三部分——ttd.exe 和UnityPlayer.dll

ttd.exe在本次样本分析属于第三部分,并未被启动运行,怀疑是在开发中或暂时保留以备后续操作的模块,这里出于安全研究的目的继续对其进行分析。

病毒作者在这里利用了白加黑手法,通过合法的 ttd.exe 加载携带恶意代码的 UnityPlayer.dll 躲避查杀,该 dll 在被加载时也会 "变相" 执行 shellcode 中的代码进行后续操作。

其先进行文件复制,把

"C:\Users\Public\Documents\md.jpg" 复制成 "C:\Users\8.jpg" :

文件复制

然后执行打开本地画板程序 mspaint.exe,以进程注入的方式在其内存空间中开辟适当空间,并写入

jpg 中的 shellcode 代码,随后调用 CreateRemoteThread 进行远程线程执行。

进程注入

加载并写入 shellcode

shellcode的后续执行部分在前面已详细叙述,这里不再重复分析。

附录

C&C

HASH

免杀用户分析
本作品采用《CC 协议》,转载必须注明作者和本文链接
蓝队初级防护总结
2023-01-09 10:11:55
三. 网站被上传webshell如何处理?工具方面比如使用D盾webshellkill,河马webshell查杀,百度在线webshell查杀等工具对网站目录进行排查查杀,如果是在护网期间可以将样本备份再进行查杀。堡垒机是针对内部运维人员的运维安全审计系统。WAFWAF是以网站或应用系统为核心的安全产品,通过对HTTP或HTTPS的Web攻击行为进行分析并拦截,有效的降低网站安全风险。
堡垒机是针对内部运维人员的运维安全审计系统。WAFWAF是以网站或应用系统为核心的安全产品,通过对HTTP或HTTPS的Web攻击行为进行分析并拦截,有效的降低网站安全风险。设置账户锁定策略,比如说登录行为限制次数,达到次数后锁定多长时间。
近期,火绒威胁情报系统监测到一款后门病毒正在快速传播,被激活后会通过远程服务器下载多个恶意文件并获取远端恶意代码,随后黑客可以进行截取受害者屏幕图像、远程控制受害者电脑等各种恶意操作。目前,火绒安全产品可对上述病毒进行拦截查杀,请用户及时更新病毒库以进行防御。后面有可直接使用的域名信息,称其为字符串区。本次下发的恶意代码进行了包括屏幕截图,注册表读取,保持回连等操作。
powershell之路
2021-07-12 21:46:00
Windows PowerShell 是一种命令行外壳程序和脚本环境,使命令行用户和脚本编写者可以利用 .NET Framework的强大功能
目录简单的恶意文档cs生成的宏分析思路加密混淆诱导点击项目推荐总结简单的恶意文档一般使用流程:第一步,生
技术全称为反杀毒技术 Anti-Virus 简称“”,它指的是一种能使病毒木马免于被杀毒软件查杀的技术。由于技术的涉猎非常广,其中包含反汇编、逆向工程、系统漏洞等技术,内容基本上都是修改病毒、木马的内容改变特征码,从而躲避了杀毒软件的查杀。
本工具仅限授权安全测试使用,禁止非法攻击未授权站点??测试腾讯电脑管家:开始时间:2022-5-27 23:40:48扫描用时:00:00:06扫描类型:指定位置杀毒扫描引擎:管家云查杀引擎 管家系统反病毒引擎 管家系统修复引擎 Bitdefender本地查杀引擎 扫描状态:扫描完成
近年来,大量的后渗透利用(Post-Exploitation)工具包、自定义恶意软件和开源远程控制木马(RAT)等具备丰富的检测规避技术和反溯源能力的工具,活跃于各种实战对抗演练、勒索攻击甚至是具有国家背景的APT攻击之中。入侵者可以运用这类工具进行终端行为以及网络通信流量的
杀入门之静态
2022-04-30 06:53:30
该工具已经被市面上软加入病毒特征库,我们的目标就是修改该程序特征码并且不能影响其正常使用。最后测试mimikatz功能也是正常的,至此完成。
Goby 可以快速准确的扫描资产,并直观呈现出来。同时经过上次 EXP 计划过后,PoC&EXP 也增加了许多。在实战化漏洞扫描后,对于高危漏洞的利用,不仅仅只在 whoami 上,而是要进入后渗透阶段,那么对于 Windows 机器而言,上线 CS 是必不可少的操作,会让后渗透如鱼得水。此插件只运用了简单的利用方式上线 CS,希望师傅们能够提供想法和建议把它更为完善,源码中有详细的...
VSole
网络安全专家