ダウンロードしたファイルのSHA256が一致した:実行してよいかは別に決める
SHA256が一致しても、そのファイルを実行してよいとは決まりません。まず配布元が公開した正しい版の値と照合し、Windowsの署名付きファイルなら発行元も見ます。照合値の出所が分からない間は、開いて試すのではなく保留します。
公式資料確認日:。
同じ値だった、の比較相手を残す
ハッシュはファイルの内容を照合する値です。名前が同じでも中身が違う場合があり、名前だけを変えても中身のハッシュは変わりません。照合には同じアルゴリズムを使い、配布元の公式公開ページで対象の版・OS・構成が合う値を選びます。
受け取ったファイルと、その横に置かれた出所不明のハッシュだけを比べても、期待した配布元のファイルかは確認できません。自分で計算した値を同じファイルと比較するだけでも、取り違えや配布元の判定には足りません。
Windowsでは、実行せずにファイルの値を照合する
PowerShellのGet-FileHashは指定したファイルをハッシュ化するコマンドです。例は Get-FileHash -LiteralPath 'C:\Downloads\example.ps1' -Algorithm SHA256 。パスを手元の対象へ置き換え、表示されたAlgorithm・Hash・Pathを記録します。ファイルを起動するコマンドではなく、ここに書いた出力や実行結果はSelparoの実測ではありません。
計算した値と公式の対象版の値が違うなら、理由が分かるまで実行しません。別の版を選んだ、途中で内容が変わったなどの可能性を、配布元と対象ファイルの記録から切り分けます。不一致をウイルスと断定することも、一致を無害と断定することもしません。
内容の一致と、発行元の確認を別欄にする
Windowsの署名情報はGet-AuthenticodeSignatureで読み取れます。Windows専用のコマンドで、対象が署名されていない場合も情報が返ります。署名がないこと、署名が有効なこと、期待した発行元であることを同じ判定にしません。
| 見るもの | 照合する記録 | 保留する条件 |
|---|---|---|
| 配布元と対象版 | 公式の公開ページ、版、OS、ファイル名 | 出所や対象が分からない |
| 内容の一致 | 同じアルゴリズムの公開値と手元の計算値 | 不一致の理由が分からない |
| 署名付きファイル | 署名の状態と期待した発行元 | 状態や発行元が予定と違う |
| 実行を許可する範囲 | 必要な処理と組織・端末の運用方針 | 内容や権限を判断できない |
署名があっても、処理の中身を飛ばさない
署名を見るコマンドの例は Get-AuthenticodeSignature -LiteralPath 'C:\Downloads\example.ps1' 。状態と署名者の情報を読み、公式配布元の説明と照合します。署名の見方を確かめるために、実行ポリシーを緩めたり証明書を勝手に信頼へ追加したりする必要はありません。
Microsoftのスクリプト署名の説明も、実行前にコードの内容を見て信頼できるか判断することを求めています。署名のValidという表示だけで、その処理が自分の入力や権限に適しているとは扱いません。読めない処理や社内方針との不一致が残るなら、配布元の説明や管理担当の判断がそろうまで保留します。
保存できたことと、復元できることも別
たとえば保存済みのバックアップと以前記録したハッシュが一致しても、必要な設定や認証まで戻せる証拠にはなりません。これは判断の例で、実際の復元結果ではありません。配布物の受入を終えた後も、処理の権限やバックアップからの復旧は、それぞれの確認を残します。
この照合のためだけにSSDやVPSを追加する必要はありません。実行場所や機器を変えても、正しい配布元と許可する処理を決める仕事は残ります。
公式資料と、判断例の境界
仕様の根拠は以下の公式資料です。本文の記入例は実測値ではありません。購入・設定変更時は、対象の型番・版・契約条件を照合します。
- Microsoft:Get-FileHashによるファイル内容の照合
指定したアルゴリズムで内容のハッシュを計算し、既定はSHA256。比較値の出所や実行許可を保証する機能ではありません。
- Microsoft:Windowsで署名情報を読むGet-AuthenticodeSignature
Windows専用で署名情報を取得します。署名されていないファイルにも情報が返るため、取得できたことを有効署名と扱いません。
- Microsoft:スクリプト署名と実行前の内容確認
Windowsのスクリプト署名と発行元の信頼を説明し、実行前にコードの内容を確認するよう案内。ページは実行ポリシーを緩める手順を要求しません。