找出有问题的证书的最实际的方法是什么?

找出有问题的证书的最实际的方法是什么?

我一直在使用wsus离线已经有一段时间了,但最近我遇到了这个问题。程序下载了更新,但随后立即删除了它,并在日志中生成以下警告:

警告:已删除未签名的文件“H:\Windows\WindowsUpdate\wsusoffline-10\client\w100-x64\glb\windows10.0-kb3172729-v2-x64_ccc19baa66b28b18518e015e10674bd992e258b8.cab”

这里是文件正在下载。

互联网研究显示此主题这让我们知道这个警告是在什么时候发出的信号检查无法验证下载文件的签名。

在开始的线程中,问题在于他的机器上缺少一些证书。但我收到的消息与他不同。

当我像这样运行 sigcheck 时:

sigcheck.exe windows10.0-kb3172729-v2-x64_ccc19baa66b28b18518e015e10674bd992e258b8.cab

这是我得到的结果:

已验证:根据当前系统时钟或签名文件中的时间戳进行验证时,所需证书未在有效期内。

我的问题是如何找到并查看有问题的证书,以便进一步调查这个问题?

答案1

在这种情况下,问题证书是证书在文件中

PS C:\_test> $signature = Get-AuthenticodeSignature .\windows10.0-kb3172729-v2-x64_ccc19baa66b28b18518e015e10674bd992e258b8.cab
PS C:\_test> $signature.SignerCertificate

Thumbprint                                Subject
----------                                -------
2383BED52ABD42366137BFA95716AB432BAD6B3E  CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US


PS C:\_test> $signature.SignerCertificate.NotAfter

Wednesday, April 19, 2017 6:07:31 AM

现在,您可以随意检查 $signature.SignerCertificate 的属性,甚至可以像往常一样将证书导出到文件中,以便进一步处理/存储。

相关内容