sha-1
md5
certificates

MD5コリジョンでインチキ認証局は作れる(ネットにとっては悪い報せ)

次の記事

重要なのはフォロワーの数ではない。何回つぶやきが転送されたかだ。

scene from Sneakers

世界のハッカーが集う毎年恒例「第25回カオス コミュニケーション会議(CCC)」で本日(米国時間12/30)、MD5アルゴリズムへの衝突攻撃を使ってインチキ認証局(CA)を作ったプロセスを研究者たちが開陳する。これは大ニュースなので、このまま読み進めてね。

サイトにHTTPS経由でセキュアな環境で接続すると、サーバーからこちらのコンピュータに公開鍵証明書が送られてくる。この証明書には接続先のサイトのID認証に使えるデジタル署名も含まれている。証明書には認証局(CA)の“署名”が入っており、このCAがいわば信用の中継ぎの役割りを果たしている。つまり、あるCAが信用できるなら、そのCAが署名した証明書も信用できる、というわけだ。 ところが、CAは誰でも作ることができるので、大体のブラウザでは評価の高い信頼できるCAをリストにして持っている。コンピュータがサーバーから証明書を取得すると、ブラウザがその発行元のCAが信頼できる相手かどうかチェックし、信頼できるCAならブラウザも「この証明書は信用して良し」と判断する。

ハイテク業界のものはなんでもそうだが、この認証局(CA)が使う公開鍵暗号も進化しており、MD5のアルゴリズムを使って証明書のデジタル署名を処理するCAもある。MD5は前々から衝突攻撃(コリジョンアタック)に対し脆弱なことで知られてきたが、CAを運用するのはかなり複雑な作業なので、その背後のエンティティ(実体・存在・団体)も変化のスピードは遅い。

研究者たちはMD5のアルゴリズムをPlayStation 3のシステム200台で攻撃し、傍目には既知の信頼のあるCAのように見えるニセ認証局(CA)を作ることに成功した。これは何を意味するのか? 連中の手にかかるとwww.amazon.comの証明書も作れちゃう、ということだ。そしてニセ証明書を提示されると、貴方のブラウザはこれを本物の証明書として受け入れてしまう。 しかもニセ証明書のデジタル署名は、定評のあるCAが発行した署名のようにリストに出るため、貴方のブラウザも嬉々としてこれを受け入れ、(SSLサイトの目印の)南京錠のアイコンを頼もしげに表示するのである。

rouge CA attack diagram

OK。では、これがどうみんなに影響を与えるんだろう? 仮にこの研究成果を悪玉の工作員がコピーしたら、それこそ世界中のブラウザが信用する証明書をいくらでも好きなだけ発行できることになる。それだけでもダメージは充分という気がするが、この攻撃にさらに洗練されたDNS攻撃が組み合わさると、もうもうもう誰もまさか自分が騙されてるとは夢にも思えないぐらい、検出困難となる。ブラウザはこちらに「取引先銀行.comにいますよ」と報告してくる。「HTTPSを使って接続を保護してます」、「HTTPS接続で使ってるSSL認証は本当に取引先銀行.comのものですよ」と、報告がくるのだ。確かに、これだけの攻撃をやるとなると現状では膨大なレベルの労力が必要だし、その割には実入りは限られてそうだ。なので、平均的なネット利用者の身に火の粉が降りかかってくる類いのことではないとは思うが、それでもやはり注意を怠れない懸念材料だ。

この攻撃アウトラインを読むと、「最適化すればこの攻撃は、Amazon EC2に$2000も払って1日で決行できるようなものだ」と書かれている。有難いことに研究者たちは今後も実践の具体的な情報について開示する気はないようだ。それは頼もしい限りだが、どこに悪巧みの連中がいて学術研究とは程遠い目的でこの研究成果とそっくり同じことを試みるか知れたものではない。

このPDFも結論のところでは「パニックする必要はない。インターネットが完全に壊れたわけではないのだ」と述べ、「影響を受けたCAはSHA-1に乗り換え中だ」と保証している。が、SHA-1もある種の攻撃には弱いと思われているので、脆弱なCAはSHA-2かSHA-3に一気に乗り換えるのが得策かもしれない。

最低限心がけておくべきこと: 毎度のことだが、普段から自分のブラウジング習慣をよく認識し、胡散臭いルック&フィールのものに自分のアカウント名やパスワードは決して渡さないこと。 万が一フィッシング攻撃で騙されても自分のオンライン王国の鍵だけは詐欺師の手に渡らぬよう、サイトごとに別々のパスワードを使うことも、気をつけておきたいポイントだ。

Link: 25C3: MD5 considered harmful today
Via: ZDnet

(執筆:Scott Merrill)

[原文へ]

(翻訳:satomi)