文章总结: 本文详细介绍了四种高级进程注入技术:早鸟APC注入利用进程初始化阶段的检测盲区,通过QueueUserAPC在挂起线程中执行代码;内存映射注入借助共享内存规避WriteProcessMemory等敏感API监控;注册表注入通过AppInit_DLLs机制实现DLL自动加载;全局钩子注入利用SetWindowsHookEx将DLL注入到所有关联进程中。这些方法旨在规避EDR/AV的行为检测,适用于授权环境下的安全研究。 综合评分: 85 文章分类: 恶意软件,红队,内网渗透,渗透测试,二进制安全
暗度陈仓-四种高级进程注入手法
原创
冬夏 冬夏
韭要学JAVA安全
2026年5月7日 13:45 河南
在小说阅读器读本章
去阅读
⚠️ 免责声明
本文内容仅供网络安全技术学习、防御研究及授权环境下的安全测试使用。
严禁用于任何非法目的。
使用者须遵守当地法律法规,因滥用造成的一切后果由行为人自行承担。
本声明适用于本文档内所有技术内容。
1. 早鸟 APC 注入
核心思想
在目标进程主线程尚未执行(或刚启动、未调用敏感 API)时,通过 QueueUserAPC 将恶意代码作为异步过程调用(APC)插入队列,利用进程初始化阶段的检测盲区实现注入。
原理步骤
- 以
CREATE_SUSPENDED(挂起状态)标志创建新进程(如svchost.exe); - 在挂起进程内通过
VirtualAllocEx分配内存,并写入 Shellcode; - 调用
QueueUserAPC,将 Shellcode 入口点设为主线程的 APC 回调函数; - 调用
ResumeThread恢复主线程执行。
- 线程恢复后会优先处理 APC 队列(进入可提醒状态时);
- 进程刚启动时,用户态 EDR 的 Hook 尚未完全安装(部分 EDR 在进程主入口执行后才注入检测模块);
- 调用序列(创建挂起进程 → 写入 → 队列 APC → 恢复)比经典注入更隐蔽,规避常规行为检测。
2. 内存映射注入
核心思想
利用共享内存(内存映射文件)实现进程间代码传输,规避 WriteProcessMemory、CreateRemoteThread 等被严密监控的 API。
原理步骤
- 使用
CreateFileMapping(配合INVALID_HANDLE_VALUE)创建匿名/文件支持的映射对象; - 在本地进程通过
MapViewOfFile获取映射视图,将 Shellcode 写入视图; - 目标进程通过
OpenFileMapping获取映射句柄,再调用MapViewOfFile,获取同一块物理内存页的不同地址; - 目标进程映射视图自动包含 Shellcode(共享物理内存),无需调用
WriteProcessMemory; - 通过
CreateRemoteThread/QueueUserAPC在目标进程中执行内存中的代码。
多数 EDR/AV 会挂钩 WriteProcessMemory 和 CreateRemoteThread,而 MapViewOfFile 常用于正常跨进程通信(IPC),白名单信誉度高,不易被拦截。
3. 注册表注入
原理
Windows 提供注册表项
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows\AppInit_DLLs
可指定 DLL 列表;当 user32.dll 加载进进程(几乎所有 GUI 进程)时,系统会强制加载列表中的 DLL。
实现方式
- 将
AppInit_DLLs值设置为恶意 DLL 的完整路径; - 将
LoadAppInit_DLLs值设置为1; - 新启动的 GUI 进程会自动加载恶意 DLL,完成注入。
现代 Windows(Vista 及以上)要求 DLL 必须具备数字签名,且默认启用 RequireSignedAppInit_DLLs,该技术已半过时,可配合签名绕过实现利用。
4. 全局钩子注入
原理
调用 SetWindowsHookEx 安装全局钩子(如 WH_GETMESSAGE、WH_KEYBOARD_LL);系统派发消息时,会自动将钩子 DLL 注入到所有关联目标进程中。
关键参数
dwThreadId = 0:表示安装全局钩子;hmod:指向钩子函数所在的 DLL 模块句柄。
动态defender
#
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:韭要学JAVA安全 冬夏 冬夏《暗度陈仓-四种高级进程注入手法》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。









评论