【问题标题】:Can I install an x64 driver with a test certificate WITHOUT disabling the driver signature?我可以在不禁用驱动程序签名的情况下安装带有测试证书的 x64 驱动程序吗?
【发布时间】:2011-08-07 14:29:15
【问题描述】:

我正在开发一个虚拟驱动程序,QA 需要检查几台 Windows 7 机器上的 x64 版本。我已严格按照为测试目的生成证书的说明,但我仍然有一些问题。所以,我做了以下steps:

Makecert -r -pe -n "CN=TestCertForWDK" -ss "TestCert" mccert.cer

我在安装程序中添加了以下two lines 以在远程机器上进行自动证书安装

certmgr.exe -add mccert.cer -s -r localMachine root
certmgr.exe -add mccert.cer -s -r localMachine trustedpublisher

And

Inf2cat.exe /driver:D:\Projects\MyDrv\package\ /os:7_X64

最后

signtool sign /a /v /s "TestCert" /n "TestCertForWDK" mydrv.cat
signtool sign /a /v /s "TestCert" /n "TestCertForWDK" mydrv.sys

顺便说一句,起初我尝试通过 devcon 安装。报“devcon 成功”,但Device Manager 中的设备标有黄色感叹号(不可信签名)。

后来,我尝试使用 hdwwiz - 当我手动输入驱动程序的路径(有磁盘)时 - hdwwiz 显示驱动程序具有签名并且安装继续进行而没有任何警告。但是在那之后,正如我已经提到的那样,由于签名无效(黄色“!”),设备无法正常工作

我在Winqual有一个账号,但是驱动还处于开发状态,我还不想花钱提交。难道我做错了什么?是否可以使用我自己的 makecert.exe 生成的证书安装 x64 驱动程序,并且不禁用最终用户 PC 上的驱动程序签名(这对我来说是不可接受的)?

【问题讨论】:

  • 如果我没记错的话,您需要绕过“内核补丁保护”(KPP,非正式地称为 PatchGuard)才能在不禁用驱动程序签名的情况下安装带有测试证书的 x64 驱动程序。

标签: driver windows-7-x64 driver-signing


【解决方案1】:

很遗憾,您还需要让 Microsoft 交叉签名。详情请见here

即使您想使用自己的测试证书,也需要使用BCDEdit tool 进行更改。

bcdedit.exe {boot-entry-guid} testsigning on

这将允许使用您的测试证书。这是使用测试证书的唯一方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 2017-01-30
    • 1970-01-01
    • 1970-01-01
    • 2017-01-09
    • 2013-01-08
    • 2014-11-08
    相关资源
    最近更新 更多