非エンジニア向けSSL解説:OpenSSLの脆弱性「HeartBleed」とは?

非エンジニア向けSSL解説:OpenSSLの脆弱性「HeartBleed」とは?

GoogleのMatt Cutts氏が「SSL(https)のサイトを優遇するかも」のような発言をしたことや、4月にはOpenSSLの致命的な脆弱性についても話題になりました。今回の記事では、非エンジニア向けにSSLや、指摘されている脆弱性「HeartBleed」について解説します。開発室の坂田による執筆です。

マーケティングでお悩みの方へ

ナイルでは皆様からWebマーケティングに関する無料相談を受け付けております。日頃疑問に思っていたことや、貴社サイトの課題など相談してみませんか?

まずは会社案内をダウンロード

無料相談に申し込む

2014年は”SSL”が何かと話題に

以前からGoogleが強制的にSSLで接続するようになったり、2014年に入り、GoogleがSSLのサイトを優先しようか検討している、といった話が出てくるなど、SEO関係者の中でもたびたびSSLが話題に出てくるようになりましたね。

参考:『HTTPSをSEOで優遇』 SSL化を推奨するアルゴリズム導入をGoogleが公式発表

今年の4月ごろ、SSLでの通信を可能にしているOpenSSLというソフトウェアに、個人情報などの通信内容がサーバーから流出する重大な欠陥(脆弱性)が見つかったことが話題となりました。

この脆弱性は、サーバーからの情報流出が、心臓(Heart)から出血(bleed)するほど深刻に捉えられたため、「Heartbleed」と呼ばれています。

どんな形であれ個人情報を扱うようなサイトはセキュリティを担保することが求められます。今回は、SSLの仕組みを改めて理解していただいた上で、この脆弱性「Heartbleed」について解説します。

編集者注:冒頭の「GoogleがSSLのサイトを優先」の話は、Googleでも検討が始まったばかりの未確定事項

SSLの役割と仕組み

SSLは、主に2つの機能を提供しています。1つは、信頼性を担保することです。SSLを使用しているウェブサイトはSSLの証明書を有しています。

この証明書は、第三者機関である認証局(CA)によって発行されています。この証明書により、利用者が、ウェブサイトを信頼できることが保証されています。

もう1つは、暗号化により安全性を担保することです。通常のウェブサイトを表示するために使用するhttp通信は暗号化されていません。そのため、第三者に通信が見られた際、通信している情報が容易に読み取られてしまいます。

ここでいう情報の中には、IDやパスワードなどの会員情報や、住所や名前など、お問い合わせの内容など個人に関わる重要な情報が存在します。

こうした情報を第三者に読み取られないように、暗号化する必要があります。SSLは、通信情報を暗号化する機能を有し、安全な通信を確立する役割を担っています。

SSLの説明

OpenSSLの脆弱性「Heartbleed」とは

OpenSSLとは、実際にこの暗号化を行っているプログラムの一つです。SSLを可能にしているソフトウェアはOpenSSLの他にもNSSやGnuTLSといったプログラムの存在しますが、OpenSSLは非常に高いシェアを占めています。

ところがこのOpenSSLの脆弱性が先日指摘され話題になりました。それがHeartbleedです。

SSLに限らず、サーバーは通信を行うと、メモリに通信内容を一時的に記録します。本来メモリに記録されたデータは、通信が終了すると破棄されます。

ところがHeartbleedという”バグ”により、メモリ上のデータが破棄されず、サーバー外部に流出してしまう場合があります。この流出したデータの中に、個人情報が含まれていると、個人情報の流出といった事態になります。

Heartbleedはサーバーの秘密鍵が流出する場合もある

ここで大きく問題なのは、Heartbleedによる影響は、通信データの一部流出にとどまらず、「サーバーの秘密鍵」の流出の恐れがある点です。

詳しい解説はここでは割愛しますが、SSLでは、共通鍵暗号方式と公開鍵暗号方式の2つの暗号方式を利用して安全性を担保しています。

SSLでサーバー送信した情報は、これらの方式を用いて暗号化されます。この情報は、サーバーの秘密鍵という鍵のみで復号化することが可能です。逆に言えば、この「秘密鍵」さえあれば、第三者でも容易に通信内容を読み取ることができます。

情報流出の危険性

