TLS 1.0・1.1はなぜ廃止されたのか?

TLSは、インターネット通信を暗号化するプロトコルです。以前はSSLと呼ばれていましたが、現在はTLSがその後継として広く使われています。

「TLSを使っているから安全」とひと言で済ませてしまいがちですが、TLSにはバージョンがあり、古いバージョンには深刻な脆弱性が存在します。実際、TLS 1.0とTLS 1.1はすでに非推奨・廃止となっており、現在はTLS 1.2とTLS 1.3が主流です。

本記事では、TLSの各バージョンの特徴と、廃止に至った背景にある攻撃手法を整理しながら、なぜTLS 1.3が推奨されるのかを解説します。

目次

TLSバージョン一覧と現在のステータス

以下に、TLSの主要バージョンとそのステータスをまとめます。

バージョンリリース年ステータス概要
TLS 1.01999年廃止済み複数の深刻な脆弱性が発見され、2021年にRFC 8996で廃止
TLS 1.12006年廃止済みTLS 1.0の改善版だが、根本的な問題は残存。同じく2021年に廃止
TLS 1.22008年現役現在も広く使われており、適切な設定のもとで安全に運用可能
TLS 1.32018年現役(推奨)セキュリティと性能を大幅に改善した最新バージョン

TLS 1.0とTLS 1.1は、2021年にIETFがRFC 8996として正式に廃止を勧告しました。現在、主要ブラウザやサーバーはこれらのバージョンへの接続をブロックしています。

TLS 1.0・1.1が廃止された理由

TLS 1.0とTLS 1.1が廃止された背景には、これらのバージョンを標的にした複数の攻撃手法の発見があります。

BEAST(2011年)

TLS 1.0が採用していたCBCモードの暗号化における実装の欠陥を突いた攻撃です。攻撃者がHTTPSセッションに割り込み、クッキーなどの機密情報を解読できる可能性がありました。

POODLE(2014年)

SSLv3およびTLS 1.0のパディング処理の脆弱性を利用した攻撃です。攻撃者が通信を繰り返し観測することで、暗号化されたデータを少しずつ解読できます。名前は「Padding Oracle On Downgraded Legacy Encryption」の略称です。

CRIME(2012年)

TLS圧縮機能を悪用した攻撃です。圧縮後のデータサイズの変化を観測することで、セッションクッキーなどの情報を推測できます。

LUCKY13(2013年)

CBCモードにおける処理時間の微妙な差異(タイミングサイドチャネル)を利用した攻撃です。処理時間を精密に計測することで、暗号化されたデータの一部を推測できます。

これらの攻撃はいずれも、古い暗号化方式や実装上の欠陥に起因しています。TLS 1.2以降ではこれらの問題に対する対策が講じられており、適切な設定のもとで安全に使用できます。

TLS 1.2と1.3の違い

TLS 1.2とTLS 1.3はどちらも現役ですが、セキュリティと性能の面でTLS 1.3が大きく改善されています。

ハンドシェイクの効率化

TLS 1.2では接続確立までに2回の往復通信(2-RTT)が必要でした。TLS 1.3ではこれが1回(1-RTT)に短縮され、接続の遅延が減少しています。また、一度接続したことのある相手には0-RTTによる再接続も可能です。

脆弱な暗号スイートの廃止

TLS 1.3では、過去に脆弱性が指摘された以下の暗号方式が廃止されました。

廃止された要素理由
RC4統計的攻撃に対して脆弱
3DESブルートフォース攻撃への耐性が低下
MD5・SHA-1衝突攻撃が現実的に可能
静的RSA鍵交換前方秘匿性がない

前方秘匿性(PFS)の標準化

TLS 1.3ではすべての鍵交換で前方秘匿性が必須となりました。これにより、仮に将来サーバーの秘密鍵が漏えいしても、過去の通信内容は解読されません。TLS 1.2では前方秘匿性はオプションでしたが、TLS 1.3では選択の余地なく保証されます。

実務での影響・設定指針

TLS 1.2・1.3への移行は、サーバー・クライアント双方での対応が必要です。

サーバー側の対応

  • TLS 1.0・1.1を無効化し、TLS 1.2以上のみを許可する設定にする
  • 脆弱な暗号スイート(RC4・3DES等)を明示的に無効化する
  • 可能であればTLS 1.3を優先的に有効化する

クライアント側の対応

  • 使用しているライブラリ・ランタイムがTLS 1.2以上に対応しているか確認する
  • 古いOSや言語バージョンではTLS 1.3非対応の場合があるため注意が必要

AWSを利用している場合

AWSのAPIエンドポイントはTLS 1.2が最低バージョンとして設定されています。CloudFrontでは新規ディストリビューション作成時にTLS 1.2以上のポリシーがデフォルトで適用され、TLS 1.3も有効化されています。既存のリソースについては、セキュリティポリシーの設定を確認し、TLS 1.0・1.1が許可されていないかを見直すことを推奨します。

まとめ

本記事では、TLSのバージョンごとの特徴と、廃止に至った背景にある攻撃手法、そしてTLS 1.2とTLS 1.3の違いについて解説しました。

TLS 1.0・1.1はBEASTやPOODLEといった攻撃手法の発見により廃止され、現在はTLS 1.2とTLS 1.3が主流です。TLS 1.3はハンドシェイクの効率化・脆弱な暗号スイートの廃止・前方秘匿性の標準化により、セキュリティと性能の両面でTLS 1.2を上回っています。

「TLSを使っているから安全」ではなく、「どのバージョンのTLSを使っているか」を意識することが、現代のセキュリティ対策において重要です。まずは自身の環境でTLS 1.0・1.1が無効化されているかを確認するところから始めてみてください。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

日々の記録

コメント

コメントする

CAPTCHA


目次