ELAM 驱动程序提交过程

以下步骤可用于提交提前启动反恶意软件 (ELAM) 驱动程序:

  1. 确保驱动程序符合记录的 ELAM 驱动程序要求。 有关详细信息 ,请参阅 ELAM 驱动程序要求INF SignatureAttributes 部分

  2. 使用硬件徽标工具包 (HLK) 和硬件认证工具包 (HCK) 验证驱动程序。 如果驱动程序将在 Windows 8 和 Windows 10 中使用,则需要运行工具包的两个版本。 在提交中包括结果。 有关详细信息,请参阅 HLK 工具技术参考 。 有关所需的 HCK 测试的信息,请参阅下文。

  3. 遵循驱动程序签名策略主题中所述的内核模式 驱动程序签名策略

  4. Windows 硬件开发人员中心提交驱动程序包以供评估

每个驱动程序 .sys 文件都必须由 Microsoft 使用特殊证书(指示它是早期启动 AM 驱动程序)签名的代码。

AM 驱动程序必须是单个二进制文件, (不导入任何其他 DLL) 。

硬件认证工具包测试

面向预Windows 10操作系统的每个驱动程序都必须通过以下 HCK 测试,这些测试由 ISV 管理:

性能测试

  • 回调延迟 - 每个早期启动 AM 驱动程序都需要在 0.5 毫秒内从内核返回驱动程序验证回调。 此时间是从内核向驱动程序发出回调到驱动程序返回回调的时间开始测量的。
  • 内存分配 - 每个早期启动 AM 驱动程序都需要将其内存占用限制为 128 KB,以便驱动程序映像及其配置 (签名) 数据。
  • UNLOAD BLOCKING - 每个早期启动 AM 驱动程序在初始化最后一个启动驱动程序后接收同步回调,这表示 AM 驱动程序将被卸载。 AM 驱动程序可以使用它来指示它需要执行“清理”并保存运行时 AM 驱动程序可以使用的任何状态信息。 但是,提前启动 AM 驱动程序必须返回回调,驱动程序才能卸载,启动才能继续。
  • 签名数据测试 - 每个早期启动的 AM 驱动程序都必须从单个已知位置获取其恶意软件签名数据,而不能从其他位置获取。 这样,Windows 就可以测量和保护这些数据。 此测试可确保每个 AM 驱动程序仅从为该驱动程序创建的注册表配置单元读取其配置数据。
  • 备份驱动程序测试 - 早期启动 AM 驱动程序在安装时,还必须将驱动程序的备份副本安装到备份驱动程序存储。 此要求有助于在主驱动程序损坏的情况下进行修正。 此测试可确保对于已安装的早期启动 AM 驱动程序,备份存储中存在相应的驱动程序。