Microsoft Windows 64位内核驱动签名(Sectigo)
更新时间: 2023-09-28 14:59:03
如果您使用的是SHA-2证书或信任链中包含SHA-2证书,并且您正用它来签署内核模块,那么您应该需要安装 KB3033929,它是Windows安全更新系统发布的针对Windows 7更新的补丁。在没有更新的Windows 7版本上,内核会拒绝使用SHA-2的证书的签名,因此不能使用它们来加载内核模块。
那么如何在Microsoft Windows 64位系统中做内核驱动签名呢?本文以Sectigo证书为例讲解。
为了成功安装驱动程序,必须对项目中的以下文件类型进行签名:
.sys
.cat
前提条件:
1.下载Sectigo交叉签名的CA。
[KMCS] COMODO RSA Certification Authority或KMCS] AddTrust External CA Root(用于与内核模式驱动程序签名一起使用)
2.打开Windows命令提示符(cmd),然后运行signtool.exe:
签名:
使用存储在受密码保护的PFX文件中的证书对文件进行签名
内核签名有以下两种情况:
无需时间戳:
> signtool sign /v /ac 'CROSS_SIGNED_SECTIGO_CA_HERE' /f YOUR_PFX_HERE /p Password /n 'Company Name' 'PATH_TO_FILE_TO_SIGN'
使用时间戳:
> signtool sign /v /ac 'CROSS_SIGNED_SECTIGO_CA_HERE' /f YOUR_PFX_HERE /p Password /n 'Company Name' /tr http://timestamp.sectigo.com/rfc3161 'PATH_TO_FILE_TO_SIGN'
此命令将为程序安装一个包括交叉签名证书的签名,其中,该证书的时间戳符合RFC 3161。
注意: 公司证书名称应与颁发给您自己的证书领域的证书完全一致。
提示:
1. 您可以使用以下命令来验证驱动程序文件的签名:
> signtool verify /v /kp 'PATH_TO_FILE_TO_SIGN'
2. 您应使用以下命令来验证由指定目录文件签名的指定驱动程序:
> signtool verify /v /kp /c 'C:\\CatFileName.cat' 'PATH_TO_FILE_TO_SIGN'
-v用于显示详细输出,-kp根据内核模式驱动程序签名标准对其进行验证。
3.为了减少启动时间,请对所有驱动程序和目录文件进行签名。
原文链接:https://support.sectigo.com/Com_KnowledgeDetailPage?Id=kA01N000000zFK6