10.8. Cross-JWT Confusion (JWT の混同)
10.8. Cross-JWT Confusion (JWT の混同)
[RFC8725] のセクション 2.8 に記載のとおり, 攻撃者はある目的で発行された JWT を意図しない文脈で用いようとする場合がある. これらの攻撃に対する緩和策は Request Object に適用できる.
攻撃者は Request Object を [RFC7523] のセクション 2.2 に記載のクライアント認証 JWT として流用しようとする場合がある. 簡単な防法は Request Object でクライアント ID を sub 値として用いないことである.
別の防法は [RFC8725] のセクション 3.11 の明示的タイピングである. Request Object に typ ヘッダパラメータを値 oauth-authz-req+jwt (セクション 9.4.1 で登録) で含める. ただし既存の認可サーバで明示的に型付けされた Request Object を必須とすると, 特に OpenID Connect [OpenID.Core] で, 型なし Request Object を既に広く用いる既存デプロイのほとんどを破壊する. 既存デプロイとの互換が不要な新しい OAuth デプロイプロファイルでは明示的タイピングを必須とすることが望ましい.
さらに別の防法は, Request Object の署名に用いる鍵を他用途の鍵と識別可能に区別する鍵管理体制を用いることである. 攻撃者が別文脈で Request Object を流用しようとすると鍵の不一致が生じ攻撃が阻止される.