公式WebサイトからダウンロードしたISOを検証する価値はありますか?


37

デフォルトの「Ubuntu Desktop」オプションを選択して、https://www.ubuntu.com/downloadからISOをダウンロードしました。

Webサイトは、https://tutorials.ubuntu.com/tutorial/tutorial-how-to-verify-ubuntuのページにリンクしていますこのページには、ubuntuを確認する方法が記載されています。

これはかなり退屈に思えますが、公式WebサイトからダウンロードしたISOに問題があるのはどれほど現実的かと思います。検証プロセス自体には、私にとって新しいソフトウェアをダウンロードする必要があるため、別の攻撃ベクトルを閉じようとしても、別の攻撃ベクトルを導入することに注意してください。

価値があるのは、ライブUSBのみを使用し、Ubuntuを完全にインストールしないことです。それは違いがありますか?


8
私の政治的答えは「YES DO IT」です。多分何ヶ月も前に初めてダウンロードしたときに一度だけを除いて、私はそれをやったことがありません。私は常にソフトウェアまたはパッチ/バグ修正をダウンロードして評価していますが、追加の手順に煩わされることはありません。さらに、私のシステムはすべて非実稼働であり、明日「偽」になった場合は、肩をすくめて先に進みます。
WinEunuuchs2Unix

14
md5sumを確認したくない場合は、Torrentが代わりになります。トレント経由でファイルを取得すると、自動的にチェックされます:-)トレントメソッドを使用する方が通常は高速です(通常のダウンロードに比べて) 。
sudodus

2
大きなファイルに対するMD5チェックサムの主な用途は、ダウンロードされたファイルの整合性を保証すること(たとえば、転送が途中でキャンセルされたかどうかを検出すること)で、MITM攻撃の可能性を軽減することではありません。
-rexkogitans

1
@rackandbonemanいいえ、それは根本的な問題ではありません。
デビッドリチャービー

16
おもしろい事実:あなたはおそらく、あなたの人生全体でチェックサムを計算するよりも、この質問をすることに多くの時間を費やすでしょう。
el.pescado

回答:


57

はい、それは価値があります。

ダウンロードしたISOをmd5sum / etcに数秒で取得し、MITMなどによる攻撃を受けなかったという安心感を提供します。さらに、これらの秒は、数ビットのエラーとデバッグが必要な場合に無駄になる[時間]に対する保険ですダウンロードが原因で他に誰も得られないエラーを追跡します(たとえば、ネットワークの問題があるため、デバッグを試みますが、ネットワークが詰まっているのは、それがほんの少し間違っているためです...)。

何かをmd5sumするために必要なソフトウェアは、通常は別のソース(古いバージョン、場合によっては異なるOS /ディストリビューション)からのものであり、非常に小さく、多くの人/ほとんどの人にすでに存在しています。

さらに、ローカルミラーからダウンロードできますが、Canonicalソースからmd5sumを取得するためです。私は、ミラーがそれで遊んでいないことを保証しています。繰り返しますが、非常に安価な保険で、3秒ほどかかります。


12
ただし、ダウンロードにHTTPS転送方法が使用されている場合は、すべての整合性チェックが既に行われています。
ナユキ

15
@Nayukiこれらの整合性チェックは、ファイルがサーバー上で何らかの形で破損している場合(ディスク/ FSドライバーの障害、不適切なミラーリングなど)価値がありません。
ルスラン

6
@Nayuki HTTPS経由でWebサイトにアクセスしているからといって、ダウンロードしているファイルを保持しているPCからストレージへのリンク全体がエンドツーエンドで暗号化されているわけではありません。数年前のGoogleデータセンターの相互リンクの大失敗をご覧ください。
CVn

30
誰かがISOをMITMした場合、Webサイトで表示したときにチェックサムをMITMしなかったと言うのは誰ですか?(ミラーを使用している場合、便利です。)同じエンティティから提供されるチェックサムとダウンロードを確認することは、それほど珍しいことではありません。

14
チェックサムがMitMを検出すると想定しないでください。指定されたチェックサムも偽物である可能性があります。適切な方法は署名を検証することですが、それにはGPGが必要です(これは一度しか行ったことがないので、苦労します)。
マイケルジョンソン

