質問: https経由でダウンロードチェックサムを確認する理由はありますか ダウンロードをリンクしているページとダウンロード自体の両方がhttpsを介して信頼できるドメイン上にあると仮定すると、ダウンロードされたファイルのハッシュ/チェックサム(特に実行可能ファイル/インストーラー、それ自体も何かによって署名されていない)をチェックすることを心配する理由はありますか? osは信頼します)?私が理解しているように、そうする理由は、ダウンロードエラー(tcpこれを行う必要がありますか?)またはファイルに感染する悪意のある攻撃をキャッチするためです。しかし、https(tls)はすでにそれらから完全に保護されているはずなので、手動検証にさらに価値はありますか?
回答: イアンの応答に追加します。mitm攻撃では、man-in-the-middleはペイロードを悪意のあるものに変更できないため、チェックサムは役に立ちません。mitmがクライアントのマシンにルート証明書をインストールしている場合、または何らかの方法で接続を操作できる場合、表示されるチェックサムを変更できるため、チェックサムも役に立ちません。サーバー攻撃に対しても同じことが起こるはずです。彼がすでにサーバーにアクセスできる場合は、チェックサムを変更できます。ただし、サーバーが分割されている場合(ダウンロードサーバーとダウンロードリンク/チェックサムを表示するサーバー)、チェックサムを提供することをお勧めします。したがって、経験則として、チェックサムを表示しているサーバーがダウンロードファイルを提供しているサーバーと同じである場合、チェックサムは役に立ちません。複数のミラーがある場合、それは必須です。最新の更新/正確にはセキュリティ関連ではありませんが、知っておくと便利です:チェックサムを追加する別の正当な理由を見つけました。これは、おそらくアーカイブされる予定のファイル(たとえば、archive.org)のためのものであり、ユーザーは、取得するファイルがで利用可能だったときと同じであることを認識します。あなたのサイト。また、インターネットでファイルの特定のバージョンを検索しようとしている場合(同じ実行可能ファイル名でバージョン管理されていることを考慮)、一部のミラーサイトまたはアーカイブサイトでは、ファイルのmd5/sha1を検索エンジンで使用できます。そのため、代わりにハッシュを検索することで簡単に見つけることができるかもしれません(私は実際に過去にこの特定の問題に遭遇し、hashを検索することでそれを見つけました)。