You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何彻底自签名或移除已吊销证书签名的驱动程序?

彻底移除驱动签名及重新签名方案

一、彻底移除驱动签名

1. 确认签名是否完全移除

先执行以下命令验证.sys和.cat文件的签名状态:

signtool verify /v /a hackdriver.sys
signtool verify /v /a hackdriver.cat

如果输出中仍显示签名信息,说明之前的signtool remove命令未完全生效——部分驱动可能存在多重签名,或者.cat文件的签名未被处理。此时需对两个文件都执行移除命令:

signtool remove /s /v hackdriver.sys
signtool remove /s /v hackdriver.cat

2. 手动清除PE文件签名数据

若signtool无法彻底移除签名,可直接修改驱动的PE结构(.sys属于PE格式文件):

  • 用dumpbin查看证书表位置:
    dumpbin /headers hackdriver.sys
    
    在输出中找到Certificate Table的Virtual Address和Size值。
  • 用十六进制编辑器(如HxD)打开.sys文件,定位到上述虚拟地址对应的偏移,将对应大小的字节全部填充为0后保存。

注意:修改PE结构可能导致驱动功能异常,操作前务必备份原文件。

3. 绕过系统签名校验(解决安装后仍提示不良签名的问题)

即使移除了签名,Windows默认的驱动签名校验仍会拦截未签名驱动,需临时或永久关闭校验:

  • 临时测试模式:
    bcdedit /set testsigning on
    
    重启系统后,右下角会显示"测试模式"水印,此时允许安装未签名驱动。
  • 永久关闭(Windows 10及以下):
    bcdedit /set nointegritychecks on
    
    Windows 11需通过组策略修改:打开组策略编辑器,进入计算机配置>管理模板>系统>驱动程序安装>代码签名,将选项设置为"忽略"。

二、重新签名驱动的步骤

若更倾向于重新签名而非移除,可按以下流程操作:

1. 创建自签名根证书

用Windows Kit中的工具生成自签名证书:

makecert -r -pe -n "CN=My Test CA" -ss CA -sr CurrentUser -a sha256 -cy authority -sky signature -sv MyTestCA.pvk MyTestCA.cer

将证书导入系统信任的根证书库:

certutil -addstore -f "Root" MyTestCA.cer

2. 签名驱动文件

分别签名.sys和.cat文件(替换[你的证书密码]为创建证书时设置的密码):

signtool sign /v /f MyTestCA.pvk /p [你的证书密码] /t http://timestamp.digicert.com hackdriver.sys
signtool sign /v /f MyTestCA.pvk /p [你的证书密码] /t http://timestamp.digicert.com hackdriver.cat

安装驱动时,系统会提示证书未被验证,选择信任该证书即可完成安装。

内容的提问来源于stack exchange,提问作者Ivan P.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 04:30:15