平台
客户端 - Windows 7
服务器 - Windows Server 2008 R2
功能影响
严重性 - 低
频率 - 低
描述
AppInit_DLLs是一种机制,允许将任意 DLL 列表加载到系统上的每个用户模式进程中。 Microsoft正在修改 Windows 7 和 Windows Server 2008 R2 中的 AppInit DLL 设施,以添加新的代码签名要求。 这将有助于提高系统可靠性和性能,并提高软件来源的可见性。
配置
存储在注册表中的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion \Windows 键下的值决定了AppInit_DLLs基础结构的行为。 下表描述了这些注册表值:
价值 | 描述 | 示例值 |
---|---|---|
LoadAppInit_DLLs (REG_DWORD)${REMOVE}$ |
全局启用或禁用 AppInit_DLLs.${REMOVE}$ |
0x0 – 禁用AppInit_DLLs。 |
0x1 – 已启用AppInit_DLLs。 | ||
AppInit_DLLs(REG_SZ) | 要加载的 DLL 的空格或逗号分隔列表。 应使用短名称指定 DLL 的完整路径。 | C:\ PROGRA~1\WID288~1\MICROS~1.DLL |
RequireSignedAppInit_DLLs (REG_DWORD)${REMOVE}$ |
仅加载代码签名 DLL.${REMOVE}$ |
0x0 – 加载任何 DLL。 |
0x1 – 仅加载代码签名的 DLL。 |
Windows 7
AppInit_DLLs基础结构加载的所有 DLL 都应进行代码签名。 为了应用程序兼容性,Windows 7作系统将加载所有 AppInit DLL。 但是,Microsoft建议所有应用程序开发人员对 DLL 进行代码签名,以帮助提高 Windows 的可靠性,并准备在未来版本的 Windows 中强制实施代码。 默认情况下,RequireSignedAppInit_DLLs注册表项控制此行为及其在 Windows 7 上的值设置为 0。
Windows Server 2008 R2
AppInit_DLLs基础结构加载的所有 DLL 都必须进行代码签名。 默认情况下,RequireSignedAppInit_DLLs注册表项控制此行为及其在 Windows Server 2008 R2 上的值设置为 1。
指向其他资源的链接
在 Windows 7 和 Windows Server 2008 R2 中 AppInit DLL