OpenSSL 脆弱性

OpenSSLの脆弱性「HeartBleed」について

2017年11月4日

OpenSSLの脆弱性「HeartBleed」「CVE-2014-0160」の概要と原因について記載する。

TLSのHeartBeat機能の処理に問題があり、メモリ情報漏えいの危険性がある。
HeartBeatとは、サーバとクライアント間でヘルスチェックを行う機能であり、以下のように行われる。

1.クランアントから、サーバにハートビートメッセージを送る。
2.サーバはバッファ領域にpayload_lengh分のデータを保存する。
3.サーバからクライアントにハートビートを返すときに、バッファ領域のpayload_lengh分のデータを
ハートビートメッセージ内のpayloadバッファにコピーして返す。

原因
クライアントから送るpayload_lenghが、payloadバッファより大きいサイズである場合に、
本来のpayloadのためのバッファ領域を超えて、別のランダムなメモリ領域をコピーして送ってしまい、データ漏洩につながる。
★クライアントから要求された分のメモリ領域をあげようとしてしまう。

対策
payload_lenghの長さをチェックするようなコードが必要

CATEGORIES & TAGS

OpenSSL, 脆弱性,

Author:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

カテゴリー

むるし

フリーランスのインフラ系エンジニア。
備忘録で色々書いていきます。
お問い合わせは↓
mo-gyu@murci.net
LPIC303 Security
%d人のブロガーが「いいね」をつけました。