Cobalt Strike UDRL 用于逃逸内存扫描器
作者:Sec-Labs | 发布时间:
AceLdr - 逃逸内存扫描器
用于Cobalt Strike的独立于位置的反射式加载器。Hunt-Sleeping-Beacons、BeaconHunter、BeaconEye、Patriot、Moneta、PE-sieve或MalMemDetect的结果为零。

项目地址
https://github.com/kyleavery/AceLdr
特点
易于使用
在生成shellcode之前,导入一个单一的CNA脚本。
动态内存加密
为来自Beacon的任何分配创建一个新的堆,并在睡眠前对条目进行加密。
代码混淆和加密
将包含CS可执行代码的内存改为不可执行,并对其进行加密(FOLIAGE)。
执行时的返回地址欺骗
某些WinAPI调用在执行时有一个欺骗性的返回地址(InternetConnectA, NtWaitForSingleObject, RtlAllocateHeap)。
不睡觉的睡眠
使用WaitForSingleObjectEx延迟执行。
RC4加密
使用SystemFunction032进行所有加密。
已知问题
与依赖shellcode线程保持活力的加载器不兼容。
参考资料
如果没有以下人员,这个项目是不可能完成的。
其他功能和灵感来自于以下内容。
- https://www.arashparsa.com/bypassing-pesieve-and-moneta-the-easiest-way-i-could-find/
- https://github.com/secidiot/TitanLdr
- https://github.com/JLospinoso/gargoyle
- https://www.forrest-orr.net/post/masking-malicious-memory-artifacts-part-ii-insights-from-moneta
- https://www.arashparsa.com/hook-heaps-and-live-free/
- https://blog.f-secure.com/hunting-for-gargoyle-memory-scanning-evasion/
- https://www.elastic.co/blog/detecting-cobalt-strike-with-memory-signatures
标签:工具分享, cobaltstrike系列, 内存逃逸技术