Cisco Japan Blog

TLS バージョン 1.3:変更点の紹介と暗号化トラフィック分析によるセキュリティ強化

1 min read



TK Keaniniこの記事は、Lancope Engineering 部門のプリンシパル エンジニアである TK Keanini によるブログ「TLS version 1.3: Change is here and Encrypted Traffic Analytics has got your backpopup_icon(2018/4/11)の抄訳です。

ネットワークは、暗号化されたセッションによってますます外部から見えにくくなっています。これはエンド ユーザにとって大きなメリットとなります。なぜなら信頼しないことを前提に考える ゼロ トラストネットワークにおいても、アプリケーション間接続のプライバシーと信頼性を確保できるからです。一方で、これは攻撃者にとってもメリットになります。この問題の本質は、Transport Layer Security(TLS)を実装したライブラリやコードによって、ネットワーク セッションの暗号化が非常にシンプルで容易になったという点です。TLS と、その前身であるセキュア ソケット レイヤ(SSL)(後者は現在、Internet Engineering Task Force(IETF)によって使用が禁止されています)は、コンピュータ ネットワーク上で通信のセキュリティを実現する暗号化プロトコルです。

ここではバージョン 1.0 から現行のバージョン 1.2 にいたるまでの変更点について見ていきましょう。また、バージョン 1.3 が 2018 年 3 月にリリースされたことで予想される事柄についても説明します。シスコが多くの時間を費やして開発している分析手法では、発展を続ける TLS の各バージョンと、TLS によるセキュリティやプライバシーを侵害しません。しかし同時に、攻撃者が TLS を逆手に取って検出を逃れ、ネットワーク内に隠れることを阻止します。これらの概念は、シスコの暗号化トラフィック分析(ETA)に欠かせません。

まずはじめに暗号化トラフィック分析について概要を説明しましょう。暗号化トラフィック分析は、高度な分析パイプラインを通じて拡張された新しいテレメトリを含むソリューション セットです。1)悪意のあるトラフィック検出に復号が不要である、2)暗号化ポリシーを管理するインテリジェンスであるという 2 つの特徴があります。

現在(2018 年 3 月)にいたるまでの取り組み

プロトコルの発展についての詳しい分析は割愛します。ここでは、脆弱性の発見によりプロトコルが進化してコンプライアンスへの取り組みが加速し、保護の最低基準が守られるようになった経緯について、時系列で簡単にまとめました。

  • TLS バージョンの前には SSL がありましたが、攻撃に対する脆弱性が見つかり、2011 年には SSL 2.0 が RFC 6176popup_icon によって禁止されました。また、SSL 3.0 も 2015 年 6 月に RFC 7568 popup_iconによって禁止されました。 このような経緯はあるものの、SSL が TLS の発展に役立ったことは明白です。
  • 次に、TLS バージョン0 と RFC 2246popup_icon が登場しましたが、その衰退の原因は、過去の技術を引きずっていたことでした。TLS 1.0 では、互換性を確保するために SSL 3.0 とのネゴシエーションが維持されましたが、その代償としてセキュリティが低下しました。 PCI Council によって、2018 年 6 月 30 日までに組織が TLS 1.0 から TLS 1.1 以降(1.2 が強く推奨されます)に移行することが義務付けられたため、PCI 互換であることが求められる組織は対応を急いでください。
  • TLS バージョン1 と現行の 1.2 にはプロアクティブな変更が盛り込まれており、想定される非信頼ネットワークにおけるセキュアな接続のセットアップ、保守、ティアダウンに必要な仕組みが改善されています。バージョン 1.2 は今日、私たちの安全を保つ基盤となっています。
  • バージョン3 は、IETF によって 2018 年 3 月に承認されました。TLS 1.3 では従来型の攻撃ベクトルが考慮されているだけでなく、広範な侵入型のモニタリングを不可能にすることを目指しています。現在、中継(中間者)システムを通じて通信内容の調査を行う手法が存在するので、TLS 1.3 の取り組みは興味深いものです。TLS 1.3 の普及により、中継システムを使用する手法は衰退する可能性があります。

TLS 1.3 とは

TLS 1.3 は、以前のバージョンである 1.2 の登場から約 2 年間の歳月と 28 回のドラフト策定を経て完成しました。このバージョンは、これまで以上にシンプルかつ高速で安全です。暗号スイートのスペースは取り除かれて、TLS 1.3 をサポートするすべての暗号スイートでは、Authenticated Encryption with Associated Data(AEAD)アルゴリズムが使用されます。静的な RSA や Diffie-Hellman キー交換は、今や過去のものとなりました。残ったキー交換メカニズムでは Forward Secrecy が保証されます。また、0-RTT モードが追加され、一部のアプリケーション データを交換ハンドシェイク メッセージの最初のセットで送信できるようになりました。他にもさまざまな特徴がありますが、これまで以上にシンプルかつ高速で安全であるという点だけは覚えておいてください。

