用語辞典・通信プロトコル

SSL

SSLとは

SSLは、TLSの前身となった暗号化プロトコルで、古い版は安全上の理由から利用すべきではありません。正式名称はSecure Sockets Layer(セキュア・ソケッツ・レイヤー)で、エスエスエルと読みます。

SSL 2.0、SSL 3.0の後継としてTLS 1.0が標準化され、その後TLSが更新されました。現在「SSL通信」「SSL化」と呼ばれるサービスの多くは、実際にはTLSを使っています。

SSLはTLSの別名や最新設定名ではなく、使用を禁止・停止すべき歴史的なプロトコルです。会話上の通称と、機器が実際に許可するプロトコル版を分けます。

破られた旧方式を交渉対象から外し、後継のTLSだけで安全な経路を作る証明書という部品が共通でも、接続に使われるプロトコルは別物
ひび割れた盾を持つ二つの古いSSL方式を資料庫へ閉じ、ブラウザーとサーバーが古い方式への降格経路を拒否し、証明書を使って現代のTLS保護通信へ移る関係を示した図解
図1古いSSLを無効にしても、証明書ファイルを必ず交換するという意味ではありません。証明書の有効性とプロトコル設定は別項目です。

名前の変化と、安全性の境界を分ける

互換性のために古い版を残すほど、弱い接続へ合意する入口が増える製品名や通称ではなく、実際に有効なプロトコル版を確認する
SSL 2.0使用禁止

設計上の弱点があり、クライアントとサーバーの双方で無効にする

SSL 3.0安全ではない

POODLEなどプロトコル上の問題があり、交渉対象へ残さない

TLS 1.0 / 1.1非推奨

現在の安全要件を満たさず、一般利用では交渉させない

TLS 1.2設定を精査

用途により使われるが、弱い暗号スイートや署名方式を除く

TLS 1.3現行の中心

古い方式を整理し、ハンドシェイクと暗号スイートを再設計した

Certificate版とは別管理

名前、鍵、期限、用途、信頼を示し、どのTLS版で使うかは設定で決まる

図2TLS 1.2を許可するかは相互接続要件と組織方針によります。SSL 2.0・3.0へ戻す理由にはなりません。

SSL 3.0は、暗号スイートを選び直しても安全な現行方式にはならない

プロトコル版は、メッセージの作り方、鍵導出、暗号利用方法、エラー処理など接続全体の規則を定めます。cipher suite(サイファー・スイート/暗号スイート)は、その版の中で使う暗号アルゴリズムの組です。

弱い暗号スイートを外すことは必要ですが、それだけでSSL 3.0固有の設計問題は直りません。SSL 2.0・3.0自体を無効にし、許可したTLS版の中でも弱い暗号・署名・鍵交換を除くという二段階で設定します。

「SSL証明書」は残った商品名で、証明書がSSL専用という意味ではない

Webサイト用の公開鍵証明書は、現在も「SSL証明書」と販売・案内されることがあります。証明書はX.509形式で公開鍵、名前、有効期間、発行者の署名などを持ち、実際の接続ではTLSサーバー認証に使われます。

証明書を更新しても、サーバー設定にSSL 3.0が残っていれば自動では消えません。反対にSSLを無効化しても、名前不一致、期限切れ、信頼されない発行者など証明書側の問題は残ります。証明書検査とプロトコル検査を別々に行います。

降格攻撃は、互換性用の古い入口を悪用する

クライアントとサーバーは互いに使える版を合意します。攻撃者が途中の通信を妨害し、実装が「失敗したので古い版で再試行」と動けば、本来双方が新しい版を使えるのに弱い方式へ落とされることがあります。

TLS_FALLBACK_SCSVやTLS 1.3の降格検知など対策がありますが、不要な旧版を無効にすることが根本です。ロードバランサー、CDN、メールサーバー、VPN、管理画面などTLS終端点をすべて洗い出し、外向きと内部接続の双方を確認します。

OpenSSLという名前は、SSLを有効にしている証拠ではない

OpenSSL(オープンエスエスエル)は暗号・TLS機能を提供するソフトウェアライブラリーとツールの名称です。名前にSSLが残っていますが、現行版でTLSを利用でき、実際に許可される版はアプリと設定で決まります。

設定画面の「SSL/TLS」「Use SSL」という項目も、互換的なUI名称である場合があります。項目名だけで判断せず、接続試験、サーバー設定、ログから合意版と暗号スイートを確認します。

古い端末を接続するために、公開サービス全体を弱くしない

更新できない装置が旧版しか話せない場合、インターネット公開の主サービスへ古いSSLを再び許可するのは危険です。装置更新、隔離ネットワーク、限定的な変換ゲートウェイ、アクセス制御などで影響範囲を分けます。

互換性の期限、接続元、監視、撤去計画を決められない旧プロトコル例外は常設しないことが重要です。古い方式を支えるほどコード経路と試験範囲が増え、設定漏れも起こりやすくなります。

仕様・廃止理由の確認資料:RFC 6101「The SSL Protocol Version 3.0」RFC 7568「Deprecating SSL Version 3.0」RFC 6176「Prohibiting SSL Version 2.0」RFC 8996「Deprecating TLS 1.0 and 1.1」

関連用語