webサイトが提供する実際のファイルではなく、悪意のある実行可能ファイルを実行するようにだますことは可能ですか?ファイルをmd5sumすることを想定
コメントはMD5コリジョンについての重要な側面をカバーしていますが、この領域、特にプリイメージ攻撃については少し誤解があると思うので、もう少し考え物(とそれを裏付けるための計算)を提供します。
webサイトから提供された実際のファイルではなく、悪意のある実行可能ファイルを実行するようにだますことは可能ですか?ファイルをmd5sumすることを想定
Yes-ish。実行可能性が大きく異なる2つの方法を次に示します。
2の前提条件:
つまり、8 Nvidia 1080 GPUセットアップを使用すると、1.5x10 ^ 26または150000000000000000000000000年50%の確率が必要になります目的のターゲットハッシュにハッシュする悪意のあるプログラム(現在の仮定-数学2を参照)。
うまくいけば、これにより、MD5チェックサムを "偽装"するのに必要な数値がわかります。そしてはい、その数はSHA256でさらにばかげています。
参照:
数学1(x
を1 - ((2^123.4 - 1)/2^123.4)^x = 0.5
で解決します。x
は、目的のターゲットハッシュに50%の確率でハッシュするためにハッシュする必要があるプログラムの数です) :
数学2(units
による)29バイトのファイルまたは実行する必要があるハッシュの数):
ユーザーが比較するハッシュサムが、信頼できる悪意のないファイルからのものである場合は、できません。
理論的には、製造されたハッシュサムの衝突が発生する可能性があると言う人は、(パスワードのように)「すべて」のハッシュサムの衝突を必要としないことを忘れますが、ハッシュサムの衝突は最初に実行可能な実行可能ファイルでなければならず、次に私たちが望むことを正確に行います。その時点で私たちは、いいえ、それは不可能であると言っても安全である可能性について話している。
それにもかかわらず、攻撃者がダウンロードされるファイルを危険にさらすことができる場合、ユーザーが受信するハッシュサムも危険にさらす可能性があります。その場合でも、ハッシュサムはダウンロードされたものが輸送中に破損していないことを確認するという目的を果たします。ただし、これを認証しているのは攻撃者であり、(おそらく)信頼できるWebサイトではありません。
MD5に対する他の攻撃もありますが、それらすべては、最初のハッシュサムが生成される前に、攻撃者が最初に何らかの形でファイルにアクセスできることを想定しています。 (例えば、後の攻撃のために無害なファイルを準備することによって)
したがって、ハッシュサムが改ざんされていない悪意のないファイルからのものである場合は安全ですが、それ以外の場合はすべて、ハッシュサムは、Webサイトまたは攻撃者が意図したものを受け取ったことを確認するだけです。