web-dev-qa-db-ja.com

問題のある証明書を見つける最も実用的な方法は何ですか?

私はかなり前から wsusoffline を使用していましたが、最近、この問題が発生しました。プログラムは更新をダウンロードしますが、すぐに削除して、ログに次の警告を生成します。

警告:署名されていないファイル「H:\ Windows\WindowsUpdate\wsusoffline-10\client\w100-x64\glb\windows10.0-kb3172729-v2-x64_ccc19baa66b28b18518e015e10674bd992e258b8.cab」を削除しました

ダウンロード中の ファイル は次のとおりです。

インターネット調査により、 このスレッド が明らかになり、 sigcheck のときにこの警告が表示されることがわかります。 -)ダウンロードしたファイルの署名を確認できません。

スレッドが開始された場合、問題は彼のマシンに証明書がないことでした。しかし、私は彼とは異なるメッセージを受け取っています。

このようにsigc​​heckを実行すると:

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

これは私が得ている結果です:

検証済み:現在のシステムクロックまたは署名されたファイルのタイムスタンプに対して検証するときに、必要な証明書が有効期間内にありません。

私の質問は、問題のある証明書をどのように見つけて表示するので、この問題をさらに調査できるかということです。

2
Andrew Savinykh

この場合、問題の証明書は証明書ですファイル内

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のプロパティを調べたり、通常どおり証明書をファイルにエクスポートして、さらに処理/保存したりできます。

0
Andrew Savinykh