概要
オープンソース の マルチモーダル データ カタログ Unity Catalog の トークン 交換 エンドポイント(/api/1.0/unity-control/auth/tokens)に 認証 バイパス 脆弱性 が 発見 されました。
エンドポイント は 受信 した JWT の iss(発行者)クレーム を 抽出 し、それ を 使って 動的 に JWKS エンドポイント を 取得 して 署名 を 検証 します。しかし、発行者 が 信頼 された アイデンティティ プロバイダー で ある か の 検証 が 行われません。攻撃者 は 自前 の JWKS を ホスト し、任意 の JWT を 発行 する こと で 認証 を 完全 に バイパス できます。
技術的 な 背景
JWT(JSON Web Token)の 署名 検証 では、通常 は 信頼 された 発行者(issuer)の 公開鍵 を 事前 に 設定 し、その 鍵 で 署名 を 検証 します。しかし、Unity Catalog の 実装 では JWT 内 の iss クレーム から 動的 に JWKS(JSON Web Key Set)エンドポイント を 取得 する 方式 を 採用 しています。
この 方式 では、攻撃者 が 自分 の サーバー に JWKS エンドポイント を ホスト し、対応 する 秘密鍵 で 署名 した JWT を 送信 する こと で、署名 検証 を パス できて しまいます。iss クレーム の 値 が 信頼 された IdP の リスト と 照合 されない ため、任意 の 発行者 による JWT が 受理 されます。
想定 される 影響
- Unity Catalog の 全 リソース(テーブル、モデル、関数 等)へ の 不正 アクセス
- データ カタログ の メタデータ の 改ざん や 削除
- 機密 データ セット へ の 参照 権限 の 取得
- データ ガバナンス ポリシー の バイパス
Unity Catalog は Databricks 等 の データ プラットフォーム で 利用 される コンポーネント であり、データ レイク や AI/ML パイプライン の アクセス 制御 に 使用 されている 場合 の 影響 は 特に 大きい です。
CVSS ベクトル
| 項目 | 値 |
|---|---|
| CVSSスコア | 9.1 (Critical) |
| 攻撃元区分 | ネットワーク |
| 攻撃条件の複雑さ | 低 |
| 必要な特権レベル | なし |
| ユーザ関与 | なし |
| CWE | CWE-290 (認証 スプーフィング), CWE-346 (オリジン 検証 エラー), CWE-1390 |
影響 を 受ける ソフトウェア
| 製品 | ベンダー | 影響バージョン |
|---|---|---|
| Unity Catalog | unitycatalog | 0.4.0 以前 |
修正 バージョン と 回避策
- Unity Catalog の 最新版 へ アップデート して ください
- JWT の
issクレーム を 信頼 された IdP の ホワイトリスト で 検証 する 設定 が 可能 か 確認 して ください - ネットワーク レベル で Unity Catalog の トークン エンドポイント へ の アクセス を 制限 する こと も 有効 です
関連リンク
データソース: NVD (NIST), GitHub Advisory Database AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
