piyolog

piyokangoの備忘録です。セキュリティの出来事を中心にまとめています。このサイトはGoogle Analyticsを利用しています。

OpenSSLの脆弱性CVE-2016-800(DROWN)やCVE-2016-0702(CacheBleed)についてまとめてみた

2016年3月1日(現地時間)、OpenSSL プロジェクトは脆弱性の愛称「DROWN」や「CacheBleed」を含む8件の脆弱性情報を公開し、これら影響を受けるものの修正を行った最新版をリリースしました。ここでは関連情報をまとめます。

脆弱性情報概要

2016年3月1日公開のパッチで修正された脆弱性
CVE Severity Title Fixed
CVE-2016-0800 High Cross-protocol attack on TLS using SSLv2 (DROWN) 1.0.1s, 1.0.2g
CVE-2016-0705 Low Double-free in DSA cod 1.0.1s, 1.0.2g
CVE-2016-0798 Low Memory leak in SRP database lookups 1.0.1s, 1.0.2g
CVE-2016-0797 Low BN_hex2bn/BN_dec2bn NULL pointer deref/heap corruption 1.0.1s, 1.0.2g
CVE-2016-0799 Low Fix memory issues in BIO_*printf functions 1.0.1s, 1.0.2g
CVE-2016-0702 Low Side channel attack on modular exponentiation(CacheBleed) 1.0.1s, 1.0.2g
CVE-2016-0703 High Divide-and-conquer session key recovery in SSLv2 1.0.2a, 1.0.1m, 1.0.0r, 0.9.8zf
CVE-2016-0704 Moderate Bleichenbacher oracle in SSLv2 1.0.2a, 1.0.1m, 1.0.0r, 0.9.8zf
  • CVE-2016-0703/0704は2015年3月15日リリース版でCVE-2015-0293対応によるリファクタリングで修正されていた。
  • 0.9.8系、1.0.0系は2015年12月31日でサポートが終了しており、もし影響を受ける場合も修正版はリリースされない。

CVE-2016-0800 DROWN Attackに関する情報

  • DROWNの由来:Decrypting RSA with Obsolete and Weakened eNcryptionの頭文字をとったもの。
  • CVSS(v2):7.1(Base)/ AV:N/AC:H/Au:N/C:C/I:C/A:N via CERT
  • 脆弱性ロゴ:(CC0)あり
発見者による情報


SSLv2(SSLv2使)




CVE-2016-0800OpenSSLSSLv2


Microsoft IIS (IIS7SSLv2)

NSS (20123.13SSLv2)

Apache

Postfix

nginx



ベンダ アドバイザリ等
Redhat DROWN - Cross-protocol attack on TLS using SSLv2 - CVE-2016-0800
Akamai Akamai and the DROWN Vulnerability
Amazon CVE-2016-0800 Advisory
CloudFlare the DROWN Attack and CloudFlare
Cisco Multiple Vulnerabilities in OpenSSL Affecting Cisco Products: March 2016
攻撃による影響
  • 秘匿された通信内容が盗聴される恐れ。

CVE-2016-0702 CacheBleedに関する情報

攻撃前提条件
  • OpenSSLの処理を行った同一CPU上で実行している
攻撃による影響
  • 同一CPU上の処理プロセスが復元される恐れ。(例えばRSA秘密鍵取得が可能な模様)

OpenSSLの脆弱性影響範囲

DROWN

OpenSSLCVE-2016-0703/07042015315


OpenSSL 1.0.1r

OpenSSL 1.0.2f

CacheBleed

次のOpenSSLが影響を受ける。

  • OpenSSL 1.0.1r、およびそれ以前
  • OpenSSL 1.0.2f、およびそれ以前

発見者は0.9.7h以降の全てのバージョンが影響を受ける可能性を指摘している。

OpenSSL: Our attack code has been tested with OpenSSL 1.0.2f. We believe that all OpenSSL versions from 0.9.7h up to and including versions 1.0.1r and 1.0.2f are vulnerable.

OpenSSLのバージョン確認方法

次のコマンドを実行する。

openssl version

DROWNの影響調査

20162



Alexa Top 10000
LibreSSLへの影響

今回公開されたOpenSSLのバグに関して、LibreSSLは影響を受けないとアナウンスしている。

ただし、CacheBleedの公開情報にはLibreSSLも影響を受ける記述が存在する。

LibreSSL: We have verified that version 2.3.1 is vulnerable. We believe that all LibreSSL versions, up to and including 2.1.9, 2.2.5 and 2.3.1 are vulnerable.

対策

OpenSSLを最新版へ更新する。

  • OpenSSL 1.0.1系 → OpenSSL 1.0.1s
  • OpenSSL 1.0.2系 → OpenSSL 1.0.2g
回避策

CVE-2016-0800(DROWN)の回避策として、SSLv2の無効化が可能かを検討する。