https://www.secforce.com/blog/whisper2shout-unhooking-technique/
摘要
本文介绍了一种名为Whisper2Shout的解除Windows上安全产品API挂钩技术。该技术通过分析内存中的私有区域,恢复被挂钩函数的原始字节,从而绕过恶意软件检测。
关键点
- 用户态API挂钩是AV和EDR产品用于检测恶意模式的技术。
- 通过覆盖函数的第一条汇编指令,安全产品可以劫持系统函数并重定向执行流。
- AVG Internet Security能够检测出使用PEzoNG加壳的Cobalt Strike信标Shellcode。
- 攻击者可以通过移除挂钩来绕过安全产品。
- Whisper2Shout不需要读取原始库即可解除挂钩。
- 该技术利用内存中的私有区域信息来恢复挂钩函数的序言。
- 系统调用可以通过排序NTDLL.dll中的Zw*函数获取调用号。
- API挂钩技术有多种实现方式,通常通过跳转指令覆盖前几个字节。
- 解除挂钩的通用技术基于内存区域的私有标记。
- 通过分析内存区域,可以识别被挂钩函数的原始序言。
- 解除挂钩的过程包括覆盖“挂钩”存根并恢复原始执行路径。
- 该技术通过读取自身进程内存来获取信息,调用NtProtectVirtualMemory进行内存权限设置。
- 用户空间挂钩是重要的防御机制,即使存在绕过可能性。
- 安全产品应监控挂钩完整性以提高检测难度。
https://www.secforce.com/blog/nimwhispers-direct-system-calls/
NimWhispers 是 SysWhispers2 在 Nim 语言中的实现,旨在通过直接系统调用来规避 EDR 软件的监控。文章讨论了使用 Nim 进行植入物开发的优点,如无需虚拟机、简单的跨平台编译和强大的 FFI 功能。NimWhispers 的诞生是为了填补使用“按系统调用排序”技术的公共存储库的空白,并与 SysWhispersv2 保持相似的功能。
关键点
- NimWhispers 是 SysWhispers2 在 Nim 中的实现,用于规避 EDR 软件监控。
- 使用 Nim 进行植入物开发的优点包括直接编译为多种语言、无需虚拟机和强大的 FFI 功能。
- 创建 NimWhispers 是为了填补公共存储库的空白,并与 SysWhispersv2 保持相似功能。