2014年4月8日火曜日

OpenSSLの脆弱性 への緊急対応 (1.0.1gへのアップデート : CentOS6.5)

OpenSSLの重大バグが発覚。インターネットの大部分に影響の可能性

以下、引用
セキュリティー研究者らが “Heartbleed“と呼ぶそのバグを悪用すると、
過去2年以内のあらゆるバージョンのOpenSSLが走るシステムで、システムメモリー上にある大量のデータを暴露することが可能だ。

問題のバグは、OpenSSLの “heartbeat” という機能の実装に存在する。そこから “Heartbleed” と名付けられた。

このバグは、OpenSSLに2年以上存在していたが(2011年12月以来、OpenSSL 1.0.1~1.0.1f)、今日初めて発見され公表された。
さらに悪いことには、このバグを悪用してもその痕跡はログに残らないようだ。
つまり、システム管理者は自分のサーバーが侵入されたかどうかを知る術がない。されたと仮定するほかはない。

元記事
IPA OpenSSL の脆弱性対策について(CVE-2014-0160)
IT media OpenSSLに脆弱性、クライアントやサーバにメモリ露呈の恐れ


これは大変ですね。

Can attacker access only 64k of the memory?

There is no total of 64 kilobytes limitation to the attack, that limit applies only to a single heartbeat.
Attacker can either keep reconnecting or during an active TLS connection keep requesting arbitrary
number of 64 kilobyte chunks of memory content until enough secrets are revealed.

1回あたりは64KBのデータしか取れないようですが、繰り返し続けることでデータも盗り続けられるとの事です。

影響範囲は、(Affected 1.0.1f, 1.0.1e, 1.0.1d, 1.0.1c, 1.0.1b, 1.0.1a, 1.0.1) 1.0.2-beta, 1.0.2-beta1

公式Fixed in OpenSSL 1.0.1gが既に公開済みとなっています。
というか、Heartbleedとか名前かっこいい……。中二心がくすぐったい。

以下、CentOS6.5で対応したログです。


openssl-1.0.1gのインストール

現在のバージョン確認

# openssl
OpenSSL> version
OpenSSL 1.0.1e-fips 11 Feb 2013

最新版のインストール

# cd /usr/local/src/

# wget https://www.openssl.org/source/openssl-1.0.1g.tar.gz

# tar -xzf openssl-1.0.1g.tar.gz

# cd ./openssl-1.0.1g

# ./config --prefix=/usr --openssldir=/etc/ssl --libdir=lib shared zlib-dynamic

# make

# make install 

最新版インストール後のバージョン確認

# openssl
OpenSSL> version
OpenSSL 1.0.1g 7 Apr 2014

あとは、リポジトリのファイルが最新になるのを待ちましょう。(・ω・´)


脆弱性のチェックツール

チェックツールのインストールと使用方法について。

インストール

# wget http://gobuild.io/github.com/titanous/heartbleeder/master/linux/386 -O output.zip

# unzip output.zip

# ls
heartbleeder LICENSE README.md

使い方

# ./heartbleeder www.fu*itv.co.jp
INSECURE - www.fu*itv.co.jp:443 has the heartbeat extension enabled and is vulnerable

あああああ。 フ○テレビさん ><;

(現在は修正済みです。[does not have the heartbeat extension enabled])