Description
Allocation of Resources Without Limits or Throttling vulnerability in esaml_binding in dropbox esaml allows an unauthenticated attacker to exhaust the Erlang VM atom table and crash the node via a crafted SAMLResponse.

esaml_binding:decode_response/2 parses the decoded SAMLResponse with xmerl_scan:string/2, which interns every element name, attribute name, and namespace prefix it reads as a permanent atom. The SAML consume (ACS) and single-logout endpoints call it on unauthenticated requests before any signature check, so one well-formed document with thousands of distinct names mints thousands of atoms while staying inside the 128 KB request body limit. Atoms are never reclaimed and the VM caps the atom table at about one million entries, so a few dozen requests abort the node.

This issue affects esaml: from 0.1.0 onward.
Published: 2026-10-22
Score: 8.7 High
EPSS: < 1% Very Low
KEV: No
Impact: Denial of Service via atom table exhaustion
Action: Immediate Patch
AI Analysis

Impact

An unbounded allocation of resources occurs when the esaml_binding component parses SAMLResponse messages. Each XML element, attribute, and namespace prefix is interned as an Erlang atom, a permanent entry in the VM atom table that cannot be reclaimed. A crafted message that contains thousands of unique names can consume a substantial portion of the atom table. Because the sys limits the atom table to about one million entries, only a few dozen such requests are sufficient to exhaust the table and crash the node. The attack can be launched on an unauthenticated request to SAML consume (ACS) or single‑logout endpoints, before any signature or authentication checks occur.

Affected Systems

The issue affects the esaml library, used by vendors such as arekinath, dropbox, and handnot2. It is present in all released versions from 0.1.0 onward. The vulnerability is triggered by any instance of esaml that processes incoming SAMLResponse data through decode_response/2.

Risk and Exploitability

The CVSS score of 8.7 marks this vulnerability as high severity. No EPSS value is available, and it is not listed in CISA KEV, indicating that a public exploitation vector has not yet been observed. However, the lack of authentication or signature validation on the vulnerable endpoints makes the attack straightforward for an unauthenticated adversary who can send a crafted SAMLResponse. The vulnerability would cause an immediate denial of service by terminating the Erlang VM, potentially affecting all services running on the same node. The attack does not require privileged access or complex preparation, and the short response payload limit (128 KB) does not mitigate the problem.

Generated by OpenCVE AI on October 22, 2026 at 09:25 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update the esaml library to a fixed release that limits atom allocation or removes unbounded atom creation.
  • If the latest release is not immediately available, temporarily limit the Erlang atom table size by configuring the +A flag to a lower value (e.g., 255000) and monitor the application for crashes caused by atom exhaustion.
  • Implement rate limiting or request throttling on the SAML consume (ACS) and single‑logout endpoints to reduce the frequency of incoming SAMLResponse requests that could propose many unique tag names.

Generated by OpenCVE AI on October 22, 2026 at 09:25 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 22 Oct 2026 07:00:00 +0000

Type Values Removed Values Added
Description Allocation of Resources Without Limits or Throttling vulnerability in esaml_binding in dropbox esaml allows an unauthenticated attacker to exhaust the Erlang VM atom table and crash the node via a crafted SAMLResponse. esaml_binding:decode_response/2 parses the decoded SAMLResponse with xmerl_scan:string/2, which interns every element name, attribute name, and namespace prefix it reads as a permanent atom. The SAML consume (ACS) and single-logout endpoints call it on unauthenticated requests before any signature check, so one well-formed document with thousands of distinct names mints thousands of atoms while staying inside the 128 KB request body limit. Atoms are never reclaimed and the VM caps the atom table at about one million entries, so a few dozen requests abort the node. This issue affects esaml: from 0.1.0 onward.
Title Unbounded atom creation while parsing SAML messages in esaml allows atom table exhaustion
First Time appeared Arekinath
Arekinath esaml
Dropbox
Dropbox esaml
Handnot2
Handnot2 esaml
Weaknesses CWE-770
CPEs cpe:2.3:a:arekinath:esaml:*:*:*:*:*:*:*:*
cpe:2.3:a:dropbox:esaml:*:*:*:*:*:*:*:*
cpe:2.3:a:handnot2:esaml:*:*:*:*:*:*:*:*
Vendors & Products Arekinath
Arekinath esaml
Dropbox
Dropbox esaml
Handnot2
Handnot2 esaml
References
Metrics cvssV4_0

{'score': 8.7, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: EEF

Published:

Updated: 2026-10-22T06:58:43.034Z

Reserved: 2026-10-07T22:15:01.882Z

Link: CVE-2026-105270

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-22T07:16:40.940

Modified: 2026-10-22T07:16:40.940

Link: CVE-2026-105270

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-22T11:00:05Z

Weaknesses
  • CWE-770

    Allocation of Resources Without Limits or Throttling