JVNDB-2026-027575 | |
ueberauthのGuardianにおける制限またはスロットリング無しのリソースの割り当てに関する脆弱性 | |
| 概要 | |
ueberauth guardian(Guardian.Permissionsモジュール)における制限やスロットリングなしのリソース割り当ての脆弱性により、BEAMのアトムテーブルが枯渇し、サービス拒否(DoS)が可能となります。この脆弱性は、プログラムファイル lib/guardian/permissions.ex およびプログラムルーチン 'Elixir.Guardian.Permissions':encode_permissions!/1、'Elixir.Guardian.Permissions':encode_permissions_into_claims!/2、'Elixir.Guardian.Permissions':do_encode_permissions!/2 に関連しています。Guardian.Permissionsのミキシンは、Guardian.Permissionsを使用するすべてのモジュールに公開されたencode_permissions!/1関数をインストールします。渡されたマップの各キーに対して、encode_permissions!/1は最初のバリデーションが実行される前に String.to_atom(to_string(k)) を呼び出します。do_encode_permissions!/2の整数値の節は、設定された許可セットに対してキーの検証を行わずに直接エンコード処理へショートサーキットします。したがって、整数値を持つキーは例外を発生させることなく新規のアトムとして内部化されます。アトムはガベージコレクションされず、BEAMのアトムテーブルは固定サイズのリソース(デフォルトでおよそ1,048,576エントリ)であるため、攻撃者が選択した一意のキーごとにテーブルのスロットが永続的に消費されます。リクエストボディから読み取り、encode_permissions_into_claims!/2を介してトークン発行に渡される許可マップのように、encode_permissions!/1に到達する許可マップを操作可能な攻撃者は、無制限に新規アトムを生成してアトムテーブルを枯渇させ、BEAMノード全体およびその上で稼働するすべてのサービスをクラッシュさせることが可能です。兄弟関数であるdecode_permissions/1は、設定された許可セットに存在しないキーをスキップするため、影響を受けません。この問題は、guardian バージョン 2.0.0 から 2.4.1未満のすべてに影響します。 | |
| CVSS による深刻度 (CVSS とは?) | |
|
CVSS v3 による深刻度
基本値: 7.5 (重要) [NVD値]
| |
| 影響を受けるシステム | |
|
| |
ueberauth | |
本脆弱性の影響を受ける製品の詳細については、ベンダ情報および参考情報をご確認ください。 | |
| 想定される影響 | |
・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 | |
| 対策 | |
ベンダ情報を参照して適切な対策を実施してください。 | |
| ベンダ情報 | |
Erlang Ecosystem Foundation | |
| CWEによる脆弱性タイプ一覧 CWEとは? | |
|
| |
| 共通脆弱性識別子(CVE) CVEとは? | |
|
| |
| 参考情報 | |
| |
| 更新履歴 | |
|
| 公表日 | 2026/08/01 |
| 登録日 | 2026/08/10 |
| 最終更新日 | 2026/08/10 |



