脆弱性
Heartbleed (CVE-2014-0160)
別称: CVE-2014-0160, OpenSSL heartbeat バグ
定義
2014 年に公表された OpenSSL の TLS heartbeat 拡張におけるバッファオーバーリード。1 リクエストあたり最大 64 KB のメモリを読み取られ、鍵やセッション、パスワードが漏えいした。
Heartbleed(CVE-2014-0160)は 2014 年 4 月に公表された、OpenSSL 1.0.1 〜 1.0.1f における TLS heartbeat メッセージ処理時の境界チェック漏れです。実際に送ったペイロードより大きいサイズを宣言した heartbeat を送ると、サーバーはその分の隣接メモリを返してしまい、正常な TLS の枠内で繰り返し・ほぼ痕跡なしに読み取れました。RSA 秘密鍵、セッション Cookie、認証情報、Web サーバー・VPN・組み込み機器のメール本文などが盗まれました。影響は世界規模で、緊急パッチ・鍵入れ替え・証明書失効を引き起こしました。修正は OpenSSL 1.0.1g 以降への更新で、侵害を前提として鍵交換とセッション無効化が必要です。
例
- 攻撃者が著名 SaaS の TLS 秘密鍵を取得し、収集した通信を復号する。
- 脆弱なサーバー上の認証済みユーザーのセッション Cookie を大量に窃取する。
関連用語
バッファオーバーフロー
メモリ安全性の欠陥で、確保済みバッファの末尾を超えて書き込みが行われ、隣接メモリが破壊されてしばしばコード実行を可能にする。
メモリ破壊
プログラムが意図したメモリ境界の外に書き込み、型安全性・制御フロー・データ整合性を損なうタイプの脆弱性を総称する用語。
TLS (Transport Layer Security)
TLS (Transport Layer Security) — definition coming soon.
CVE(共通脆弱性識別子)
公開された各ソフトウェア・ハードウェア脆弱性に一意の識別子を付与し、業界全体で曖昧さなく参照できるようにする公的カタログ。
既知の悪用された脆弱性(KEV)
実環境での悪用が CISA(米国)によって確認され、公開 KEV カタログに追加された CVE。米連邦機関に対する修正期限の対象となる。
完全前方秘匿性(PFS)
長期鍵が将来漏洩しても過去のセッション通信が復号されないことを保証するプロトコル特性。