2014-06-05
OpenSSLの脆弱性CCS Injection(CVE-2014-0224)の攻撃が行われる恐れがあるパターンをマトリックス化してみた。
脆弱性まとめ | |
lepidum社の菊池氏がOpenSSLの実装に脆弱性があることを発見しました。この脆弱性はChangeCipherSpecメッセージの処理に欠陥があるもので、悪用された場合に暗号通信の情報が漏えいする可能性があると同社公開情報では説明されています。
lepidum社 公開情報
当社で発見し報告をしたOpenSSLの脆弱性(CVE-2014-0224 )が公開されました。早急な更新が望まれる内容だと考えています。 #ccsinjection #OpenSSL 概要はこちらのページをご参照下さい。http://t.co/bhY7GpLZ2j
— lepidum (@lepidum) 2014, 6月 5
- CCS Injection脆弱性(CVE-2014-0224)の概要・対策・発見経緯について
- CCS Injection Vulnerability
- CCS Injection脆弱性(CVE-2014-0224)発見の経緯についての紹介
影響を受けるOpenSSLのバージョン
どのバージョンが影響を受けますか?
以下のバージョンにバグが存在する。
1.0.1から1.0.1g
1.0.0から1.0.0l
0.9.8y以前の全て
http://ccsinjection.lepidum.co.jp/ja.html
脆弱性識別番号
注意喚起・脆弱性関連情報
- OpenSSL Releases Security Advisory | US-CERT
- OpenSSL Security Advisory [05 Jun 2014] SSL/TLS MITM vulnerability (CVE-2014-0224)
- Vulnerability Note VU#978508 OpenSSL is vulnerable to a man-in-the-middle attack
- JVN#61247051 OpenSSL における Change Cipher Spec メッセージの処理に脆弱性
- 「OpenSSL」における Change Cipher Spec メッセージ処理の脆弱性対策について(JVN#61247051)
Coqについて
攻撃が行われる恐れがあるパターン
lepidum社の公開情報では次のように説明がされています。
どのような攻撃が行われる恐れがありますか?
クライアントとサーバがともにバグが存在するバージョンで、サーバがバージョン1.0.1以降の場合に、通信の盗聴・改ざんを行う攻撃が行われる恐れがあります。 サーバだけがバグの存在するバージョンの場合は、クライアントの偽装を行う攻撃が行われる恐れがあります。
http://ccsinjection.lepidum.co.jp/ja.html
これをマトリックスに起こしてみました。間違っていたらご指摘頂けると嬉しいです。
なお、サーバー、クライアントいずれかがOpenSSL以外の製品であった場合にどのような影響を受けるかについては不明です。
気になる点:「クライアントの偽装を行う攻撃が行われる恐れ」=認証済セッションのハイジャック?
北河さんに教えていただいたのですが、CCS Injectionのリスクについて英語版の説明は次の通りとなっています。(日本語版の「クライアントの偽装を行う攻撃が行われる恐れ」に該当すると思われる箇所を赤字としました。)中間者攻撃が行われている状況でサーバーにCCS Injectionの脆弱性が残っていればクライアント側脆弱性有無に関係なく認証済のセッションをのっとることが可能と読めます。レピダム社公開情報では詳細は明らかとはなっていません。
Q. What are the risks?
A. Attackers can eavesdrop and make falsifications on your communication when both of a server and a client are vulnerable, and the OpenSSL version of the server is 1.0.1 or higher. Attackers can hijack the authenticated session, if the server is vulnerable (even if the client is not vulnerable).
http://ccsinjection.lepidum.co.jp/
6/6の#mozaicfmでCCS Injectionの報告者の方々を招いてポッドキャスト収録を予定されており、北河さんがこの記載について質問されています。
英語版のアドバイザリ http://t.co/xphpw91IDo では 「Attackers can hijack the authenticated session」とあり「クライアントの偽装」とはニュアンスがかなり違いますね。
— 北河拓士 KITAGAWA,Takuji (@kitagawa_takuji) 2014, 6月 6
CVE-2014-0224 チェックツールと思われるコード
CCS Injectionの脆弱性が存在するか確認するツールと思われるコードがGitで公開されています。piyokangoは未検証です。また、特別事情がない限りはインストールしたバージョンの確認を行えばよいと思います。
Test your client and server applications for CVE-2014-0224 with https://t.co/5XH9e1tDrn and https://t.co/XDm7lHSRdq
— Ramon de C Valle (@rcvalle) 2014, 6月 6
対象 | 公開先 | piyokango検証 |
---|---|---|
クライアント向け | ccsinjection_server.c | 未検証 |
サーバー向け | ccsinjection.c | 未検証 |
タイムライン(一部)
日付 | 出来事 |
---|---|
2014年4月22日 | lepidum社がJPCERT/CCへOpenSSLの脆弱性の報告。 |
2014年5月1日 | JPCERT/CCがOpenSSL Securityへ初回の連絡。 |
2014年5月2日 | JPCERT/CCがOpenSSL Securityへ詳細なレポートと再現方法を送付。 |
2014年5月9日 | OpenSSLが脆弱性を確認し、CVE-2014-0224を採番。 |
2014年5月13日 | OpenSSLが報告者と更新パッチやその他技術的な詳細について共有するため直接連絡。 |
2014年6月5日 | lepidum社がOpenSSLの脆弱性 CCS Injectionに関する情報を公開。 |
関連情報
- OpenSSLの新たな脆弱性 CCS Injection が発見される - Togetterまとめ
- OpenSSLの脆弱性(CVE-2014-0224)への対応方法(AWSサービス/OSごと) ※随時更新中 « サーバーワークス エンジニアブログ
謝辞
- @110_ さんよりチェックツールと思われる情報をいただきました。ありがとうございます。
- @yng_hrさんより攻撃を受ける恐れのパターンで「その他のケース」の可能性についてご指摘いただきました。ありがとうございます。
- @kitagawa_takujiさんより、英語版「クライアント偽装の攻撃が行われる恐れ」について情報をいただきました。ありがとうございます。