Absinthe-graphqlのAbsintheにおける制限またはスロットリング無しのリソースの割り当てに関する脆弱性
タイトル Absinthe-graphqlのAbsintheにおける制限またはスロットリング無しのリソースの割り当てに関する脆弱性
概要

absinthe-graphqlのabsintheにおけるリソース制限やスロットリングなしの割り当ての脆弱性により、攻撃者が制御するGraphQL SDLの解析時にアトムテーブルが枯渇し、認証なしでサービス拒否が可能になります。AbsintheのSDL言語モジュールにある複数のBlueprint.Draft.convert/2の実装は、解析されたGraphQL SDLドキュメント内のディレクティブ名、フィールド名、型名、引数名など、攻撃者が制御する名前に対してString.to_atom/1を呼び出します。アトムはガベージコレクションされず、BEAMのアトムテーブルには固定された上限(デフォルト1,048,576)があるため、各ユニークな名前は永久に1つのスロットを消費します。攻撃者は十分な数のユニーク名を含むSDLドキュメントを送信することでアトムテーブルを枯渇させ、Erlang VMがsystem_limitエラーで中断し、ノード全体がダウンします。この問題は、攻撃者が制御するGraphQL SDLをAbsintheのパーサに通すすべてのアプリケーションに影響を与えます。例として、スキーマアップロードエンドポイント、リモートSDLを取り込むフェデレーションゲートウェイ、ユーザー提供ドキュメントに対してパーサを実行する開発者ツールなどが挙げられます。この問題はabsintheのバージョン1.5.0から1.10.2未満に影響があります。

想定される影響 当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 また、当該ソフトウェアが扱う情報について、書き換えは発生しません。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 
対策

正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。

公表日 2026年5月8日0:00
登録日 2026年5月28日14:32
最終更新日 2026年5月28日14:32
CVSS3.0 : 重要
スコア 7.5
ベクター CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
影響を受けるシステム
Absinthe-graphql
Absinthe 1.5.0 より大きい 1.10.2 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
その他
変更履歴
No 変更内容 変更日
1 [2026年05月28日]
  掲載
2026年5月28日14:32

NVD脆弱性情報
CVE-2026-42793
概要

Allocation of Resources Without Limits or Throttling vulnerability in absinthe-graphql absinthe allows unauthenticated denial of service via atom table exhaustion when parsing attacker-controlled GraphQL SDL.

Multiple Blueprint.Draft.convert/2 implementations in Absinthe's SDL language modules call String.to_atom/1 on attacker-controlled names from parsed GraphQL SDL documents, including directive names, field names, type names, and argument names. Because atoms are never garbage-collected and the BEAM atom table has a fixed limit (default 1,048,576), each unique name permanently consumes one slot. An attacker can exhaust the atom table by submitting SDL documents containing enough unique names, causing the Erlang VM to abort with system_limit and taking down the entire node.

Any application that passes attacker-controlled GraphQL SDL through Absinthe's parser is exposed — for example, a schema-upload endpoint, a federation gateway that ingests remote SDL, or any developer tool that runs the parser over user-supplied documents.

This issue affects absinthe: from 1.5.0 before 1.10.2.

公表日 2026年5月9日1:16
登録日 2026年5月9日4:15
最終更新日 2026年5月14日0:57
関連情報、対策とツール
共通脆弱性一覧