List of collision - Baldanders.info
tag:Baldanders.info,2007-09-09:/tags
2007-09-09T09:00:00+00:00
バルトアンデルスは連続的な怪物,時間の怪物である。(ホルヘ・ルイス・ボルヘス 『幻獣辞典』より)
https://baldanders.info/images/avatar.jpg
https://baldanders.info/images/avatar.jpg
“SHA-1 Collision Search Graz”
tag:Baldanders.info,2007-09-09:/blog/000347/
2007-09-09T09:00:00+00:00
2007-09-09T09:00:00+00:00
「計算機暗号屋日記」の記事で知ったのですが,“SHA-1 Collision Search Graz”というのがあるようです。(追記あり)
Spiegel
/profile/
<p>
<a href="http://flu.if0.org/~maro/j/diary/0708.html#30">「計算機暗号屋日記」の記事</a>で知ったのですが,
<a href="http://boinc.iaik.tugraz.at/sha1_coll_search/">“SHA-1 Collision Search Graz”</a>
というのがあるようです。
<a href="http://boinc.berkeley.edu/">BOINC</a> ベースの分散コンピューティングプロジェクトということで<a href="http://boinc.iaik.tugraz.at/view_profile.php?userid=2469">私も早速参加</a>しました。
</p><p>
ハッシュ関数である SHA-1 のアルゴリズム上の欠陥により,
ハッシュ値が衝突する可能性が考えられているよりもずっと高いと言われていることは<a href="https://baldanders.info/blog/000204/">以前書きました</a>が,
<a href="http://boinc.iaik.tugraz.at/sha1_coll_search/">“SHA-1 Collision Search Graz”</a> はこの問題の実証実験という位置付けのようです。
暗号技術に関心のある方,
計算機パワーに余裕のある方,
このプロジェクトのために余分に電気代を払ってもいいという方はぜひご参加ください。
<a href="http://boinc.berkeley.edu/">BOINC</a> は複数の分散コンピューティング・プロジェクトと共存できます。
詳しくは <a href="http://spiegel.vox.com/library/posts/tags/boinc/">Vox で書いた記事</a>をどうぞ。
</p>
<p>
(追記 9/15)
</p><p>
いつの間にか URL が変わってました。
現在は以下の URL で行われています。
</p><ul>
<li><a href="http://boinc.iaik.tugraz.at/sha1_coll_search/">http://boinc.iaik.tugraz.at/sha1_coll_search/</a></li>
<ul>
</ul></ul>
APOP 認証の脆弱性について
tag:Baldanders.info,2007-04-21:/blog/000319/
2007-04-21T09:00:00+00:00
2007-04-21T09:00:00+00:00
今更だけど覚え書きとして書いておく。(4/22 一部修正)
Spiegel
/profile/
<p>
今更だけど覚え書きとして書いておく。
今週 IPA/ISEC から APOP の脆弱性に関する注意喚起が出た。
(4/30 一部訂正)
</p><ul>
<li><a href="http://www.ipa.go.jp/security/vuln/200704_APOP.html">APOP(エーポップ)方式におけるセキュリティ上の弱点(脆弱性)の注意喚起について</a></li>
<li><a href="http://www.ipa.go.jp/security/vuln/documents/2007/JVN_19445002.html">JVN#19445002 APOP におけるパスワード漏えいの脆弱性</a></li>
</ul><p>
IPA/ISEC および JVN の解説は簡潔すぎて要領を得ないので,以下のページを参考にするとよい。
</p><ul>
<li><a href="http://fse2007.uni.lu/slides/APOP.pdf">Message Freedom in MD4 and MD5 Collisions: Application to APOP</a></li>
<li><a href="http://cryptology.cocolog-nifty.com/blog/2007/04/apop.html">APOP</a></li>
<li><a href="http://oku.edu.mie-u.ac.jp/~okumura/blog/node/1413">APOP Broken?</a></li>
</ul><p>
注意しなければならないのは,
これはあくまでメール(POP)サーバへアクセスする際の認証プロトコルの問題であり,
メール本文が盗み見されたり改竄されたりといった問題とは無関係ということだ。
っていうか,
よく言われるように電子メールは郵便で言えば葉書と同じようなものであり,
第三者が本文を覗き見したり改竄することは以前から可能である
(たとえ MUA-MTA 間の通信を暗号化しても MTA-MTA 間は平文のまま流通する)。
それをリスクと感じるなら PGP/MIME や S/MIME 等でメール本文を署名・暗号化する必要がある。
</p><p>
さて,
今回の手法は「Man-in-the-middle 攻撃」と呼ばれるものの一種。
ユーザと POP サーバの間に割り込んで(ユーザから見て)サーバになりすます。
そうして APOP のやり取りを記録しパスワードの一部を割り出すわけだ。
パスワードの一部といっても最大31文字まで割り出せるそうなので,
ほとんどの人は完全なパスワードをぶっこ抜かれてしまうのではないだろうか。
</p><p>
何故 APOP が狙われているかというと,おそらく3つポイントがある。
</p><ul>
<li>APOP がセキュアな MAC (Message Authentication Code)ではない。</li>
<li>APOP で使われる MD5 (ハッシュ関数の一種)はいくつかの攻略法が発見されていて既に危殆化している。
(ハッシュ関数の危殆化の問題については<a href="https://baldanders.info/blog/000204/">拙文</a>を参照のこと)</li>
<li>アルゴリズムの危殆化が考慮されておらず MD5 以外の選択肢がない。</li>
</ul><p>
多くの人は POP 認証を自動化しているはずで,
全く気付かないうちにパスワード情報をぶっこ抜かれている可能性もある。
この攻撃によってパスワードを知られてしまうことによりメールサーバへの不正アクセスを許してしまうのはもちろんだが
(POP 認証と SMTP 認証では同じパスワードになっていることが多いが,
そうすると取得したパスワードを使って spam をばら撒くこともできそうだ),
そのパスワードを他のサービスでも使っている場合,
まとめて侵入を許してしまうことにもなりかねない。
これは<a href="http://twitter.g.hatena.ne.jp/worris/20070417">「Twitterとソーシャルハッキング」</a>で書かれているような話と構図としては同じで,
いわゆる「クラスブレイク」が発生している状況である。
</p><p>
ここまでが APOP の脆弱性によって予想される脅威(ハザード)。
しかし私たちが知りたいのは脅威ではなくリスクだ。
<a href="http://www.ipa.go.jp/security/vuln/documents/2007/JVN_19445002.html">JVN のレポート</a>によると,
<a href="https://baldanders.info/blog/000290/">CVSS</a> の基本値は 4.0 でそれほど高くない。
現状値や環境値は状況によって違うと思うので各自で確かめて欲しいが
(一応 <a href="https://baldanders.info/spiegel/archive/cvss/cvss.html">JavaScript によるデモ</a>がある),
そんなに酷い値にはならないと思う。
これは Man-in-the-middle 攻撃自体の実現性がそれほど高くないからだと思う
(Base Metrics の Access Complexity も high だもんな)。
とはいえ放置できるほど軽微でもないので,
ユーザやメールサーバの管理者(ISP を含む)は何らかの手を打つ必要がある。
</p><p>
APOP 自体は標準のプロトコルであり,
これを変更することはコストがかかりすぎる。
MUA 側でできる手っ取り早い(ただし消極的な)対応としては,
送られてくるチャレンジコードをチェックしバイナリ値を含む場合には認証を中断するというものだ。
いっそ POP を捨てて IMAP にすれば CRAM-MD5 等の認証プロトコルが使える
(CRAM-MD5 では HMAC を使う)。
可能であればこういった方法に切り替える手もあるだろう。
</p><p>
IPA/ISEC のレポートでは POP over SSL や Web メールを利用する方法が紹介されている。
SSL/TLS で通信を暗号化した上で認証を行うというわけだ。
しかし,
個人的な印象では(Web メールはともかく) SSL/TLS をメールサーバにアクセスするためだけに使うには高価すぎる気がする。
現在の SSL/TLS は X.509 ベースの PKI を構築している。
X.509 は多対多または1対多での証明には向いているが(例えば Web),
1対1の証明に使うにはコスト(特にランニングコスト)がかかりすぎる。
<a href="http://takagi-hiromitsu.jp/diary/20070419.html#p01">「APOP終焉で「POP over オレオレSSL」の撲滅運動が可能に」</a>では
</p><blockquote>
「それにしても、上のオレオレ事業者たちは、なぜ普通にサーバ証明書を買わないのだろうか?」
</blockquote><p>
と書かれているが,
そんなのは簡単な話で,
メールサーバだけのために証明書を調達する(ランニング)コストに比べて,
(それによってもたらされる)リスク・ベネフィットのバランスの改善が小さくて見合わないと思っているからだ。
<a href="http://spiegel.vox.com/library/book/6a00c22527e6f3604a00d09e60a0dabe2b.html">“Beyond Fear”</a> 風に言うなら「トレードオフ」による判断であり,
<a href="http://spiegel.vox.com/library/book/6a00c22527e6f3604a00c22529aeeef219.html">『環境リスク学』</a>風に言うなら「意思決定のためのリスク」評価だ。
この辺の状況は電子メールだけじゃなくて Jabber なんかでも同じ。
(4/30 訂正あり。文末の追記を参照)
</p><p>
(念のために書いておくが,
私はオレオレ証明書を容認しているわけではない。
SSL/TLS が X.509 ベースの PKI で運用されている限り,
規模の大小に関わらず,
オレオレ証明書を使うことは SSL/TLS の信用モデルを根底から覆す。
まぁ <a href="http://www.gnu.org/software/gnutls/openpgp.html">“GnuTLS OpenPGP key support”</a> が標準になれば状況も変わるかもしれないが)
</p><p>
しかし,
まぁ,
これが5年前くらいの話だったらもう少し真剣に考えるところだろうけど,
電子メールなんて今ほとんど使わないからなぁ。
プライベートなやり取りなら IM や mixi 等の SNS についてるメッセージ機能のほうが手軽で使いやすいし。
どうしてもメールのやり取りが必要なら Gmail 使えばいいし。
</p>
<p>
(4/30 追記)
</p><p>
Twitter で指摘されたのですが,
サーバ証明書でワイルドカードが使えることを完全に失念していました。
つまり<a href="http://www.sakura.ne.jp/">さくらインターネット</a>が提供しているような共用レンタルサーバでもそれほどコストをかけずにサーバ証明書を導入することは可能であるということですね。
指摘してくださった方に感謝&申し訳ないです。
</p>
<div class="hreview"><a class="item url" href="https://www.amazon.co.jp/exec/obidos/ASIN/4797322977/baldandersinf-22/"><img src="http://ec1.images-amazon.com/images/P/4797322977.09._SCMZZZZZZZ_V45380603_.jpg" alt="photo" class="photo"/></a><dl><dt class="fn"><a class="item url" href="https://www.amazon.co.jp/exec/obidos/ASIN/4797322977/baldandersinf-22/">暗号技術入門-秘密の国のアリス</a></dt><dd>結城 浩 </dd><dd>ソフトバンククリエイティブ 2003-09-30</dd><dd>評価<abbr class="rating" title="5"><img src="https://images-fe.ssl-images-amazon.com/images/G/01/detail/stars-5-0.gif" alt=""/></abbr> </dd></dl><p class="similar"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4797329734/baldandersinf-22/" target="_top"><img src="https://images-fe.ssl-images-amazon.com/images/P/4797329734.09._SCTHUMBZZZ_.jpg" alt="プログラマの数学"/></a> <a href="https://www.amazon.co.jp/exec/obidos/ASIN/4797319119/baldandersinf-22/" target="_top"><img src="https://images-fe.ssl-images-amazon.com/images/P/4797319119.09._SCTHUMBZZZ_.jpg" alt="暗号技術大全"/></a> <a href="https://www.amazon.co.jp/exec/obidos/ASIN/4756145485/baldandersinf-22/" target="_top"><img src="https://images-fe.ssl-images-amazon.com/images/P/4756145485.09._SCTHUMBZZZ_.jpg" alt="Winnyの技術"/></a> <a href="https://www.amazon.co.jp/exec/obidos/ASIN/4839919844/baldandersinf-22/" target="_top"><img src="https://images-fe.ssl-images-amazon.com/images/P/4839919844.09._SCTHUMBZZZ_.jpg" alt="30日でできる! OS自作入門"/></a> <a href="https://www.amazon.co.jp/exec/obidos/ASIN/4873112885/baldandersinf-22/" target="_top"><img src="https://images-fe.ssl-images-amazon.com/images/P/4873112885.09._SCTHUMBZZZ_.jpg" alt="Binary Hacks ―ハッカー秘伝のテクニック100選"/></a> </p><p class="gtools">by <a href="http://www.goodpic.com/mt/aws/index.html">G-Tools</a> , <abbr class="dtreviewed" title="2007/04/21">2007/04/21</abbr></p></div>
ハッシュ値の衝突問題
tag:Baldanders.info,2004-08-19:/blog/000048/
2004-08-19T05:14:30+00:00
2004-08-19T05:14:30+00:00
ハッシュ値の衝突問題
Spiegel
/profile/
<p>
(この記事は<a href="http://spiegel.cocolog-nifty.com/">「もっと辺境から戯れ言」</a>に投稿した記事からの転載です)
</p><p>
<a href="http://tb.japan.cnet.com/tb.php/20070525">「やばいかも」</a>の続き。
追加の情報と併せてもう一度関連記事を挙げておきます。
</p><ul>
<li><a href="http://eprint.iacr.org/2004/199/">Collisions for Hash Functions MD4, MD5, HAVAL-128 and RIPEMD</a> (差し替え版が出ているようです)</li>
<li><a href="http://japan.cnet.com/news/sec/story/0,2000050480,20070525,00.htm">暗号アルゴリズムに重大な欠陥発見の報告相次ぐ</a></li>
<li><a href="http://slashdot.jp/article.pl?sid=04/08/18/0257220">SHA-0、MD5、 MD4にコリジョン発見、reduced SHA-1も</a></li>
<li><a href="http://www.rtfm.com/movabletype/">「Educated Guesswork」</a>にも情報あり</li>
<li><a href="http://www.hyuki.com/diary/dia0408.html#i19_03">「結城浩の日記」にも検証記事</a>があります</li>
</ul><p>
(以降、<a href="https://baldanders.info/spiegel/archive/CollisionsForHashFunctions.html">最新情報はこちらのページでフォロー</a>してます)
</p><p>
e-Print 版は速報性が優先されているせいか間違いが結構あるようですね。
詳細な検証はこれからのようです。
</p><p>
MD4/5 とか SHA-0/1/2 などは「一方向ハッシュ関数」とか「メッセージ要約関数」などと呼ばれていて暗号技術、特に電子署名において重要な役割を果たします。
一方向ハッシュ関数では任意のデータを小さなデータ列(MD5 では 128bit、 SHA-1 や RIPEMD160 では 160bit など)に「要約」します。
</p><p>
「要約」されたデータ(「ハッシュ値」と呼ばれます)から元のデータを復元することはできません。
またデータを「要約」する際、
異なる元データから同じハッシュ値が生成されないことが要求されます。(異なる元データから同じハッシュ値が生成されてしまうことを「衝突(Collision)」と呼びます)
</p><p>
しかし数学的には「衝突」が起きる確率をゼロにすることはできません。
したがって「衝突」が起きる確率が「実用上ほぼ」ゼロとなるロジックを検討することになります。
こうしてできたのが MD4/5 や SHA-0/1/2 などのアルゴリズムです。
</p><p>
今回の論文で指摘されているのは、
同じハッシュ値を持つデータ群を簡単に生成できてしまう方法です。
頻繁に「衝突」を起こせるということは暗号技術の要件(「機密性」「完全性」「認証」「否認防止」)のうちのひとつ「完全性」を損なうことになります。
また「完全性」は「認証」「否認防止」の要件のひとつになっているため、
「認証」「否認防止」も損なわれることになります。
</p><p>
ハッシュ値の衝突問題がどの程度のインパクトを与えるのか、
また既存のアルゴリズムに対して回避策があるのかないのかといった点は今後の専門家による検証に委ねられることになります。
今後も注目して情報を追いかけていく必要がありそうです。
</p>
<div id="a000048more"><div id="more">
<p>
(8/24 追記)
</p><p>
その後の記事をいくつか見る限り(<a href="https://baldanders.info/spiegel/archive/CollisionsForHashFunctions.html">CollisionsForHashFunctions</a> 参照)、
現行で使われている一方向ハッシュ関数のアルゴリズムに今すぐインパクトを与えるものではないようです。
しかし引き続いて情報を追いかけていく必要がありそうです。
</p><p>
日本では <a href="http://www.ipa.go.jp/security/enc/CRYPTREC/index.html">CRYPTREC</a> による暗号技術の評価レポートがあります。
このレポートによると MD5 はすでに推奨されていません(MD5 には今回の事例以外にもいくつかの脆弱性が発見されています)。
またハッシュ値の bit 長についても
「新たな電子政府用システムを構築する場合、より長いハッシュ値のものが使用できるのであれば、256ビット以上のハッシュ関数を選択することが望ましい」
とあります。(実際にそういう設計になっているかどうかは怪しいですが)
</p><p>
ちなみに <a href="http://www.cosic.esat.kuleuven.ac.be/nessie/">NESSIE (New European Schemes for Signatures, Integrity, and Encryption)</a> では SHA-1 は既にリストから外れています。
</p><p>
なお暗号および暗号技術については、
まず結城浩さんの<a href="http://www.hyuki.com/cr/index.html">『暗号技術入門 ―― 秘密の国のアリス』</a>を読まれることをお薦めします。
</p><blockquote>
<div class="bk1-box" style="margin-bottom:0px;"><div class="bk1-image" style="float:left;"><a href="http://www.bk1.co.jp/product/2347782/p-spiegel43226" name="bk1link" title="オンライン書店ビーケーワン:暗号技術入門" target="_blank"><img src="http://img.bk1.co.jp/bookimages/0234/023477820000.jpg" alt="暗号技術入門" style="border: thin outset #EEEEEE"/></a></div><div class="bk1-info" style="float:left;margin-left:15px;line-height:120%"><div class="bk1-name" style="margin-bottom:10px;line-height:120%"><a href="http://www.bk1.co.jp/product/2347782/p-spiegel43226" name="bk1link" title="オンライン書店ビーケーワン:暗号技術入門" target="_blank">暗号技術入門</a><div class="bk1-powered-date" style="font-size:7pt;margin-top:5px;font-family:verdana;line-height:120%">posted with <a href="http://breeder.bk1.jp/cgi-bin/link/create.cgi?bibid=2347782&partnerid=p-spiegel43226" title="簡単リンクくん" target="_blank">簡単リンクくん</a> at 2006. 7. 4</div></div><div class="bk1-detail">結城 浩著<br/>ソフトバンクパブリッシング (2003.9)<br/>通常2-3日以内に発送します。<br/></div><div class="bk1-link" style="margin-top: 5px"><a href="http://www.bk1.co.jp/product/2347782/p-spiegel43226" name="bk1link" title="オンライン書店ビーケーワン" target="_blank">オンライン書店ビーケーワンで詳細を見る</a></div></div><div class="bk1-footer" style="clear: left"></div></div>
</blockquote>
</div></div>