Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
-Remcos-RAT-Fileless-svchost-Injection-Obfuscated-Payload-Analysis- — 对一种无文件Remcos RAT变种的逆向工程分析,该变种通过Native API调用注入svchost.exe。涵盖混淆载荷提取、注册表持久化、剪贴板监控、API挂钩和UAC绕过技术。 | Kitploit
工具/GitHubGitHub/kaandemir993/-remcos-rat-fileless-svchost-injection-obfuscated-payload-analysis-
权限提升动态分析 (沙盒)内存取证持久化机制逆向工程取证分析恶意软件分析二进制分析论文与研究

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
学习与教育
API 安全
GitHubkaandemir993/-remcos-rat-fileless-svchost-injection-obfuscated-payload-analysis-

-Remcos-RAT-Fileless-svchost-Injection-Obfuscated-Payload-Analysis-

对一种无文件Remcos RAT变种的逆向工程分析,该变种通过Native API调用注入svchost.exe。涵盖混淆载荷提取、注册表持久化、剪贴板监控、API挂钩和UAC绕过技术。

查看仓库
3161个月前尚未审核

1. Remcos – 通过原生 API 调用实现 svchost 注入

以下 Binary Ninja 代码片段揭示了 Remcos 将其载荷注入 svchost.exe 的核心注入机制。

代码功能说明:

  • CreateProcessW 使用 CREATE_SUSPENDED 标志启动一个处于挂起状态的 svchost 进程。
  • VirtualAlloc 在目标进程内使用 MEM_COMMIT 和 PAGE_READWRITE 标志分配内存,允许将载荷直接写入进程内存。
  • WriteProcessMemory 将载荷写入挂起的 svchost 进程的已分配内存区域。
  • ReadProcessMemory 读取目标进程的内存,可能是为了获取原始入口点或验证注入是否成功。
  • TerminateProcess 用于在注入失败时终止挂起的 svchost 进程,防止其处于不稳定状态。

重要性分析:

可视化参考:

Remcos 注入代码 Binary Ninja 视角下 Remcos 使用原生 API 的注入例程,显示 MEM_COMMIT、PAGE_READWRITE、ReadProcessMemory 和 TerminateProcess。

2. 注册表持久化 – Remcos 持久化机制

Remcos 在 Windows 注册表中添加一个键,以在系统上建立永久驻留。该键确保恶意软件在每次系统启动时重新执行。

检测到的注册表键:

HKEY_USERS\S-1-5-21-3807688912-2840792520-522192237-1001\Software\kamolprf-CFKPWC

键内的值:

为何重要?

  • 持久化:借助此键,Remcos 在系统启动时自动运行。
  • 隐蔽性:由于 exepath 值以 REG_BINARY 存储,无法直接读取,增加了检测难度。
  • 身份识别:UID 和 licence 值使攻击者能够识别受害者并执行许可证检查。
  • 时间戳:time 值提供了恶意软件安装或最后执行的时间信息。

可视化参考:

Remcos 注册表持久化 注册表键及其中的 exepath、licence、time 和 UID 值。

3. Svchost – 蹦床函数与 API 钩子检测(WinDbg)

以下 WinDbg 代码片段显示了在受感染的 svchost.exe 进程内部发现的一个蹦床函数。该代码似乎是 Remcos API 钩子或载荷执行机制的一部分。

代码功能说明:

  • jmp qword ptr [svchost+0x9758] – 可能是一个跳转到 API 或函数的钩子或蹦床。
  • mov / movdqa 指令 – 保存和恢复寄存器(xmm0-xmm3、rcx、rdx、r8、r9)以保留调用上下文。
  • call svchost+0x3e50 – 调用一个核心函数,可能是载荷或钩子处理程序的一部分。
  • jmp rax – 最终跳转到原始函数或下一阶段。
  • INT3 陷阱 – 反调试指令,如果附加了调试器则中断执行。

重要性分析:

这种结构是典型的 API 钩子 或 Detour 函数,Remcos 用来拦截对关键 Windows API 的调用。使用 xmm 寄存器(用于浮点或 SIMD 操作)表明该钩子可能放置在使用了 SSE 指令的函数上。

可视化参考:

Svchost 蹦床代码 WinDbg 视角下 svchost.exe 内部的蹦床函数,显示带有 INT3 陷阱的 jmp 和 call 指令。

4. Svchost – 混淆的十六进制载荷(Binary Ninja)

以下十六进制转储是从受感染的 svchost.exe 进程内部的 PAGE_READWRITE 内存区域提取的。该区域不包含任何直接的 call 或 jmp 指令,确认这些数据不是可执行代码,而是一个混淆或加密的载荷。

