Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 529

Heartbleed (CVE-2014-0160)

監修Cybersecurity entrepreneur & security researcher

Heartbleed (CVE-2014-0160) とは何ですか?

Heartbleed (CVE-2014-0160)2014 年に発覚した OpenSSL の TLS heartbeat 拡張におけるバッファオーバーリード。1 リクエストあたり最大 64 KB のプロセスメモリを読み取られ、鍵・セッション・パスワードが漏えいした。


2014 年 4 月に公表され、Google の Neel Mehta とフィンランドの Codenomicon 社が独立して発見した Heartbleed(CVE-2014-0160)は、OpenSSL 1.0.1 〜 1.0.1f の TLS/DTLS heartbeat 拡張(RFC 6520)における境界チェック漏れです。heartbeat リクエストはペイロードと長さフィールドを含みますが、脆弱なコードは攻撃者が指定した長さを実際のペイロードと突き合わせて検証せずに信頼したため、サーバーは隣接するヒープメモリを最大 64 KB まで memcpy で応答へコピーしてしまいました。各リクエストは新たな断片を漏えいさせ、しかも認証不要で、被害側にはログも残さず、ひっそりと実行されました。

露出したメモリには、しばしば RSA 秘密鍵、セッション Cookie、ユーザー名、パスワード、復号済みのメッセージ本文が含まれていました。実際のインシデントもすぐに続き、カナダ歳入庁では約 900 件の納税者の社会保険番号が失われ、Community Health Systems の侵害では脆弱な Juniper VPN アプライアンス経由で約 450 万件の患者記録が流出しました。2014 年当時は Perfect Forward Secrecy がまれだったため、秘密鍵を盗まれると、攻撃者は過去に収集した通信を復号できました。修正は翌日に OpenSSL 1.0.1g として提供され、長さを検証するようになりました。窃取が検知不能であったため、適切な対処にはすべての証明書と鍵のローテーション、および全セッションの無効化も必要でした。

flowchart TD
  A[攻撃者] -->|"Heartbeat: 1 バイトのペイロードで 64 KB と申告"| B[OpenSSL 1.0.1-1.0.1f]
  B --> C{長さをペイロードと<br/>突き合わせて検証?}
  C -->|"いいえ(脆弱)"| D["memcpy が隣接ヒープメモリを<br/>64 KB 読み取る"]
  D --> E[応答が RSA 鍵・セッション Cookie・<br/>パスワードを漏えい]
  E --> A
  C -->|"はい(1.0.1g+)"| F[応答は実際のペイロードのみ<br/>を返す]

  1. 01

    攻撃者が著名な SaaS の TLS 秘密鍵を取得し、収集済みの通信を復号する。

  2. 02

    脆弱なサーバーの認証済みユーザーのセッション Cookie を大量に窃取する。

よくある質問

Heartbleed (CVE-2014-0160) とは何ですか?

2014 年に発覚した OpenSSL の TLS heartbeat 拡張におけるバッファオーバーリード。1 リクエストあたり最大 64 KB のプロセスメモリを読み取られ、鍵・セッション・パスワードが漏えいした。 サイバーセキュリティの 脆弱性 カテゴリに属します。

Heartbleed (CVE-2014-0160) とはどういう意味ですか?

2014 年に発覚した OpenSSL の TLS heartbeat 拡張におけるバッファオーバーリード。1 リクエストあたり最大 64 KB のプロセスメモリを読み取られ、鍵・セッション・パスワードが漏えいした。

Heartbleed (CVE-2014-0160) からどのように防御しますか?

Heartbleed (CVE-2014-0160) に対する防御は通常、上記の定義で述べたとおり、技術的統制と運用上の実践を組み合わせます。

Heartbleed (CVE-2014-0160) の別名は何ですか?

一般的な別名: CVE-2014-0160, OpenSSL heartbeat バグ。

関連用語