アカウント名:
パスワード:
リンク先のPDF、ほんとにSHA-1一致するな。しかも、内容もランダムデータでなく、意味のあるデータになっているのはすごい。
当然ながらCRC-32は一致しないな。いくつものハッシュを組み合わせるのはダメなんだろうか、とふと思った。・・・まあ、それができるぐらいならSHA-1を捨てればいいか。
リンク先のPDF、ほんとにSHA-1一致するな。 しかも、内容もランダムデータでなく、意味のあるデータになっているのはすごい。
概ね 64 bytes のランダムデータのような意味のないゴミデータが注入されています。PDFは可変長のゴミデータを入れても正常に表示されるので、それを利用しているのでしょう。
2つの PDFファイル (422,435 bytes) の内、差異があるのは 192byte~256byte の箇所のみであとは完全一致でした。ヘッダ部分を除いた最初の部分 64 bytes に違いがあるだけなので(背景色の情報もこの 64 bytes に含まれているはず)、僅か 64 bytes 任意のデータを入れられるファイル形式であるならば、この攻撃は成功することになります。
当然ながらCRC-32は一致しないな。 いくつものハッシュを組み合わせるのはダメなんだろうか、とふと思った。
ありとあらゆるハッシュ関数を試してみましたが、確かに SHA-1 以外は全部一致していませんでした。しかし、これは SHA-1 のみをターゲットにした検証用ファイルなので、当然のことです。
(無駄に長くなるし貼るべきか悩みましたが、ダウンロードしてハッシュ値を調べるのが面倒な人もいるかもしれないので、私がさっき調べたそれぞれのファイルのハッシュ値を貼っておきます)
* shattered-1.pdf [shattered.io] (422,435 bytes)
Adler32: 36f477bbBLAKE2sp: 4b64ce383ec747ec67895dacf8a7d4af8d62f9b7a8f8fbaf7ccb352ff2bf17f8BTIH: f86f6faf4d2e18e12b95b4471fc6a92cabe49004CRC32: 348150fbED2K: 38373b377cf16c032d08cef0855cb820GOST: 2cca14e553eff6d1c99fb37b8134c2d1d92bf65217185a0e2eca044d9747745bMD2: 27fa33d94a14ba237bf4dbee401f1df0MD4: 38373b377cf16c032d08cef0855cb820MD5: ee4aa52b139d925f8d8884402b0a750cRIPEMD-128: 70f07699de87e6520c80f5f7b5e2e430RIPEMD-256: 8fbfc5a8a6a1f26eff8b4b0759717df161f1ece1c0674c9501ecb827f5e1db35RIPEMD-320: 90d7a15075c1c20c85865eefb5dca8ad18d7f9c1d4a77dfae6e52a654f8a1abf216749994041a78eSHA-1: 38762cf7f55934b34d179ae6a4c80cadccbb7f0aSHA-256: 2bb787a73e37352f92383abe7e2902936d1059ad9f1ba6daaa9c1e58ee6970d0SHA-256 Base64: K7eHpz43NS+SODq+fikCk20QWa2fG6baqpweWO5pcNA=SHA-384: 27f937a0849be559affa109f97744024bc494b2b81dcd9684845cd14574953cc6310398b89e150ad3819188309e59996SHA-512: 3c19b2cbcf72f7f5b252ea31677b8f2323d6119e49bcc0fb55931d00132385f1e749bb24cbd68c04ac826ae8421802825d3587fe185abf709669bb9693f6b416SHA3-224: ef525305e821be4de14ce03aacf8f85a8252102e1f0884dae22a92eeSHA3-256: 36c1d2055da04440bb955880d6dd174d68b660d449d2f3ce42e4ef02bc718bd1SHA3-384: c3f292c8ec1a97ade3d64393fc5ba61de018f289479df18372a5f99d4d78974f12c27fc7c5fb8c58ddbac8499cd109a6SHA3-512: fa00d2b9e9322fd0bdd83e17277496f55563959f54de76b79eec08537c75a4d84f2a12017e1efeb1bc44b6d4f7fe1847a4570a18147a7e974465bd971c51504bTTH: raly2ga4whbetx5m3xzspacr3fv6dt6jbdeiqkqTiger: f23e7ac5991136b1b28bd2ea729a4bd64c64c5a14db20e21Whirlpool: 68e7a8d6622d2a02b9008b4eb610a5f9b95e66191b4267072b751af8722333fc1585892d898fbbe1a3aeb566aa1a1ca6c3f9d08ef8d5282eea677a82e41826f5
* shattered-2.pdf [shattered.io] (422,435 bytes)
Adler32: 49907353BLAKE2sp: cd064189a2433601e798629e90e76537c663ca1e406234dcaef8feace2f20379BTIH: 65522388faeae826bb5890ea18d98f240becd46cCRC32: b3fbab1cED2K: 4881d13b4265c952a9ed032ea4a1a043GOST: 85205642f0ebfa8e5b58639505e2ac4b84fa75939c181892e728b8cf4cbc95bbMD2: be972896748cc45244ff6c3e7154d05aMD4: 4881d13b4265c952a9ed032ea4a1a043MD5: 5bd9d8cabc46041579a311230539b8d1RIPEMD-128: 75d04513f1faee490567b7869730e815RIPEMD-256: e4326309ded334093caad2968d52239b162134d3d314810fa235a6fb298e8c2fRIPEMD-320: 33f83953dc061704b32bcb124983731244f4fe3c9d7c08514ffecde6ff1db5ff4c4dec33df9b0727SHA-1: 38762cf7f55934b34d179ae6a4c80cadccbb7f0aSHA-256: d4488775d29bdef7993367d541064dbdda50d383f89f0aa13a6ff2e0894ba5ffSHA-256 Base64: 1EiHddKb3veZM2fVQQZNvdpQ04P4nwqhOm/y4IlLpf8=SHA-384: e04944841a251d5bbed5dbb0d07486d254bcddd2c11341ee9bb045bfd678aa7b784e1b7a7d56ece
PDF中のJPEG画像のコメント領域に、調整用のバイナリデータが埋め込まれているようです。
PDFの見た目に影響しているのは、PDFファイルの0xC0番地の1バイトのみで、shattered-1.pdfとshattered-2.pdfの表示の違いは、この1バイトの違いによって発生しています。その後、127バイト使用して、ハッシュ値を衝突させるためのバイナリデータが埋め込まれていました。
この画像 [shattered.it]がわかりやすいですね。
PDFの見た目を変えたのは改竄可能性の例示に為でしょう。 同じ見た目でハッシュが同じでも何もすごくないですしね。
しかし、SHA-1を確認すれば同じになるというだけの話に110GPU年ですか。 今まで同一性チェックに使って、たまたま衝突したらどうしようとか考えていましたが認識を改めます。 まぁそれは確率の問題だし、いつも使ってるのはCRC-32なので改竄は容易ですけどね。
「ハッシュ値を調べるのが面倒」なんて言う人にとってはハッシュ値なんて意味のないものだろう?
ハッシュを組み合わせても強度はほとんど上がらない。MD5 + SHA-1では8ビット程度しか強度が上がらないそうだ。それどころか下手に組み合わせると弱くなるおそれすらある。どうしてそういうことが起こりうるのかについてはスラドの過去記事を参照 [srad.jp]。素直に暗号の専門家が設計したハッシュを使っておけ。
MD5ハッシュとSHA1ハッシュの併記という意味で、混合ではないのでは?
そして記事についてだけど。ハッシュについての話でブルートフォース攻撃って何よ?鍵関係ないじゃん。
埋め込むバイト列を総当たりで試すのであれば、それだってブルートフォースです。(ブルートフォースには力技程度の意味しかないです。)
00〜FF、0000〜FFFF、000000〜FFFFFF……ってな具合。
とはいえブルートフォース攻撃よりはブルートフォース解析ないし総当り解析などと表現するほうが自然かなともおもったり。
符号理論ではこういうのは全部「攻撃」と一括りにまとめています。
まあ専門用語がいっぱんてきなようほうとずれているのはよくあること
「ご褒美」が代表例かな?
次の中からブルートフォース攻撃を選べ(5点)1) 英数記号の組み合わせを生成し、ログインサーバに対して送信することで他人のアカウントでログインした。2) パスワードがハッシュ値で記録されたアカウント情報を入手したので、英数記号の組み合わせを生成し、記録されているハッシュ値と同じになる値を見つけた。2-1) そのようにして見つけたパスワードを使用して、他人のアカウントでログインした。3) 取得したZIPファイルがパスワードで暗号化されていたので、英数記号の組み合わせを生成して解読した。 (パスワードが正しいことの判定は、復号後のファイルの
8) アームが弱いので台パンした
MD5とSHA-1の両方を合わせた実例。https://roastingbugs.blogspot.jp/2017/03/eat-more-hashes.html [blogspot.jp]弱い者同士を組み合わせたところでほとんど意味はない。
ブレーンテキストなら改変は難しいってことか!
Brain text?
ある程度の長さのコメントブロック /* */ があれば0x00〜0xFFまでなんでも入れられるし、*/ というシーケンスさえ出ないように気をつければいいのでわりとハードルは低いかもしれない
そもそもデモにPDFを使うのはMD5コリジョンのときにも行われていた技法で、別に目新しくない。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
にわかな奴ほど語りたがる -- あるハッカー
ほんとに一致する (スコア:1)
リンク先のPDF、ほんとにSHA-1一致するな。
しかも、内容もランダムデータでなく、意味のあるデータになっているのはすごい。
当然ながらCRC-32は一致しないな。
いくつものハッシュを組み合わせるのはダメなんだろうか、とふと思った。
・・・まあ、それができるぐらいならSHA-1を捨てればいいか。
Re:ほんとに一致する (スコア:4, 興味深い)
概ね 64 bytes のランダムデータのような意味のないゴミデータが注入されています。PDFは可変長のゴミデータを入れても正常に表示されるので、それを利用しているのでしょう。
2つの PDFファイル (422,435 bytes) の内、差異があるのは 192byte~256byte の箇所のみであとは完全一致でした。ヘッダ部分を除いた最初の部分 64 bytes に違いがあるだけなので(背景色の情報もこの 64 bytes に含まれているはず)、僅か 64 bytes 任意のデータを入れられるファイル形式であるならば、この攻撃は成功することになります。
ありとあらゆるハッシュ関数を試してみましたが、確かに SHA-1 以外は全部一致していませんでした。しかし、これは SHA-1 のみをターゲットにした検証用ファイルなので、当然のことです。
(無駄に長くなるし貼るべきか悩みましたが、ダウンロードしてハッシュ値を調べるのが面倒な人もいるかもしれないので、私がさっき調べたそれぞれのファイルのハッシュ値を貼っておきます)
* shattered-1.pdf [shattered.io] (422,435 bytes)
* shattered-2.pdf [shattered.io] (422,435 bytes)
Re:ほんとに一致する (スコア:1)
PDF中のJPEG画像のコメント領域に、調整用のバイナリデータが埋め込まれているようです。
PDFの見た目に影響しているのは、PDFファイルの0xC0番地の1バイトのみで、
shattered-1.pdfとshattered-2.pdfの表示の違いは、この1バイトの違いによって発生しています。
その後、127バイト使用して、ハッシュ値を衝突させるためのバイナリデータが埋め込まれていました。
Re: (スコア:0)
この画像 [shattered.it]がわかりやすいですね。
PDFの見た目を変えたのは改竄可能性の例示に為でしょう。
同じ見た目でハッシュが同じでも何もすごくないですしね。
しかし、SHA-1を確認すれば同じになるというだけの話に110GPU年ですか。
今まで同一性チェックに使って、たまたま衝突したらどうしようとか考えていましたが認識を改めます。
まぁそれは確率の問題だし、いつも使ってるのはCRC-32なので改竄は容易ですけどね。
Re: (スコア:0)
「ハッシュ値を調べるのが面倒」なんて言う人にとってはハッシュ値なんて意味のないものだろう?
Re: (スコア:0)
ハッシュを組み合わせても強度はほとんど上がらない。MD5 + SHA-1では8ビット程度しか強度が上がらないそうだ。
それどころか下手に組み合わせると弱くなるおそれすらある。どうしてそういうことが起こりうるのかについてはスラドの過去記事を参照 [srad.jp]。
素直に暗号の専門家が設計したハッシュを使っておけ。
Re: (スコア:0)
MD5ハッシュとSHA1ハッシュの併記という意味で、混合ではないのでは?
そして記事についてだけど。
ハッシュについての話でブルートフォース攻撃って何よ?鍵関係ないじゃん。
Re: (スコア:0)
埋め込むバイト列を総当たりで試すのであれば、それだってブルートフォースです。
(ブルートフォースには力技程度の意味しかないです。)
00〜FF、0000〜FFFF、000000〜FFFFFF……ってな具合。
Re: (スコア:0)
とはいえブルートフォース攻撃よりはブルートフォース解析ないし総当り解析などと表現するほうが自然かなともおもったり。
Re: (スコア:0)
符号理論ではこういうのは全部「攻撃」と一括りにまとめています。
Re: (スコア:0)
まあ専門用語がいっぱんてきなようほうとずれているのはよくあること
Re: (スコア:0)
「ご褒美」が代表例かな?
Re: (スコア:0)
次の中からブルートフォース攻撃を選べ(5点)
1) 英数記号の組み合わせを生成し、ログインサーバに対して送信することで他人のアカウントでログインした。
2) パスワードがハッシュ値で記録されたアカウント情報を入手したので、英数記号の組み合わせを生成し、記録されているハッシュ値と同じになる値を見つけた。
2-1) そのようにして見つけたパスワードを使用して、他人のアカウントでログインした。
3) 取得したZIPファイルがパスワードで暗号化されていたので、英数記号の組み合わせを生成して解読した。
(パスワードが正しいことの判定は、復号後のファイルの
Re: (スコア:0)
8) アームが弱いので台パンした
Re: (スコア:0)
MD5とSHA-1の両方を合わせた実例。
https://roastingbugs.blogspot.jp/2017/03/eat-more-hashes.html [blogspot.jp]
弱い者同士を組み合わせたところでほとんど意味はない。
Re: (スコア:0)
ブレーンテキストなら改変は難しいってことか!
Re: (スコア:0)
Brain text?
Re: (スコア:0)
ある程度の長さのコメントブロック /* */ があれば
0x00〜0xFFまでなんでも入れられるし、*/ というシーケンスさえ出ないように
気をつければいいのでわりとハードルは低いかもしれない
Re: (スコア:0)
そもそもデモにPDFを使うのはMD5コリジョンのときにも行われていた技法で、別に目新しくない。