TLS 1.2 と同様に、クライアントが送信する最初の ClientHello メッセージでは、クライアントでサポートされる TLS パラメータのセットが定義され、TLS 接続に関する追加のコンテキストが提供されます。サーバは ServerHello で応答し、クライアントによって提供されるリストからサーバでサポートするパラメータを選択します。この時点から、TLS 1.3 の動作は以前のバージョンとは異なるものになります。サーバは EncryptedExtension メッセージによって、TLS 1.2 ではクリア テキストで送信されていた ServerHello メッセージのサブセットを暗号化できます。証明書に関連するメッセージを含め、以降のすべてのメッセージは暗号化されます。これらのメッセージには、TLS 1.2 の標準的なアプリケーション データ メッセージと同じ TLS タイプ コードが含まれます。

ここまでの説明で、メッセージの交換が単にシンプルになるだけでなく、その一部が暗号化によって隠ぺいされることが理解できると思います。

TLS バージョン 1.3 がもたらすもの

「懸命に取り組み物事を改善し迅速に行えばさらに強くなれる」
Daft Punk2001

すでに述べたように、TLS 1.3 はバージョン 1.2 よりもシンプルかつ高速で安全になっています。 これらの品質についてはあまり議論の余地がありませんが、中間者(MiTM)の必要性を主張する人は異論を唱えるでしょう。MiTM とは、互いに通信していると信じている通信当事者の間を中継システムでつなぐ機能です。一部では通信を「モニタ」するためにセッションの MiTM 機能が必要だとする主張がある一方で、MiTM タイプの「モニタリング」ができなくなるようにあらゆる手段を講じるべきだという主張もあります。読者がこの問題のどちら側についていても、TLS バージョン 1.3 が普及すれば後者が勝利を収めることになります。

重要な点ですが、「すべての暗号化セッションは暗号化されていない状態から始まります」。TLS 1.2 との相違点は、TLS 1.3 ではクリア テキストで処理される割合が低いということです。たとえば、TLS バージョン 1.2 では、証明書内のサブジェクト代替名(SAN)popup_iconの開示を確認することができましたが、1.3 では SAN が暗号化されているので、どのような中継システムであっても SAN を調査のために利用することはできません。 このように実証された多くの事例があるにもかかわらず、議論が終わることはないでしょう。それぞれ賛否両論があるからです。

いくら異議を唱えても TLS バージョン 1.3 はすでに存在していますが、シスコの暗号化トラフィック分析があることも忘れないでください。

暗号化トラフィック分析は シスコのルータやスイッチを活用することで、利用できる暗号通信内部に潜む脅威を見つけ出すソリューションです。

TLS バージョン 1.3 と Stealthwatch 暗号化トラフィック分析

暗号化トラフィック分析の利点は、TLS 1.2 が有効である必要がないという点です。この手法は TLS 1.3 でもうまく動作します。TLS 1.3 の導入によって、このテレメトリが最も大きな影響を受ける要素は、初期データ パケット(IDP)です。ServerHello ではいくつかの拡張が欠落することになるからです(ClientHello では、これまでと同じ情報が提供されます)。SPLT(Sequence of Packet Lengths and Times)は引き続き有効で、数百にわたるその他の機械学習の分類子も同様です。そのため、暗号化トラフィック分析は多層機械学習パイプラインに基づいており、証明書のような世界規模の相関コンテキスト情報でも有効であることがわかります(ローカルのみのソリューションは、TLS 1.3 による隠ぺいで役に立たなくなります)。

暗号化トラフィック分析は、TLS 1.3 のような大きな変更にも影響を受けないように、その設計の早期段階で数々の意思決定が行われています。アクティブな攻撃者はどれか 1 つのセキュリティ対策を突破できるかもしれませんが、多様な検出手法のすべてを一度に高い確度で突破することは(理論的には可能でも)現実的ではありません。

まとめ

TLS 1.3 が正式に承認されたので、TLS 1.2 の通信内容を見るために膨大な投資を行った人々は、それらの情報が TLS 1.3 で隠されてしまったことに不満を持つことになるかもしれません。しかし 暗号化トラフィック分析に関わる私達の意見は次のようなものです。TLS 1.3 はインターネットのセキュリティとプライバシーを向上させるための重要なステップであり、暗号化トラフィック分析は、高度な脅威検出の戦略を進める上でこれまで以上に重要な役割を果たします。

TLS 1.3 は歓迎すべき変化であり、暗号化トラフィック分析ソリューションの強みと、将来を見据えた革新的な機能を際立たせることになります。

詳細情報:https://cisco.com/jp/go/eta

Authors

坂本 祐一

コンサルティング システムズ エンジニア

セキュリティ事業

コメントを書く