Web教材一覧情報倫理・セキュリティ

SSL

キーワード

SSL、TLS、SET、フォールバック機能


SSL(Secure Socket Layer)

SSLは、ネットスケープ社が開発した暗号通信プロトコルで、多くのWebブラウザに標準装備され広く用いられています。セッション層(レイヤー5)に相当します。暗号化では、ハイブリッド暗号方式が使われます。

たとえば、店舗側のWebサーバとクライアント(購買者のパソコン)との間で、SSLによる暗号通信をするときには、店舗側はあらかじめ認証局に申請して電子証明書を取得しておきます。そして、該当するWebページを閲覧すると、サーバがクライアントに電子証明書と呼ばれるデータを送るので、クライアントはこの証明書を使って,通信相手のサーバーが信頼できるかどうかを検証します。
 HTTPにSSL機能を取り込んだがHTTPSです。SSLを用いているWebページは、「http://~」ではなく、「https://~」となっており、ブラウザには下のような表示がされています。この鍵マークをクリックすると証明書が表示されます。

HTTPSでの表示

店舗のWebサーバを見て購買者が注文するときの手順は次のようになります。

SSLの仕組み
EV SSL(Extended Validation SSL)
Extended Validationとは「拡張認証」の意味です。
 認証局がSSLサーバー証明書を発行するときは、利用者を審査しますが、その審査内容は認証局に異なり、審査が甘い場合には虚偽の証明書を取得できます。虚偽の証明書によるSSL表示を用いて利用者を安心させ、フィッシングや中間者攻撃(説明)を行うケースが増大してきました。
 それに対処するために、審査基準を統一して、SSLより厳格な審査をするのがEV SSLです。 従来のSSLでは、ドメイン名使用権の確認だけでよく、厳しいものでも組織の法的実在の確認程度でしたが、EV SSLでは、申請責任者の権限の認証、政府または第三者機関における組織の実在性の検証などが必要になりました。
 EV SSL対応のブラウザで、EV SSL取得サイトのアクセスすると、アドレスバーが緑色になり、SSLでの鍵マーク横にサイト運営組織名と、認証局名が表示されます。信頼できない証明書の場合、アドレスバーを赤色に表示するブラウザもあります。
TLS(Transport Layer Security)
TLSはSSLの後継仕様です。
 共通鍵暗号アルゴリズムでAES、署名アルゴリズムでRSAが選択できるようになった。  証明書の取扱仕様が厳格になった。 など、セキュリティ強化が行われています。  TLSは普及しているのですが、既にSSLという用語が定着しているので、TLSのことをSSLということもあります。

中間者攻撃(man-in-the-middle attack)とは、暗号通信を行なうAとBの間に、不正者Xが割り込んで、虚偽の電子署名・認証を用いて、Aに対してはBを装い、Bに対してはAを装うことにより、情報を不正入手する手口です。AにBからのWebページをコピーしてXの証明書をつけて安心させ、Aが入力した暗号情報を解読します。そして、改ざんした暗号情報をAになりすましてBへ送信します。すべてAとBの公開鍵で暗号化(署名)しているので、AもBも盗聴され改ざんされたことに気付かないのです。認証局の本人審査が甘いと、このような手口が行われます。EV SSLやTLSでは、その対策を強化しています。

SET(Secure Electronic Transactions)

SSLでは,購買者のクレジット番号を店舗が知ることになり,悪用される危険があります。それに対してSETは,クレジット決済用のプロトコルで、クレジット番号などを暗号化して店舗に送信し,店舗が決済金額を添えてクレジットカード会社に決済承認を行うようにしているので,店舗側にもクレジット番号を知られないようにすることができます。

フォールバック機能

セキュリティ強度が高い暗号化プロトコルを使うことが求められますが、サーバやブラウザの仕様が古いと、強度の高い暗号化プロトコルでの通信を確立できなくなることがあります。それを避けるために、普及率の高い旧版(強度の低い)のプロトコルで自動的に再接続を試みる方法がとられます。これをフォールバックといいます。
 これを悪用されると、ブラウザを常に古く脆弱なプロトコルを利用するように設定される危険性があります。2014年には、ブラウザに対して旧版の脆弱性のあるSSL v3を使うように仕向けたPOODLE(Padding Oracle On Downgraded Legacy Encryption)攻撃が猛威を振るいました。その対策として、フォールバック機能の自動化設定を外したり、脆弱性のある旧プロトコルでの通信を行わなくする手段がとられました。