GMOインターネットグループの技術情報は新しいサイトに移管しています。 新しいサイトはこちら

社内レポート

2014年5月21日(水)

OpenSSLの脆弱性に関する解説と対応策

バグ”Heartbleed”について

2014年4月7日の米国時間午後、非常に深刻な脆弱性"Heartbleed"と呼ばれるバグがOpenSSL(OpenSSL 1.0.1 - 1.0.1f及びOpenSSL 1.0.2-beta - 1.0.2-beta1)に発見され公表されました。

OpenSSLは、非常に広く使用されているオープンソースの暗号化ライブラリです。NginxまたはApacheの利用者は高確率でOpenSSLを稼働させており、悪意のある第三者がウェブサーバのメモリからデータを取得することが可能になるため、"Heartbleed"の脆弱性はOpenSSLのユーザが非常に深刻に受け止めるべき内容です。

本レポートでは、この脆弱性に関する解説と、実際の被害報告や対応策をご紹介します。

記事INDEX

OpenSSLとは


Heartbeatとは

 ・OpenSSL 1.0.1から1.0.1f
 ・OpenSSL 1.0.2-beta から 1.0.2-beta1


脆弱性を突いた事例

 ・Canada Revenue Agency
 ・三菱UFJニコス

 ・IIJ-SECT

Heartbleed対象かどうかの確認方法

まず、OpenSSLのバージョンを確認します。OpenSSLがインストールされたサーバ環境で以下のコマンドを実行することでバージョンを確認できます。

# openssl version

また、GMOグローバルサインでは、無償のウェブサービス「SSLチェックツール」を提供しています。URLを入力することでサーバの設定状況等が確認可能です。

もし、Heartbleedの対象となるバージョンをお使いの場合は、"Server is vulnerable to HeartBleed attack"と表示されます。

>SSLチェックツール

※Heartbleed脆弱性が懸念される場合の表示例
※Heartbleed脆弱性が懸念される場合の表示例
秘密鍵が盗まれた場合の影響

Heartbleed脆弱性への対策方法



 ・OpenSSLのバージョンを修正済みバージョンへアップデートを行ってください。

 ・修正済みバージョンの適用が困難な場合は、「-DOPENSSL_NO_HEARTBEATS」オプションを有効にしてOpenSSL を再コンパイルしてください。

 ・OpenSSLのアップデート後、新たに作成した秘密鍵で証明書を再発行してください。
  →再発行のお手続き

 ・新しい証明書をインストールし、古い証明書を失効してください。
  →証明書の失効について
   ※再発行が済んでいない段階で失効を行いますと再発行する事ができません。
    必ず、再発行が済んでいる事を確認してください。

ID/Passwordの変更

主要なベンダーのセキュリティアドバイザリとパッチについて



GNU/Linux
ディストリビューション


Red Hat
CentOS
Fedora
Ubuntu
Debian
Arch


Serverside Software

Apache CloudStack
Apache CouchDB
F5
mongoDB
NGINX
Parallels Products
XAMPP

Hardware


Cisco Products





2014.04.30