21

はい、それはされて非常に推奨あなたがダウンロードした画像を確認することを、ここでいくつかの理由があります:

  • ほんの数秒で、ファイルの整合性が正しいかどうか、つまりファイルが破損していないかどうかを確認できます。(破損の一般的な原因は、@ sudodusコメントからの不安定なインターネット接続などの技術的な理由による転送エラーです。)
  • ファイルが破損しており、このISOイメージをCD / USBドライブに焼き付けても動作しない場合、またはインストール中に失敗する可能性がある場合、時間とCDが無駄になります。
  • あなたは必ず公式CLEAN ISOイメージまたはソフトウェアのいかなる種類のバージョンではない(多分攻撃者によって)変更されたバージョンを使用していることを、このレポートを参照している:ウォッチドッグスの海賊は壊血病ビットコイン採掘マルウェアによってヒット

すでにGNU Linuxディストリビューションを使用している場合は、md5sumを使用できます。Windowsを使用している場合は、WinMD5Freeを使用できます。

それが役に立てば幸い。


3
窓のためには、ビルトイン使用することができますcertutilsuperuser.com/a/898377/521689
Kanchu

1
私も答えましたが、あなたの答えを支持しています。質問にもよく答えていると感じているからです。
ビトゥリアン

@sudodus Networksには独自の整合性チェックがあります。エラーがそれらを通り抜けることは不可能ではありませんが(TCPは単純なチェックサムを使用しますが、これはワードスワップを検出しませんが、ほとんどのリンクはCRCを使用します)、一般的に心配するものではありません。
バーマー

ただし、攻撃者がファイルを破損できる場合、MD5ボックスの値を変更することも手の届く範囲にあるはずです。
パスカルエンゲラー

2

はい、そうですが、Ubuntuは本来よりも難しくしているようです。

最善の場合は、キーを1回インポートした後、foo.isoとfoo.iso.sigをダウンロードし、.sigファイルをクリックする(または.sigファイルのシェルでgpgを使用する)だけです。これには数秒かかります。

Ubuntuは、ファイル自体のみが署名されている間にファイルからsha256の合計をチェックすることを強制することで、より複雑になっているようです。これはユーザーにとっては便利ですが、ユーザーにとってはより多くの作業が必要です。

一方、ファイルがだけで生成されたsha256sum * >SHA256SUMS場合、それを使用sha256 -cして確認しOK/Bad/Not-Found、出力として取得できます。


2

を確認し、/proc/net/devこれまでに受信した不良TCPフレームの数を確認します。1桁の値(できればゼロ)が表示される場合は、先に進んでください。大量のエラーやネットワークエラーが発生した場合は、MD5を使用してダウンロードを確認します(ネットワークの信頼性が低いため、HTTP経由で受信したものは信頼できないため、根本的な原因を調査します)。

すべての送信データをチェックサムするTCPを介してダウンロードする場合、まったく同じサイズのダウンロードが破損する可能性はほとんどありません。公式サイトからダウンロードしていると確信している場合(通常はHTTPSを使用しており、証明書チェックに合格している場合)、ダウンロードが完了したことを確認するだけで十分です。通常、適切なWebブラウザーはチェックを行い、期待する量のデータを取得できない場合は「ダウンロード失敗」の行に沿って何かを言いますが、何も言わずに不完全なファイルを保持することにしたブラウザーを見たことがありますがこの場合、ファイルサイズを手動で確認できます。

もちろん、チェックサムの検証にはまだ価値があり、ダウンロードしているファイルがサーバー上で破損している場合に対応しますが、それほど頻繁には発生しません。それでも、重要な何かのためにダウンロードを使用する場合、それは取る価値のあるステップです。

@sudodusがコメントで述べたように、HTTPSの代わりにBittorrentを使用することも別のオプションです。なぜなら、トレントクライアントは、Webブラウザーのように不完全/破損したデータを処理するときにより良い仕事をするからです。

チェックサム攻撃されるのを実際に防ぐわけではないことに注意してください。これがHTTPSの目的です。


5
TCPチェックサムは、ISOファイルほどの大きさではありません。わずか16ビットです。ノイズの多いリンクでは、一部の破損が通過する可能性が高くなります。
マーク