关键观察:

  • 十六进制块由看似随机的字节组成,没有清晰的反汇编结构。
  • 尽管有混淆,数据中嵌入了可识别的字符串,如 RPC Control 和 PC-。
  • 其他片段如 ctk、m 和 mafasakaaam 似乎是结构化配置的一部分,可能包含加密密钥、API 名称或注册表路径。
  • 这些字符串的存在与已知的 Remcos 混淆模式相符,其中配置数据经过 XOR 加密并嵌入内存中。

可视化参考:

Svchost 混淆载荷 Binary Ninja 视角下 svchost.exe 的 PAGE_READWRITE 区域中的混淆十六进制转储,显示嵌入式字符串如 RPC Control 和 PC-。

5. Svchost – 混淆的十六进制载荷(Binary Ninja 字符串视图)

使用 Binary Ninja 的字符串视图进一步分析了从 PAGE_READWRITE 区域提取的混淆十六进制载荷。尽管严重混淆,仍出现了一些可读的字符串和模式。

关键观察:

  • PC- 前缀字符串(例如 PC-475ce3d749612b、PC-4a757962f31b84) – 可能是用于受害者追踪的 MachineGuid 或唯一系统标识符。
  • svchost.exe – 目标进程名称,确认了注入向量。
  • .dll 扩展名 – 表明 Remcos 加载或搜索特定的 DLL,可能用于 API 钩子或持久化。
  • ontroll\ – 很可能是注册表路径片段(Control\),表明持久化或配置存储。
  • EEF931 和 1AA81C6FD0CF04A816B – 这些似乎是 GUID 或加密密钥,可能用于载荷的 XOR/AES 解密。
  • TEMP – 提示创建临时文件或从临时目录执行。

可视化参考:

Svchost 混淆字符串 Binary Ninja 字符串视图中的混淆十六进制载荷,显示可读片段如 PC-、svchost.exe、.dll 和 EEF931。

结论

本次分析发现了一种高度复杂的、无文件的 Remcos RAT 变种,它以最小的磁盘占用和先进的规避技术运行。该恶意软件使用原生 API 调用(如 ZwCreateSection 和 ZwMapViewOfSection)将其核心载荷注入 svchost.exe,确保持久性和隐蔽性。

关键要点:

  • 无文件执行:Remcos 完全在内存中运行,不在磁盘上留下可执行文件。
  • Svchost 注入:载荷注入到受信任的 Windows 进程中,使检测变得困难。
  • 混淆载荷:注入的代码严重混淆,阻止静态分析,仅暴露零散的字符串如 PC-、svchost.exe、.dll 和 EEF931。
  • 注册表持久化:Remcos 通过 HKEY_USERS\...\Software\kamolprf-CFKPWC 下的注册表键维持持久化,存储加密的 exepath、licence、time 和 UID 值。
  • API 钩子与蹦床:恶意软件钩住关键的 Windows API,拦截函数调用以重定向执行流。
  • 其他能力:还观察到剪贴板监控、UAC 绕过和潜在的凭据窃取。

检测建议:

  • 监控 svchost.exe 的异常内存区域(PAGE_READWRITE)。
  • 追踪 Software\kamolprf-CFKPWC 下的注册表键。
  • 查找来自非系统进程的 ZwCreateSection 和 ZwMapViewOfSection 调用。
  • 分析进程内存中是否存在混淆字符串如 PC- 和 EEF931。

最终思考

此 Remcos 变种展示了高水平的专业性,显然旨在规避传统安全解决方案。其无文件执行、进程注入和基于注册表的持久化组合使其成为一个需要高级检测策略的重大威胁。

使用的工具: Ghidra、Binary Ninja、WinDbg、Process Hacker

样本信息

样本下载

分析的 Remcos RAT 样本可在 MalwareBazaar 上获取,供希望自行分析的人使用:

🔗 MalwareBazaar 上的 Remcos RAT 样本

下载工具
API在 Remcos 中的用途
CreateProcessW以挂起状态启动 svchost,以便注入。
VirtualAlloc使用 MEM_COMMIT 和 PAGE_READWRITE 为载荷分配内存。
WriteProcessMemory将载荷写入已分配的内存。
ReadProcessMemory读取目标进程内存(用于验证或获取入口点)。
TerminateProcess在注入失败时终止挂起的进程。
值名称类型值描述
exepathREG_BINARY加密的二进制数据Remcos 或其注入载荷的加密文件路径。可能通过 XOR 或 AES 保护。
licenceREG_SZDA8E22D4CD8D349953DF1FAD364CAB05Remcos 许可证密钥。在破解版或演示版中可能为固定值。
timeREG_DWORD0x6a53ac27 (1783868455)安装或最后执行时间的 Unix 时间戳格式。
UIDREG_DWORD0xfeb60bd4 (4273343444)唯一用户 ID。用于识别受害者。