TLS1.0/1.1のリスクとTLS1.2へ移行するメリット
Google ChromeやMicrosoft Internet Explorerといった主要ブラウザは、セキュリティ強化のため2020年上半期からTLS1.0/1.1の接続無効化の対応を進めています。「TLS」は、ネットワークにおけるデータ暗号化の仕組みで、暗号化プロトコル「SSL」の後継規格として2000年前後に発足し、現在TLS1.3までリリースされています。TLS1.0/1.1を利用している場合、ページを開けなかったり、安全な通信ではないことを示す警告が出てしまったりするため、ユーザは正常にアクセスが出来なくなることが想定されます。自社サイトのユーザビリティやPV数を下げないためにも、サーバ管理者は早急にTLS1.2への移行を検討すべきでしょう。ここでは、TLS1.0/1.1を使い続けるリスクや、1.2へ移行した場合のメリットについて解説します。
TLSとは何か?
まずTLSの概要について解説します。冒頭でも述べたように、TLSはネットワークにおける暗号化プロトコルの一種です。正式名称は「Transport Layer Security」であり、暗号化プロトコルとして有名な「SSL(Secure Sockets Layer)」の後継規格として普及してきました。
SSLはバージョン3.0において致命的な脆弱性(POODLE)※1が見つかったことで使用できなくなり、その直接的な後継規格としてTLS1.0が開発されました。今でも「SSL」の方が一般に広く認知されているため、「SSL/TLS」と表記される場合が多いです。TLSは1999年に1.0、2006年に1.1、2008年に1.2、2018年に1.3がリリースされました。現在は1.0および1.1から1.2への完全移行が進む段階にあるといえます。
なぜ移行が進んでいるかというと、TLS1.0/1.1にも脆弱性が確認されているからです。ただし、SSL3.0のように一斉に無効化されるわけではなく、時間をかけて段階的に移行する動きが見られます。しかし、2020年上半期をめどに主要ブラウザ(Chrome、Edge、Internet Explorer、Firefox、Safari)で対応が終了となるため、TLS1.0/1.1を使用しているWebサイトはアクセス数が減少する可能性が高いでしょう。できるだけ早く、TLS1.2への移行対応が必要です。
※1 POODLE:SSL3.0に潜在する欠陥。適当なデータ列を暗号文として送り、パディング(不足桁数の”0”埋め)が不正である場合に発生するエラーや処理不実行を利用して、データ列が暗号文として適切かを調べる「パディングオラクル攻撃」によって暗号の一部を解読できる問題。
TLS1.0/1.1/1.2
では、TLS1.2へ移行すると、具体的に何が変わるのでしょうか。ここでは、TLSの各バージョンの特徴を整理していきます。
TLS各バージョンの特徴
TLS1.0
インターネットで使用される技術の標準化を推進する団体「IETF(The Internet Engineering Task Force)」が作成した、最初のTLSです。SSLサーバ証明書の署名に使われるハッシュ化アルゴリズムとして、160ビットのハッシュ値を生成する「SHA-1」を採用し、主にWindows XPで利用されていました。SSL3.0の実質的な後継規格で、内部バージョンはSSL3.1となっています。SSL3.0廃止の原因となった脆弱性「POODLE」が残っていることから、安全な暗号化プロトコルとは言えません。
TLS1.1
TLS1.0の後継規格で、サーバ証明書チェックに使われるハッシュ化アルゴリズムは同じく「SHA-1」です。CBCモード※2の脆弱性を利用した攻撃 (BEAST 攻撃等) への対応やAESの正式導入などにより、TLS1.0よりも強固なプロトコルになりました。しかし、2005年にSHA-1への効果的な攻撃方法が発見されてからは脆弱性が高まり、現在(2020年)はSHA-2を採用した暗号化プロトコルへの移行が推奨されています。
TLS1.2
ハッシュ化アルゴリズムとして、SHA-1よりも強固(ビット長が大きい)な「SHA-2 family (SHA-224・SHA-256 ・SHA-384・SHA-512) 」を採用しているため、TLS1.0/1.1よりも安全性は高いといえます。2019年時点で94%のWebサイトがTLS1.2に対応済みとなっており、すでに暗号化プロトコルとしてはスタンダードと呼べる存在です。
それぞれの違い
TLS1.0/1.1では、AESの導入やCBCモードの脆弱性対応といった進化が見られます。しかしSHA-1アルゴリズムの脆弱性は改善されていません。一方、TLS1.2では、ハッシュ化アルゴリズムとしてビット長が大きなSHA-2(デフォルトはSHA-256)を採用しており、SHA-1の脆弱性を克服しています。
※2 CBCモード:ブロック暗号のひとつで、1つ前の暗号文ブロックと平文ブロックをXOR(排他的論理和)で連鎖させながら暗号化するアルゴリズム。
TLS1.0/1.1を使い続けるリスクと1.2移行のメリット
このようにTLS1.0/1.1には脆弱性が残されており、1.2へ移行しない場合は、次のようなリスクが発生すると考えられます。
TLS1.0および1.1を使い続けるリスク
SHA-1の終息
既に終息に向かっている状況で、今後はアップデートが期待できない。脆弱性は依然として残されたままであり、外部からの攻撃を許してしまう状態が続く。
暗号化通信が不可能になる
Microsoftでは、2017年2月14日以降、SSLサーバ証明書についてSHA-1ハッシュアルゴリズムで生成されたものは受け入れ中止と発表しており、SHA-1でSSL通信が可能な環境が減っている。
Webサイトへのアクセス減少
主要ブラウザで2020年上半期をめどにTLS1.0/1.1での接続が無効化される。そのため、サーバ側でTLS1.0/1.1を使用し続けると、多くのユーザがWebサイトにアクセスできなくなる。
検索順位の低下
TLS1.2へ移行していないWebサイトは、脆弱性があるサイトとして、検索順位に悪影響が出る可能性が高い。
TLS1.2へ移行するメリット
2020年時点で、TLS1.3に対応しているブラウザが少なく、なおかつ1.0/1.1への対応を終了させるブラウザが大半を占めるため、事実上1.2のみが無風地帯となっています。したがって、現状使い勝手と安全性を両立した唯一の暗号化プロトコルといえるでしょう。実際に、iPhone・iPadに搭載されているiOSおよびOS XがTLS1.2を必須としており、モバイル端末からのアクセスを落とさずに済むことは間違いありません。
まとめ
本稿では、データ暗号化プロトコルTLS1.0/1.1/1.2の内容や違いについて解説してきました。TLS1.0/1.1は脆弱性が残されているうえ、SHA-1アルゴリズムに対する攻撃法が発見されており、安全な暗号化プロトコルではありません。また、そのまま使用し続けるとWebサイトのアクセス数や検索順位が落ちる可能性が高いといえます。できるだけ早期にTLS1.2環境への移行をすべきでしょう。利用しているサーバのOSが古い場合はTLS1.2に対応できないことがあるので、その際はOSのリプレイスも早急に検討する必要があります。どうしても難しい場合は、緊急避難的にプロキシサーバを経由することでTLS1.2に対応するという手段も検討してみましょう。
どうしてもすぐに移行できない場合は…
ベアケアでは、プロキシサーバを介すことでTLS1.2での通信を可能にする「SSLプロキシサービス」を提供しています。内容については下記リンクを、より詳しい情報についてはお気軽にお問い合わせくださいませ。