« 中二病でも恋がしたい! 鎌掛小&ラッピング電車 | メイン | くずはモール SANZEN-HIROBA »

HeartBleed OpenSSL CVE-2014-0160を再現

OpenSSLの脆弱性 (HeartBleed)を自宅ラボで再現してみました。
本バグは世間を騒がせ、三菱UFJニコスで情報漏洩につながったりとなっていますが、いわゆるメモリ参照先の長さのチェックが漏れていたというよくある(それでもって影響の大きい)バグだそうです。
現用でOpenSSLを使っている場合は、至急 1.0.1-g 以降へアップグレードする必要があります。

上の画像らは、クライアント(Mac)からエクスプロイトコードで、OpenSSL1.0.1fを搭載したUbuntu12のwebサーバへ接続し、メモリ上のダンプを取得したところ。
今回用いたコードでは16384バイトずつサーバ上のメモリをダンプでき、何度も繰り返すことで実際にこの中に他のユーザのセッションIDが含まれているので、それを攻撃者が自分のブラウザに入れれば、セッションを乗っ取ることができてしまいます。(他人のアカウントとしてログインできてしまう)
原因は、TLSのextension 『HeartBeat』が、クライアントから通知されたLengthをそのまま鵜呑みにして、実際に返すべきLength長より長いと、返すべきパラメータより後ろのメモリ空間上の情報もクライアントへ返してしまう点にあるようです。

(なお、本記事はセキュリティ向上の為に記載しております。本記事の内容を悪用しないでください。)

トラックバック

このエントリーのトラックバックURL:
http://www.ddhost.jp/mt/mt-tb.cgi/903

About

2014年04月21日 00:51に投稿されたエントリーのページです。

ひとつ前の投稿は「中二病でも恋がしたい! 鎌掛小&ラッピング電車」です。

次の投稿は「くずはモール SANZEN-HIROBA」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。