【活用ガイド】

JVNDB-2026-027574

ueberauthのGuardianにおけるデジタル署名の検証に関する脆弱性

概要

ueberauth guardian における暗号署名の不適切な検証により、認証されていない攻撃者が偽造トークンを使用して被害者のセッションを取り消すことが可能です。lib/guardian.ex の Guardian.revoke/3 は、peek/1 で提供されたトークンをデコードしますが、peek/1 は署名検証を行わず(JWT のヘッダーとペイロードを base64 デコードするだけです)、結果として検証されていないクレームが直接トークンモジュールの revoke コールバックおよび実装の on_revoke コールバックに送られ、状態を変更する処理が行われます。兄弟関数である refresh/2 と exchange/4 は共に最初に decode_and_verify を呼び出しているため、クレームに対して何らかの操作を行う前に署名が確認されますが、revoke/3 は唯一、署名を検証せずにクレームに基づいて状態を変更するパスとなっています。攻撃者は、被害者の識別クレーム値(jti、sub)を知っているか推測できれば、それらのクレームを持つ JWT を偽造し、任意のキーで署名して、コーラーが提供するトークンを Guardian.revoke/3 に送る任意のエンドポイント(標準的なログアウト/セッション取り消しパターン)に送信できます。トークンモジュールがクレームに基づくキーで状態を変更する場合(例えば、whitelist の削除や blacklist への挿入、GuardianDb スタイルのストアなど)、被害者の正当なセッションが強制的に終了されます。これは認証されていないセッション取り消しによるサービス拒否の問題であり、攻撃者は署名秘密鍵を必要としません。この問題は guardian バージョン 1.0.0 から 2.4.1 未満に影響します。
CVSS による深刻度 (CVSS とは?)

CVSS v3 による深刻度
基本値: 7.5 (重要) [NVD値]
  • 攻撃元区分: ネットワーク
  • 攻撃条件の複雑さ: 低
  • 攻撃に必要な特権レベル: 不要
  • 利用者の関与: 不要
  • 影響の想定範囲: 変更なし
  • 機密性への影響(C): なし
  • 完全性への影響(I): なし
  • 可用性への影響(A): 高
影響を受けるシステム


ueberauth
  • Guardian 1.0.0 以上 2.4.1 未満

本脆弱性の影響を受ける製品の詳細については、ベンダ情報および参考情報をご確認ください。
想定される影響

・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。
・当該ソフトウェアが扱う情報について、書き換えは発生しません。
・当該ソフトウェアが完全に停止する可能性があります。
対策

ベンダ情報を参照して適切な対策を実施してください。
ベンダ情報

Erlang Ecosystem Foundation GitHub Open Source Vulnerabilities
CWEによる脆弱性タイプ一覧  CWEとは?

  1. デジタル署名の不適切な検証(CWE-347) [その他]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2026-55735
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-55735
  2. 関連文書 : Merge commit from fork  ueberauth/guardian@2bd7a8c  GitHub
更新履歴

  • [2026年08月10日]
      掲載