gpt4 book ai didi

windows - 如何在验证内核签名策略时使用 signtool.exe 列出所有签名

转载 作者:可可西里 更新时间:2023-11-01 13:46:29 28 4
gpt4 key购买 nike

因此,我使用 Windows SDK 8.1 中的 signtool 对二进制文件进行签名:

"C:\Program Files (x86)\Windows Kits\8.1\bin\x64\signtool.exe" sign /a /i Symantec /ac C:\utils\MSCV-VSClass3.cer /ph /t "http://timestamp.verisign.com/scripts/timstamp.dll" "foo.exe"
Done Adding Additional Store
Successfully signed: foo.exe
"C:\Program Files (x86)\Windows Kits\8.1\bin\x64\signtool.exe" sign /a /i Symantec /ac C:\utils\MSCV-VSClass3.cer /ph /fd sha256 /tr "http://timestamp.geotrust.com/tsa" /td sha256 /as "foo.exe"
Done Adding Additional Store
Successfully signed: foo.exe

当我在文件属性中查看它时,我可以看到正确的结果。

但是,当我将 verify 与这个非常 signtool 一起使用时,根据传递的参数,我得到:

"C:\Program Files (x86)\Windows Kits\8.1\bin\x64\signtool.exe" verify /all "foo.exe"
File: foo.exe
Index Algorithm Timestamp
========================================
SignTool Error: A certificate chain processed, but terminated in a root
certificate which is not trusted by the trust provider.
SignTool Error: A certificate chain processed, but terminated in a root
certificate which is not trusted by the trust provider.

使用 /pa/pa/all 我可以看到两个时间戳:

"C:\Program Files (x86)\Windows Kits\8.1\bin\x64\signtool.exe" verify /pa "foo.exe"
File: foo.exe
Index Algorithm Timestamp
========================================
0 sha1 Authenticode

Successfully verified: foo.exe
"C:\Program Files (x86)\Windows Kits\8.1\bin\x64\signtool.exe" verify /pa /all "foo.exe"
File: foo.exe
Index Algorithm Timestamp
========================================
0 sha1 Authenticode
1 sha256 RFC3161

但是当尝试使用 /kp 来验证内核签名策略时,signtool 拒绝与 /all 一起运行:

"C:\Program Files (x86)\Windows Kits\8.1\bin\x64\signtool.exe" verify /kp /all "foo.exe"
SignTool Error: The /all option is incompatible with the /kp option.

所以我有两个问题:

  1. 这是缺陷吗(/kp/all 不能一起工作)?
  2. 有没有比两次调用 signtool verify 更好的方法,一次是 /pa/all 一次是 /kp查看所有时间戳根据内核签名策略进行验证?

最佳答案

我最近偶然发现了 /kp/all 的相同问题,完全是偶然发现参数的顺序很重要。如果我指定 /kp/all,我会得到 The/all option is incompatible with the/kp option。但是,如果我通过 /all/kp,验证会顺利进行:它会枚举文件中的所有签名并全部检查。

关于windows - 如何在验证内核签名策略时使用 signtool.exe 列出所有签名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34732134/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com