一个具备高级规避特性的有效载荷加载器设计
作者:Sec-Labs | 发布时间:
项目地址
https://github.com/NUL0x4C/TerraLdr
相关技术点:
- API哈希使用Rotr32哈希算法,可以在不使用明文API名称的情况下调用API。
- Payload加密使用RC4算法,将负载保存在.rsrc节中。
- 进程注入使用了ppid欺骗和NtCreateUserProcess来实现。
- 远程进程注入使用了分块技术。
- 使用调试和NtQueueApcThread来执行负载。
项目用途:
TerraLdr是一个有效载荷加载器,旨在具有高级逃避功能。该项目的主要目的是在不被检测的情况下加载恶意代码,以绕过安全防御措施。TerraLdr使用多种技术来隐藏恶意代码的存在,例如API哈希和进程注入。
该项目的用途包括但不限于:
- 用于渗透测试和红队行动中,以绕过安全防御措施。
- 用于研究和学习Windows恶意代码的隐藏技术。
注意:在使用该项目时,需要注意修改进程名称,以避免被检测到。
TerraLdr:具有高级逃避功能的负载装载器
详情:
- 未导入任何 crt 函数
- 使用 KnownDllUnhook 进行系统调用解钩
- 使用 Rotr32 哈希算法进行 API 哈希
- 使用 rc4 进行负载加密 - 负载保存在 .rsrc 中
- 进程注入 - 目标为“SettingSyncHost.exe”
- 使用 NtCreateUserProcess 进行 ppid 伪装和 blockdlls 策略
- 隐蔽的远程进程注入 - 分块
- 使用调试和 NtQueueApcThread 进行负载执行
用法:
- 使用 GenerateRsrc 更新 DataFile.terra,这将是保存在装载器的 .rsrc 部分中的负载
感谢:
注意事项:
- 在 Windows 11 机器上找不到“SettingSyncHost.exe”,虽然我没有在 w11 上测试,但在测试之前必须将进程名称更改为其他内容
- 最好使用“ISO C++20 标准 (/std:c++20)”进行编译
收益:


演示 (by @ColeVanlanding1):

在 Windows 10 上使用 Cobalt Strike 和 Havoc 进行测试
标签:工具分享, 免杀工具, shellcode生成工具