サーバーはひとつの秘密鍵を使用しているため、一度秘密鍵が流出してしまうと、ウェブサイトの利用者の通信内容を継続的に読み取られる可能性があります。例えるなら、隣の人にパソコンのパスワードを知られてしまった状態です

対処法

実際の作業はサーバーなどの環境に依存しますので、具体的には触れませんが、以下の手順を取るとよいでしょう。

Heartbleedかどうか調べる

まずは、OpenSSLのバージョンを調べます。この際、以下のバージョンに当てはまる場合、Heartbleedの脆弱性があります。

またこれらのバージョンに該当しなくとも、古いOpenSSLを使用している場合は、他の脆弱性やバグが存在している可能性もあるので、最新のものにバージョンアップすることをおすすめします。

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

Heartbleedを取り除く

OpenSSLのバージョンを確認し、Hearbleedの影響を受けている場合は、早急に取り除くましょう。最も簡単な方法は、OpenSSLのバージョンを最新のものにします。

また、レンタルサーバー等OpenSSLの設定を変えることのできない場合は、サーバーの管理会社に連絡し、この脆弱性を解消してもらう必要があります。

証明書を再発行し、以前の証明書を失効させる

OpenSSL脆弱性を直したら、SSLの証明書を再発行します。主なSSL発行会社は、無償での再発行を受け付けています。証明書を再発行したら、その設定をサーバーに反映させます。最後に、SSL発行会社を通じて古い証明書を失効させましょう。

まとめ

SSLは、個人情報を取り扱うウェブサイトを安全に運営していく上で、重要な役割を担っています。ウェブサイトの利用者が安心して利用できる環境を整えるためにも、SSLだけでなく、利用している技術やその仕組みを理解し、脆弱性やバグに柔軟に対応していくことが重要です。

最後に、私たち開発室もブログを書いておりまして、技術トピックを中心に、幅広い内容を紹介しています。こちらも参考にしてください。
Catcher in the tech – ナイル株式会社開発室ブログ

SEOについて知りたい方はこちら

ナイル株式会社 坂田

マーケティングでお悩みの方へ

ナイルでは皆様からWebマーケティングに関する無料相談を受け付けております。日頃疑問に思っていたことや、貴社サイトの課題など相談してみませんか?

まずは会社案内をダウンロード

無料相談に申し込む

編集者情報

金子 光
金子 光(かねこ ひかる)
新卒で楽天グループ株式会社に入社。
営業管理として40人規模のチームをマネジメント。その後社員3人のベンチャー企業に入社し新規事業立ち上げを経験。
現在はナイルのマーケティング相談室編集長として、Webマーケティングに従事している。
無料相談はこちらから

監修者情報

ナイル編集部
ナイル編集部

2007年に創業し、約15年間で累計2,000社以上の会社にマーケティング支援を行う。また、会社としても様々な本を出版しており、業界へのノウハウ浸透に貢献している。(実績・事例はこちら

PIVOTにもスポンサード出演しました!

PIVOTにもスポンサード出演しました!
チャンネル登録者数が100万人を超えるYoutubeチャンネルPIVOTにスポンサード出演しました!
動画内では、マーケティング組織立ち上げのための新しい手段についてお話しています。
マーケティング組織に課題がある方はぜひご覧下さい。
動画を見る

関連記事

指名検索を誤解していませんか?

【誤解していませんか?】1位を取って満足してはいけない「指名検索」

構造化データがよく分かる!初心者向け徹底解説アイキャッチです。

構造化データとは?非エンジニアでもよく分かる!初心者向け徹底解説!

ホームページリニューアル失敗しないタイミング4選!

ホームページリニューアルのタイミング4選!失敗を防ぐには?

新着記事

【わかりやすく解説】サイテーションとは?SEO効果・獲得方法などプロが解説

【わかりやすく解説】サイテーションとは?SEO効果・獲得方法などプロが解説

動画で学ぶコンテンツマーケティング

【第2回】動画で学ぶWebマーケティング【コンテンツマーケティング編】

【厳選】被リンクチェックツールのおすすめ8選!確認手順やポイント、リンク獲得対策までわかりやすく解説

【厳選】被リンクチェックツールのおすすめ8選!確認手順やポイント、リンク獲得対策までわかりやすく解説

もっと効果的な集客施策
してみませんか?

Web戦略の情報を
定期的に受け取りたい方

取材・メディア掲載に関するお問い合わせは、こちらからお問い合わせください。