1
大きなISOの@Markには、多くのTCPチェックサムがあります。データを送信するために必要な個々のTCPセグメントごとに1つです。
アンソニーG-モニカの正義

3
@AnthonyGeoghegan、まさに。各セグメントには独立した破損の可能性があり、ISOファイルに含まれるセグメントの数を考えると、そのセグメントのチェックサムに一致する方法で破損する可能性がかなりあります。
マーク

1
@Markは、/ proc / net / devを確認して、受信した不良TCPフレームの数を確認できますか?私のコンピューターは140日の稼働時間で0になりました。間違っていなければ、認定されたギガビットイーサネット機器は10 ^ -10以上のビットエラーレートを提供します。もちろん、それはすべて...あなたは「良い機会」と呼んでいるものに依存
ドミトリーGrigoryev

1
@Mark CRCなどを持たない、どのようなレイヤー2を使用していますか?イーサネットを使用する 、CRCチェック TCPチェックサムを取得できます。そのための計算を行っていませんが、そこに「かなり良いチャンス」に到達する方法を見ることができません。
Voo

0

合計をチェックしないという難しい方法を見つけました。ダウンロード中に破損したISOを使用してCDを作成し、起動できないか、実行中にエラーが発生しました。

他の人が言ったように、それは少し時間がかかります。


その経験について最悪のことは、ISOを再度書き込むと、CDに同じエラーが表示されることです
-thomasrutter

1
RW CDとDVDを使用する理由。:-)
fixit7

7
10年以上CD / DVDを書いたことはありません。たくさんの安価なペンドライブがあるとき、書く時間と買うコストに見合う価値はありません-phuclv 18
1

0

ユースケースが1つだけであることがわかります。大規模自動化を使用したセットアップでは、検証するのに役立ちます。チェックを実行するスクリプト。イメージを処理する必要がある場合に進む前に


0

他の人は私がプログラマーであるにもかかわらず忘れた技術的な詳細を答えてくれました(私の仕事はネットワークを介したコミュニケーションを伴わない)ので、私はあなたに個人的な経験を知らせます。

長い間、私は頻繁にCDを焼くために使用された場合の時間前に、一度正しくダウンロードされているように見え、このLinuxディストリビューションのISOをダウンロードしているように私に起こりました。CDが失敗したので、ダウンロードしたファイルをチェックしましたが、一致しませんでした。だから、私は再びダウンロードし、それが働いた。だから、これは、私が高度なコンピューターユーザーであり、プログラミング(11、19年前からコンピューターを使用しており、1000枚以上のディスクを焼きました)以来、15年に1回しか発生しませんでした。しかし、それは起こりうる証拠です。

また、BitTorrentを介して1回または2回発生したため、フェイルセーフでもありません。ダウンロードしたファイルの再チェックを強制すると、破損したピースが特定されました。

私の結論は、HTTP(TCPに依存)はできるだけ安全かもしれませんが、インターネットはデバイスとサーバーの間に中間ノードがあり、途中で何が起こるかわからないことを意味します(パケットはすべて失われます)時間)、そして時々データが間違っているとコンピュータが判断できないと思います。

トラブルに見合う価値があるかどうかは誰も答えられません-それは状況に依存し、あなた自身でそれを判断できると確信しています。私にとっては、ほとんどの場合価値がありません。ただし、OSをインストールする場合は、ダウンロードしたイメージを前に確認します。

注:破損したダウンロードに1回か2回しか気づかなかったからといって、それがその時だけになったわけではありません。たぶん、邪魔にならないので気づかないかもしれません。

編集:私は、これらのデータ整合性検証ハッシュにより、ファイルが元のものと少し同一であるかどうかを知ることができると主張しています2つのファイルが同じハッシュになるという事実は、それらが同一であることを意味するものではありません-それは単に、それらが異なる可能性が極めて低いことを意味します。それらが有用な方法は、ファイルが同一でない場合、特にファイルが非常に異なる場合、結果のハッシュコードは実際には決して同じではないということです(このテストが失敗する可能性はさらに低いです)。少ない言葉で-ハッシュコードが異なる場合、ファイルが異なることがわかります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.