いまさら聞けない【情シス知識】httpsのなぜ?
WebサイトのURLには「http://」で始まるものと「https://」で始まるものの2種類があります。たった”s”一文字の違いが、セキュリティ面では大きな差になります。『何となくわかるけど、どう違うの?』という人のために、機能の違いとHTTPSを使うことが大事な理由を解説します。
この記事の目次
Webユーザーを守る小さな”s”
ネットで話題のキーワードを調べていたら、はたまた久しぶりになつかしいホームページを見てみたら、Webブラウザでの検索結果に「保護されていない通信」の警告がついていたことはありませんか?『公式で信頼できるページみたいなのに何で?』と思ったことはありませんか?ブラウザの警告マークが出ていれば思わず開くのをためらってしまうもの。でもそれはきっと「HTTP」の仕業です。
ホームページのURLの最初に「http://」や「https://」といった通信プロトコルを表す文字列がついています。
普段あまり意識していないかもしれませんが、この”s”があるかないかでは、大違いです。悪質サイトでサイバー犯罪にまきこまれて金銭的な被害に遭うかもしれませんし、もしサイト運営側であれば多大な機会損失となっているかもしれません。
さてHTTPとHTTPSで何がどう違うのか、なぜHTTPでは警告が出るのかを理解し、セキュリティ意識を高めていきましょう。
そもそもHTTP/HTTPSとは?
HTTP(Hyper Text Transfer Protocol)/HTTPS(Hypertext Transfer Protocol Secure)とは、Webサーバーとクライアント(Webブラウザ)で情報をやりとりするための通信プロトコルです。HTTPSは、末尾に「Secure」がついていることからもわかるように、HTTPのセキュリティを向上させたものです。
具体的には、HTTPでは、サイトに表示する画像や文章、やりとりするファイルなどを暗号化せずに通信しています。HTTPSでは、そうしたやりとりを全て暗号化して通信します。
HTTPSでの暗号化にはSSL(Secure Socket Layer)/TLS(Transport Layer Security)という技術が使われています。そしてSSL/TLSが以下のような通信のセキュリティを担保します。
- 通信を暗号化する
- SSL証明書(サイト運営者の情報、鍵、署名など)による正当性の確認ができる
- 改ざん検知
逆に言えば、HTTPではこれらのセキュリティ対策がなされていない、ということになります。次の章でもう少し具体的にリスクについて見ていきます。
HTTPSで守るセキュリティ
HTTPSを使わないと、以下のようなセキュリティリスクが発生します。こうしたセキュリティリスクのあるサイトは、Webブラウザでユーザーに警告されてしまいアクセス量も減ってしまうため、Webサイト運営側にとっては経営面でのリスクともなります。
通信を盗み見される!?
HTTPでは、暗号化されていない通信となるため、その通信を傍受した人が簡単に通信内容を盗み見することができるのです。ネットショッピングで入力する住所氏名・クレジットカード番号などが他人に盗まれたら、なりすましでカードを使われてしまったり、個人情報を売買されて他の犯罪にまきこまれたりする恐れがあります。
また、盗み見されたくないのはそうしたわかりやすい個人情報だけではありませんよね。個人の写真や、オンラインメールの内容、どんなサイトを見ているかなど、知られたくないことも筒抜けです。
こうした盗み見は、通信を暗号化することで防ぐことができます。HTTPSでは、共通鍵と公開鍵の暗号方式を使い、やりとりを暗号化しています。
偽物サイトにだまされる!?
HTTPでは、Webサイトの実際の運営元情報はURLくらいしかわかりません。どこの誰が作ったものか、ユーザー側から確かめることができないのです。しかしながらHTTPSでは、SSL証明書を利用してWebサイト運営元の名称や署名データ、鍵情報などを確認することができます。これにより、アクセスするWebサイトが本物のサイトである正当性をユーザー側で確認できます。
ただ、残念ながらなりすましサイトを“完全に”防げるわけではないことに注意が必要です。
よく知っている企業から送られてきたダイレクトメールのURLをクリックして、『それっぽい』ページにたどり着き、個人情報やパスワードを入力してしまった・・・というフィッシング詐欺が2018年から流行しています。こうした『それっぽい』ようにできているなりすましサイトでHTTPSが使われている例が報告されています。つまり、「HTTPSだから安心」「SSL証明書があるから安心」とはいいきれず、SSL証明書の内容確認まで行う方がより安全です。
SSL証明書は、URLをクリックして簡単に運営元や有効期限、証明書発行元などの情報が確認できます。
ひと手間かもしれませんが、いきなり送られてきたダイレクトメールからURLにアクセスする場合や、Webサイトに何か違和感を感じた場合など、確認することで個人情報搾取を回避することができるかもしれません。
本家のサイトが偽造されていた!?
HTTPでは、通信経路に侵入されたらデータそのものを改ざんすることができてしまいます。そのため、マルウェアが挿入されたコンテンツをダウンロードしてしまったり、運営元に送信されるはずの問い合わせメールが書き換えられた第三者のアドレスに送信されてしまうなどの被害につながることがあります。
HTTPSでは、通信データに改ざん検知のためのハッシュ値を添付しています。そのハッシュ値を送信側・受信側で共有することで改ざんされていないことを確認し、安全なやりとりができるのです。
HTTPとHTTPSの混在するサイトも
HTTPSが使われていないサイトは、主要Webブラウザの機能で検出され、ユーザーに警告や注意が表示されるようになっています。URLの一番左側に鍵マーク・インフォメーションマーク(Webブラウザによって異なりますが、エクスクラメーションマークなど)が表示されています。
鍵がしっかり閉まっているマークでは、安全なHTTPSサイトであることが確認できます。
しかし注意したいのが、URLは「https://」だけど注意情報が表示されるという場合です。Google Chromeブラウザでは以下のように表示されます。
これは、主要ページがHTTPSであったとしても、ページ内のどこかにHTTPのコンテンツが混じっている場合に表示されます。その場合、HTTPのままのコンテンツは第三者によって書き換えられてしまうことがあります。もしHTTPのままのコンテンツが問い合わせ送信フォームやファイルのダウンロードなどの情報をやりとりするコンテンツであった場合は、そこから情報の盗み見ができてしまいます。トップページのURLが「https://」だからといって安心できるわけではありません。
ただし、これは過去HTTPであったのをHTTPS化したWebサイトなどで、一部にHTTPのコンテンツが残っている場合などでも表示されます。画像の内部リンクや、サイトリンクのURLにHTTPの記述が残っていた場合など、ユーザー側には実質無害である例もあります(画像だけが差し替えられていたとしても、個人情報を盗まれたりマルウェアに感染したりすることはありません)。
アクセスするサイトが信頼できるかをしっかり確かめて利用しましょう。
【執筆:編集Gp 星野 美緒】