{"id":4294,"date":"2026-09-04T18:46:23","date_gmt":"2026-09-04T10:46:23","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-55734"},"modified":"2026-09-04T18:46:23","modified_gmt":"2026-09-04T10:46:23","slug":"cve-2026-55734","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-55734","title":{"rendered":"CVE-2026-55734 [HIGH] &#8211; Allocation of Resources Without Limits or Throttling vulnerability in ueberauth guardian ("},"content":{"rendered":"<p>Allocation of Resources Without Limits or Throttling vulnerability in ueberauth guardian (Guardian.Permissions module) allows a denial of service via BEAM atom-table exhaustion.<\/p>\n<p>This vulnerability is associated with program file lib\/guardian\/permissions.ex and program routines &#8216;Elixir.Guardian.Permissions&#8217;:encode_permissions!\/1, &#8216;Elixir.Guardian.Permissions&#8217;:encode_permissions_into_claims!\/2, &#8216;Elixir.Guardian.Permissions&#8217;:do_encode_permissions!\/2.<\/p>\n<p>The Guardian.Permissions mixin installs a public encode_permissions!\/1 function on every module that does use Guardian.Permissions. For each key of the supplied map, encode_permissions!\/1 calls String.to_atom(to_string(k)) before any validation runs. The integer-value clause of do_encode_permissions!\/2 then short-circuits straight to encoding without validating the key against the configured permission set, so a key with an integer value is interned as a fresh atom with no exception raised. Atoms are never garbage collected and the BEAM atom table is a fixed-size resource (default roughly 1,048,576 entries), so each unique attacker-chosen key permanently consumes one slot. An attacker who can influence a permission map that reaches encode_permissions!\/1 (for example a permissions map read from a request body and passed into token issuance via encode_permissions_into_claims!\/2) can mint an unbounded number of atoms and exhaust the atom table, crashing the entire BEAM node and every service running on it. The sibling decode_permissions\/1 is not affected because it skips keys absent from the configured permission set.<\/p>\n<p>This issue affects guardian: from 2.0.0 before 2.4.1.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Allocation of Resources Without Limits or Throttling vulnerability in ueberauth guardian (Guardian.Permissions module) allows a denial of service via BEAM atom-table exhaustion.<\/p>\n<p>This vulnerability is<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-4294","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/4294","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln"}],"about":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/types\/vuln"}],"wp:attachment":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4294"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4294"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4294"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}