Ghost 是一个 shellcode 加载器项目,旨在绕过通常由 EDR 实现的多种检测功能

admin 2024年10月17日17:44:23评论28 views字数 1217阅读4分3秒阅读模式

Ghost 是一个 shellcode 加载器项目,旨在绕过通常由 EDR 实现的多种检测功能

Ghost 是一个 shellcode 加载器项目,旨在绕过通常由 EDR 实现的多种检测功能

检测 1-内核回调

内核回调由 EDR 实现,用于利用内核级系统事件可见性,这意味着 edrs 可以查看线程或进程的执行尝试

ghost 利用 Fiber 线程来规避这种检测技术,Fiber 线程是用户空间唯一的执行单元,不会提醒任何已注册的内核回调

检测2-堆栈展开

堆栈展开是 EDR 实现的一项技术,用于检测异常函数调用,包括直接和间接系统调用

ghost 利用 2 个堆栈欺骗技术来逃避此类检测

1 - 第一个是返回地址欺骗,用于从调用堆栈中隐藏正常函数和间接系统调用调用 2 - 第二种技术是使用函数挂钩并在纤程线程之间切换,以在休眠期间隐藏整个信标调用堆栈(所有纤程切换对内核也是不可见的)

检测 3 - 内存扫描

检测软件经常利用内存扫描来识别进程内存空间中的恶意 shellcode

ghost 实现了最初由roshtyak实现的 shellcode 隐藏技术,即分配一个非常大的内存空间,使用 SystemFunction036 (RtlGenRandom) 用随机加密数据填充该内存,并将 shellcode 放置在所有加密数据之间的随机位置,使其在手动和自动扫描期间更难检测到

还实施了其他较小的规避技术,例如

  • 利用暂停的进程和间接系统调用来删除 EDR 安装的任何函数挂钩

  • 通过修补内存中的核心函数来阻止 ETW

  • 用于解析函数和系统服务号码 (SSN) 的自定义 API 哈希

  • 将 shellcode 放入资源中(这非常有效 xD)

笔记

Ghost 严重依赖于了解你的信标如何休眠,以防万一发生钴攻击,kernel32!Sleep 函数被挂钩并替换为光纤调用,以允许切换和隐藏信标调用堆栈

如果你想将它与其他 C2 信标一起使用,你将需要使用像 apimonitor 这样的工具来拦截你的“信标”的 API 调用,检测睡眠时调用的 API 并在 Ghost.cpp 中替换它以将其挂钩,例如对于 MDSec 的 NightHawk,需要挂钩其中一个 CreateThreadPool API

建造

要构建二进制文件,请使用build.py提供 shellcode 的 python 脚本

EX:

python3 build.py -i shellcode.bin

编译是在 Linux 上使用 MinGW 套件完成的

Ghost 是一个 shellcode 加载器项目,旨在绕过通常由 EDR 实现的多种检测功能

上面是 Beacons 堆栈在休眠期间隐藏的示例

资源

https://github.com/Kudaes/Fiber

https://github.com/LloydLabs/shellcode-plain-sight

https://decoded.avast.io/janvojtesek/raspberry-robins-roshtyak-a-little-lesson-in-trickery/

项目地址:

https://github.com/cpu0x00/Ghost

原文始发于微信公众号(Ots安全):Ghost 是一个 shellcode 加载器项目,旨在绕过通常由 EDR 实现的多种检测功能

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年10月17日17:44:23
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Ghost 是一个 shellcode 加载器项目,旨在绕过通常由 EDR 实现的多种检测功能https://cn-sec.com/archives/3281665.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息