
ダウンロードされたファイルやシステムに存在するファイルが Microsoft からのものであり、改ざんされていないことを確認する方法はありますか? ある場合、PowerShell を使用する方法はありますか?
コマンドレットの使用を考えていますGet-AuthenticodeSignature
が、正しい方向に進んでいるかどうかわかりません。
誰かこの件について助けてくれませんか?
以下はファイルから得られる出力です -
PS C:> Get-AuthenticodeSignature -FilePath .\sts2016-kb3141486-fullfile-x64-glb.exe | fl
署名者証明書: [件名] CN=Microsoft Corporation、OU=MOPR、O=Microsoft Corporation、L=Redmond、S=Washington、C=US
[Issuer] CN=Microsoft Code Signing PCA, O=Microsoft Corporation, L=Redmond, S=Washington, C=US [Serial Number] 330000014096A9EE7056FECC07000100000140 [Not Before] 8/18/2016 8:17:17 PM [Not After] 11/2/2017 8:17:17 PM [Thumbprint] 98ED99A67886D020C564923B7DF25E9AC019DF26
タイムスタンプ証明書:
ステータス: 有効
ステータスメッセージ: 署名が検証されました。
パス: C:\sts2016-kb3141486-fullfile-x64-glb.exe
署名タイプ: Authenticode
IsOSBinary: False
では、ファイルをチェックして発行者が同じで署名が検証されている場合、そのファイルは安全であるとみなしてよいのでしょうか?
ありがとう!
答え1
チェックサム、またはMicrosoftのダウンロードページでパッケージハッシュと呼ばれるものを使用できます。これはファイルから作成できるハッシュです。ソフトウェア提供されたファイルの下部には、ファイル ハッシュ情報を含むセクションがあります。
この情報を使用して、正しいソフトウェアをダウンロードしたことを確認できます。PowerShell には、ファイルに対して実行する Get-FileHash というコマンドレットがあります。デフォルトでは SHA256 を使用します。-Algorithm パラメーターを使用して、別のアルゴリズムを使用できます。以下の例では、上記のスクリーン ショットと一致する SHA1 を使用しました。-Algorithm SHA256 を使用すると、スクリーン ショットの「パッケージ ハッシュ SHA 2」と一致します。
Get-FileHash C:\sts2016-kb3141486-fullfile-x64-glb.exe -Algorithm SHA1
Algorithm Hash Path
--------- ---- ----
SHA1 1B30B50FEB5FB3F8D764C6C0D6523DBA5BE05C1E C:\sts2016-kb3141486-fullfile-x64-glb.exe
ハッシュが一致すれば、ダウンロードに自信を持つことができます。
ありがとう、ティム。