Heartbleed

今年4月、OpenSSLに発見されたCVE-2014-0160通称ハートブリード問題。
幸いにしてHeartbeat機能が未実装される前のレガシーなUbuntu 10.04ベースだった「自宅サーバ」や「さくらVPSな自前サーバ」は影響を受けないという事だったので、騒動を静観しつつ各方面の情報を整理してみたが、具体的に言うと
OpenSSL 1.0.1 から 1.0.1f および 1.0.2beta1 において Heartbeat メッセージの処理において境界チェックの問題があり、OpenSSL が動作しているマシンのメモリ情報を取得可能な状態にあった
という事で、「Heartbeat RequestのPayload lengthが実際の長さより大きかった場合のケアが不足していた」というお粗末なバグな雰囲気だ。
狙った情報がピンポイントで採れるわけでは無いものの「サーバーの秘密鍵やパスワード等が漏洩」する**“可能性がある”のは間違い無い事からそれなりに深刻な問題である事は否定しないが、それにしてもGW前に起こったセキュリティ アドバイザリ 2963983 – Internet Explorer の脆弱性により、リモートでコードが実行されると同様にマスメディアの騒ぎ方は甚だ不自然**な印象を受ける。
先週は**「CCS Injection脆弱性」**CVE-2014-0224が見つかった。OpenSSLのハンドシェーク中にChangeCipherSpecを受け付けてしまう事で「弱い鍵」を使用させるよう仕向けられ、暗号化通信の内容を第三者(=攻撃者)が読み取ったり、改ざんしたりする事が可能になるそうだ。
UbuntuUpdatesのPackage “openssl” (trusty 14.04)でチェックしたところ"Latest version:1.0.1f-1ubuntu2.2"で「対応済み」のようなのでひと安心。
16年もの長い間発見できなかった問題を発見したのは株式会社レピダムの菊池正史氏という事で、珍しく日本語による詳細な経緯も公開されているが、ハートブリード問題を受けて「OpenSSLのコードって実際のところ大丈夫なのかな?」と思ったのが発端だったとかなかなか興味深い。
「大丈夫?」という意味では2010年に1.0になったばかりのOpenSSLだが、1998年の0.9.1から15年以上(暗号技術の輸出規制もあって表面化していないが実際はそれ以前から)開発が続いている経緯としがらみからブラックボックスがあるのかもと思われるので、“よりセキュアな実装"を目指しているLibReSSLにも期待したい。
参照
@IT http://www.atmarkit.co.jp/
- 該当する場合はアップデートとサーバー証明書の再発行を:OpenSSL 1.0.1/1.0.2系に脆弱性、秘密鍵漏えいの恐れも 2014年4月11日
- チェック方法まとめ:OpenSSLの「Heartbleed」脆弱性は2年前から存在、「最悪のケースを想定して対処を」と専門家 2014年4月11日
- Heartbleed情報アップデート:国内でもHeartbleedを狙うパケットの増加を観測 2014年4月11日
- 前年比8倍、5億5200万件の個人情報が流出:大規模データ侵害からHeartbleedまで、シマンテックが脅威レポートを発表 2014年4月16日
- コードテストの重要性が浮き彫りに:発見企業が語る、Heartbleedの残した「教訓」 2014年4月21日
- セキュリティクラスター まとめのまとめ 2014年4月版:HeartbleedにStrutsにIE……脆弱性に振り回された1カ月 2014年5月12日
- 最初のリリースから16年間存在していた問題、修正版へのアップデートを推奨:OpenSSLに再び脆弱性、MITM攻撃につながる恐れ 2014年6月6日
UbuntuUpdates http://www.ubuntuupdates.org/
OpenSSL http://www.openssl.org/
- OpenSSL Security Advisory [07 Apr 2014] 2014年4月7日
- OpenSSL Security Advisory [05 Jun 2014] 2014年6月5日
- CVE-2014-0160 2014年4月7日
- CVE-2014-0224 2014年6月5日
The CERT Division http://www.cert.org/
- Vulnerability Note VU#720951 - OpenSSL TLS heartbeat extension read overflow discloses sensitive information 2014年4月7日
- Vulnerability Note VU#978508 - OpenSSL is vulnerable to a man-in-the-middle attack 2014年6月5日
Japan Vulnerability Notes http://jvn.jp/
- JVNVU#94401838: OpenSSL の heartbeat 拡張に情報漏えいの脆弱性 2014年4月8日
- JVN#61247051: OpenSSL における Change Cipher Spec メッセージの処理に脆弱性 2014年6月6日
IIJ Security Diary https://sect.iij.ad.jp/
- Heartbleed bug による秘密鍵漏洩の現実性について 2014年4月16日
- OpenSSL の Man-in-the-middle 攻撃可能な脆弱性の影響 2014年6月6日
@znz blog http://blog.n-z.jp/
- CVE-2014-0160 の OpenSSL の脆弱性対応 2014年4月8日
- CVE-2014-0160 での Cookie 漏洩 2014年4月9日
Heartbleed Bug http://heartbleed.com/
株式会社レピダム http://lepidum.co.jp/
LibReSSL http://www.libressl.org/
Wikipedia http://ja.wikipedia.org/wiki/