防止恶意进程注入explorer.exe的核心是切断appinit_dlls注入点(含wow6432node路径)、设loadappinit_dlls为0、清理shellexecutehooks及上下文菜单项、启用驱动强制签名,并用process explorer验证其路径与微软数字签名。

防止恶意进程注入并挂钩Explorer.exe,核心是切断其注入路径、阻止注册表持久化、限制未签名代码加载,并确保Explorer.exe自身不被篡改。Explorer.exe作为Windows图形界面主进程,常被恶意软件选为目标,因其生命周期长、权限适中、且必然加载大量DLL和Shell扩展。
禁用AppInit_DLLs注册表注入点
打开注册表编辑器(regedit),导航至:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows
找到右侧的AppInit_DLLs项,双击将其值清空;若该项不存在则无需操作。
该键一旦非空,User32.dll在每个GUI进程启动时都会强制加载其中列出的DLL——Explorer.exe首当其冲。
【必须同时修改Wow6432Node路径】:32位程序在64位系统上运行时会读取HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Windows\AppInit_DLLs,此处也需清空,否则32位Explorer.exe副本(如某些兼容模式下)仍可被劫持。
关闭全局DLL加载策略
在相同注册表路径(HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows)下,确认LoadAppInit_DLLs DWORD值为0。
若该值为1,即使AppInit_DLLs为空,系统仍会执行校验逻辑并可能触发异常加载行为;设为0才能彻底禁用该机制。
这一步不可跳过——很多安全工具只清空AppInit_DLLs却忽略此开关,导致防御形同虚设。
清理ShellExecuteHooks注册表项
恶意软件常通过以下注册表位置挂钩Explorer.exe消息循环:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellExecuteHooks
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\*\shellex\ContextMenuHandlers
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shellex\ContextMenuHandlers
逐项检查右侧默认值或已命名的子项,删除所有指向可疑路径(如C:\Program Files\Internet Explorer\PLUGINS\SysWin64.Sys)的字符串值。
特别注意SysWin64.Sys这类已知恶意模块,它正是通过ShellExecuteHooks实现对Explorer.exe的长期驻留与键盘钩子注入。
启用驱动程序强制签名(DSE)
以管理员身份运行CMD,执行:
bcdedit /set {current} testsigning off → bcdedit /set {current} nointegritychecks off → shutdown /r /t 0
重启后进入高级启动→疑难解答→启动设置→重启→按7启用“禁用驱动程序强制签名”(仅临时调试用);日常必须保持禁用状态。
Windows默认启用驱动签名强制(Driver Signature Enforcement),但部分Rootkit会利用测试签名绕过。确保bcdedit中nointegritychecks为off,且系统未处于testsigning模式,可阻止未签名内核驱动挂钩ZwQuerySystemInformation等关键函数,从而截断驱动级进程隐藏链路。
使用Process Explorer验证Explorer.exe完整性
下载微软官方Sysinternals套件中的Process Explorer,以管理员身份运行。
在进程树中找到explorer.exe → 右键→Properties→Image→确认“Image Path”为C:\Windows\Explorer.exe,且“Digital Signer”显示“Microsoft Windows”。
若签名显示“Unable to verify”或路径指向非系统目录(如C:\Users\XXX\AppData\Local\Temp\explorer.exe),说明已存在文件替换或重定向注入,需立即使用DISM /Online /Cleanup-Image /RestoreHealth修复系统映像。











