イランからGoogleへのSSL通信が傍受されていた疑い。CAから発行された偽証明書が原因

2011/8/31-1

多くのユーザがSSL通信(https)の中身を傍受されていた可能性があるようです。 今回、この問題が報告されたのはイラン国内からのGoogleへの通信を行った場合です。 約2ヶ月間にわたってイラン国内からのSSL通信で、検索結果、Gmailに含まれるメールの中身、その他情報が傍受されていたかも知れません。

傍受の手法

本来、暗号化されたSSL通信の傍受は困難です。

今回利用された方法はMan-In-The-Middleという一般的な方法です。 SSLで暗号化された中身を途中経路で復号するのは非常に困難ですが、プロクシとして間に入ればSSLで暗号化された通信も傍受が可能です。

ただし、このMan-In-The-Middleを防ぐ方法がSSLには備わっています。 CA(Certificate Authorities)からの情報を基に、通信相手の証明書が正しいかどうかをユーザが判断するというものです。 Man-In-The-Middle攻撃をする機器は、正しい証明書ではなく、本来表示されるべきではない正しくない証明書を使ってSSLコネクションを張るため、ユーザ側で異変に気がつく事が可能です。

今回の問題は、証明書を証明する役割であるRoot CAが偽の証明書を発行していたというものです。 DigiNotar Root CAが「これがGoogleの証明書です」と証明していた筈の証明書が偽物でした。 ブラウザは、信頼しているRoot CAが証明している証明書だったので、警告を出しませんでした。 結果、多くのユーザが全く気がつかずにSSL通信の中身を傍受されていた可能性があります。

余談ですが、このような手法を使って、社内ネットワークからのSSL通信の内容を監視するために、同じ手法を扱えるUTM(Unified Threat Management)製品もあります(その機能を使うには偽証明書を受け入れる設定を管理者が社内機器に設定してまわります)。

問題発覚の経緯

この問題は、Chromeの中にGoogleの証明書に関する情報がハードエンコーディングされていて、疑わしいCAが発行する偽証明書を検知すると警告が出るようになっていたためです。 Chromeが発する警告を見たユーザがGoogleのHelp forumで質問をしたことで問題が発覚しました。

対策

Firefoxを管理するMozilla Foundationは、原因となったDigiNotar Root CAの削除を勧めています。

「環境設定→詳細 → 暗号化→証明書を表示→認証局証明書→DigiNotarのDigiNotar Root CAとある部分を選択→削除ボタンクリック」です。

以下のように「認証局(CA)の証明書を削除すると、その認証局により発行された全ての証明書が信頼されなくなります」と出ますが、「OK」とすると削除されます。

感想

こういうのって、Chromeが無かったら気がつかなかったのかも知れないと思うと怖いですね。 というか、Chrome内にGoogleの証明書に関連する情報が入っていて発覚したわけですが、Google以外のサイトへのMan-In-The-Middle攻撃って行われていたりするんですかね? 結構象徴的な事件になりそうなニュースだと思いました。

最近のエントリ

過去記事

過去記事一覧

IPv6基礎検定

YouTubeチャンネルやってます!