脆弱性・CVE速報深刻度: 緊急

ZITADEL の Login V2 に、認証手段のない利用者のアカウントを認証なしで乗っ取れる欠陥(CVE-2026-119128)、4.19.5 へ更新を

目次(5)

CVE-2026-119128

ZITADEL の Login V2(ログイン画面を提供する機能)に、まだパスワードなどを設定していない利用者のアカウントを、認証なしの攻撃者が乗っ取れる欠陥(CVE-2026-119128)が見つかりました。NVD は 2026-10-29 に公開し、ZITADEL 4.0.0 から 4.19.4 までが対象です。ZITADEL は 4.19.5 で修正しています。

何が問題か

Login V2 は、利用者がメールアドレスや招待コードを確認したばかりであることを、verificationCheck という Cookie で覚えています。この Cookie の値が、利用者 ID とブラウザの識別用 Cookie から作った SHA-256 のハッシュだけで、サーバー側の秘密の値が入っていませんでした。そのため、攻撃者が利用者 ID またはログイン名を知っていれば、有効な値を自分で計算できてしまいます。

この偽の証明で、認証手段を一つも持たない有効な利用者(たとえば招待されたばかりの人や、API で作られてまだ一度もサインインしていない人)に対して、次のことができます。

  • 確認コードなしでパスワードを設定し、その利用者としてサインインする
  • その利用者のパスキー(パスワードの代わりになる認証手段)を登録し、サインインする
  • アカウントのリンクを許す外部 ID プロバイダーが設定されていれば、攻撃者自身の外部アカウントをリンクして、サインインする

乗っ取られると、ZITADEL 上の権限と、ZITADEL でサインインしているすべてのアプリへのアクセスを奪われます。すでにパスワード・パスキー・外部 ID プロバイダーのいずれかを持つ利用者は影響を受けません。Login V2 を提供していない構成も対象外で、ZITADEL の API 自体も影響を受けないと、ZITADEL は説明しています。

数値で見る

項目値
CVECVE-2026-119128(ZITADEL の勧告番号 GHSA-84fg-x5h4-w8xv)
公開日ZITADEL の勧告 2026-10-15、NVD 2026-10-29
対象ZITADEL 4.0.0 から 4.19.4(RC 版を含む)
修正版4.19.5
CVSS v4.09.1(Critical。NVD に載る VulnCheck の値)
CVSS v3.17.4(High。ZITADEL の勧告の値)
攻撃条件ネットワーク経由・攻撃の複雑さは高い・認証不要・利用者の操作は不要
CWECWE-565(Cookie の信頼)

CVSS は深刻さの目安(10.0 が最大)です。ZITADEL は深刻度を「High」、VulnCheck は v4.0 で「Critical」と評価していて、評価元で点数が異なります。攻撃の複雑さが「高い」のは、攻撃者が対象の利用者 ID かログイン名を知っている必要があるためです。NVD の解析状況は 2026-10-30 時点で「保留(Deferred)」です。

誰が気をつけるか

ZITADEL 4.x を自社で運用し、Login V2 の画面を使っている組織です。招待したがまだサインインしていない利用者や、API で作成してまだ認証手段を設定していない利用者がいる環境は、狙われやすくなります。

今やること

  1. 使っている ZITADEL の版を確認する。4.0.0 から 4.19.4 なら対象。
  2. 4.19.5 以降へ更新する。ZITADEL は、更新が推奨の対策で、未更新の版で完全に塞ぐ設定はないとしています。
  3. 更新後に、署名用の秘密の値 ZITADEL_SESSION_COOKIE_SECRET が、32 文字以上のランダムな値になっているか確認する(例: openssl rand -base64 32)。未設定だと、API の資格情報から鍵が作られます。設定例からコピーした値は使わない。
  4. 更新までの間の部分的な緩和策として、利用者は最初の認証手段を設定した状態で作成し、認証手段を持たない有効な利用者を残さない。
  5. 認証手段を持たない利用者が最近サインインした記録がないか、不審なパスワード設定やパスキー登録がないかを確認する(これは一般的な確認で、ZITADEL が示した手順ではありません)。

用語メモ

  • Cookie: ブラウザに保存される小さなデータ。サイト側が利用者の状態を覚えるのに使う。
  • パスキー: パスワードの代わりに使える、端末に保存された認証手段。
  • ID プロバイダー: 別のサービスのアカウントでサインインできるようにする仕組み。
  • 認証回避: ログインの確認をすり抜けられる欠陥。

この記事について

出典

この記事を共有