要点

  • QUICのConnection IDは端点が選ぶ接続ルーティング用の識別子であり、加入者、アカウント、端末所有者の証明ではない。
  • 妥当な帰属には、Connection IDの利用開始から廃止までを、認証済みハンドシェイク、アプリケーションのセッション、認可の有効期間、経路変更記録に結ぶ証跡が必要になる。

スマートフォンがオフィスのWi-Fiから携帯網へ移る際のQUIC通信を、不正対策システムが監視しているとする。サーバーはクライアントに新しい宛先Connection IDを提供し、クライアントはそれへ切り替えた後、サーバーが以前発行したIDを廃止する。接続自体は別経路で継続する。一方の検知器は新IDを新しい人物とみなし、リスク履歴を初期化する。別の検知器はID列全体を同一人物の決定的証拠とみなす。どちらもトランスポートの仕組みを主体特定の判断と取り違えている。

パケットの行き先であって責任の名札ではない

RFC 9000では、QUIC接続は複数のConnection IDを持ち得る。IDは、IPアドレスとポートの組だけに依存せず、パケットを正しい端点の接続状態へ届けるために使われる。端点は追加IDを提供でき、相手側は不要になったIDを廃止できる。

この設計により、クライアントは接続先ネットワークやIPアドレス、経路が変わってもトランスポート状態を保てる。サーバー側もIDを使ってパケットを適切な処理系へ振り分けられる。しかし、これらはトランスポートの上にいる人、顧客アカウント、業務上の権限を示さない。

Connection IDが誤用されやすいのは、ヘッダーに現れ、暗号化されたアプリケーション内容を読めないシステムにも見え、アドレスの組より長く残ることがあるからだ。観測キーとしては有用だが、永続的な権限主体ではない。

ローテーションは近道を意図的に壊す

IDのローテーションは消すべき異常ではない。RFC 9000は複数IDの発行、シーケンス番号、廃止の規則を定める。また、外部観測者が同じ接続の別IDと相関できる情報をIDに含めてはならないとする。端点間の継続性を保ちながら、経路上での関連付けを制限する設計である。

「一つのIDは一人の顧客」と仮定すると、ローテーションのたびに誤った分断が生じる。弱い状況証拠から全ローテーションを復元しようとすれば、逆に異なる人物やセッションを誤って結ぶ。前者は必要な履歴を失い、後者は制裁、通信制限、調査結果を誤った主体へ付ける。

ステートレスリセット用トークンもこの推論を修復しない。定められた条件で接続状態を終了する仕組みであり、アカウントの認証情報ではない。二つのパケットが同一トランスポート接続に属すると証明できても、アプリケーションの認可が変わっていないとは限らない。トランスポート状態が残る間にアカウント停止、再認証、権限変更は起こり得る。

認証は別の層にある

RFC 9001は、QUICがTLSでハンドシェイクを保護し、パケット保護鍵を導出する方法を規定する。ハンドシェイクはサーバーを認証し、接続の暗号状態を確立できる。アプリケーション上の主体特定にはなお、アカウントとの結び付け、セッション作成、トークン検証、適用された方針、特定操作を許可した判断という別の記録が要る。

これらは関係する事実だが、交換可能ではない。Connection IDは、保護されたハンドシェイクで確立した接続状態を端点が呼び出すために使われる。IDだけを見ても、アプリケーションが誰に操作を帰属させたかは分からず、過去の認可が現在も有効だとも証明できない。正しく認証されたサーバー証明書もサービス端点の管理者を示すのであって、利用者を名指ししない。

したがって結合は、各証拠が権威を持つ場所で行う。端点のログはID列と暗号接続を結ぶ。アプリケーションは当時のセッションと認可の開始・終了時点を記録する。ID管理システムは操作を帰属させた相手と、その根拠を記録する。事実を分けて保持すれば、出所と権限境界を失わない。

管理可能性は意図的に部分的である

RFC 9312は、QUICの暗号化とネットワーク上で見える形式が運用にもたらす影響を説明する。運用者はアドレス、時刻、サイズ、一部のヘッダー情報を観測できるが、トランスポートから完全なアカウント監査記録を受け取るわけではない。

これは単なる可視性低下ではなく、証拠の境界である。経路は観測を、端点はトランスポート状態を、アプリケーションは主体と権限を説明する。堅牢な調査は時刻と出所を付けてそれらを結び、一つの層に別の層の権威を演じさせない。

この原則はプライバシーも守る。全ての中継者がConnection IDを恒久的な顧客IDへ変換できれば、受動的な関連付けに抗する設計が無意味になる。不正対策には端点とアプリケーションの正規記録を使うべきで、ルーティング用の識別子に隠れた意味を付けるべきではない。

接続と操作主体を結ぶ証跡を作る

永続的な証拠は、接続と操作主体を結ぶ証跡である。IDのシーケンスと利用期間、発行端点、利用開始と廃止時刻、ステートレスリセット用トークンの状態、認証ハンドシェイクへの参照、アプリケーションのセッション、認可の有効期間、経路変更、業務判断の時刻と判断した構成要素を記録する。

証跡は証明できないことも明示する。端点による裏付けのない経路観測はアカウントを識別しない。アプリケーションとの結合がない端点の接続記録は利用者を識別しない。現在の認可判断がないセッションは後続操作を正当化しない。結合の欠落は不確実性であり、最も安定して見える項目で代用する許可ではない。

この証跡により、通信制限、不正分析、事故対応の統制点が明確になる。履歴を再認証後の操作主体にも引き継ぐのか、一つのトランスポート接続だけに限定するのか、認可が大きく変わった時点で初期化するのかを、方針として明示できる。判断は記録され、後から検証可能になり、事業者がConnection IDを保存する方法に偶然左右されなくなる。

情報源