Description
Improper Handling of Highly Compressed Data (Data Amplification) in esaml_binding in dropbox esaml allows an unauthenticated attacker to exhaust server memory and crash the Erlang VM via a crafted compressed SAMLResponse.

esaml_binding:decode_response/2 base64-decodes the attacker-supplied SAMLResponse, inflates it with zlib:unzip/1 with no bound on the output, then converts the result to a charlist with binary_to_list/1 before parsing. This runs on the SAML consume (ACS) and single-logout endpoints, which accept unauthenticated requests by design, and it runs before any signature check. A small deflate stream reaches a compression ratio near 1000 to 1, so a request body of tens of kilobytes inflates to hundreds of megabytes and then to several gigabytes of list heap, so a few requests exhaust memory and take the node down.

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
Action: Patch Now
AI Analysis

Impact

The esaml library’s decode_response function base64‑decodes a supplied SAMLResponse, unzips it with zlib:unzip/1 without bounding the output size, and then converts the result into a large list before parsing. A small deflate stream can expand several megabytes into hundreds of megabytes or even gigabytes of list heap, which can exhaust the Erlang VM’s memory and cause a crash. The flaw is exercised by unauthenticated requests to the ACS and single‑logout endpoints, which run before any signature validation, meaning an attacker can trigger DoS simply by sending crafted compressed payloads.

Affected Systems

The issue appears in the esaml library for several vendors: Arekinath’s esaml, Dropbox’s esaml, and Handnot2’s esaml, all versions from 0.1.0 onward. Any system integrating these libraries for SAML handling is potentially vulnerable.

Risk and Exploitability

With a CVSS score of 8.7 the vulnerability is high severity. The EPSS score is not available, but because the attack requires only a single unauthenticated HTTP request to a public endpoint and no special configuration, the exploitation likelihood is high. The vulnerability is not yet listed in the CISA KEV catalog. An attacker can send a tiny, highly compressed SAMLResponse that inflates thousands of times larger, quickly consuming system memory and bringing the node down.

Generated by OpenCVE AI on October 22, 2026 at 08:34 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Apply the latest esaml release or patch that limits the decompression output size, as referenced in the commit history linked above.
  • Configure web‑server or reverse‑proxy limits to reject requests that exceed a safe SAMLResponse size or to enforce a maximum number of compressed bytes.
  • Implement additional application‑level checks that reject SAMLResponses whose compressed size is unusually tiny compared to the expected payload, triggering a safe error response.

Generated by OpenCVE AI on October 22, 2026 at 08:34 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

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

Type Values Removed Values Added
Description Improper Handling of Highly Compressed Data (Data Amplification) in esaml_binding in dropbox esaml allows an unauthenticated attacker to exhaust server memory and crash the Erlang VM via a crafted compressed SAMLResponse. esaml_binding:decode_response/2 base64-decodes the attacker-supplied SAMLResponse, inflates it with zlib:unzip/1 with no bound on the output, then converts the result to a charlist with binary_to_list/1 before parsing. This runs on the SAML consume (ACS) and single-logout endpoints, which accept unauthenticated requests by design, and it runs before any signature check. A small deflate stream reaches a compression ratio near 1000 to 1, so a request body of tens of kilobytes inflates to hundreds of megabytes and then to several gigabytes of list heap, so a few requests exhaust memory and take the node down. This issue affects esaml: from 0.1.0 onward.
Title Unbounded SAML message decompression in esaml allows memory exhaustion
First Time appeared Arekinath
Arekinath esaml
Dropbox
Dropbox esaml
Handnot2
Handnot2 esaml
Weaknesses CWE-409
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:59:24.029Z

Reserved: 2026-10-06T08:45:01.518Z

Link: CVE-2026-93471

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-22T09:17:16.827

Modified: 2026-10-22T09:17:16.827

Link: CVE-2026-93471

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-22T08:45:02Z

Weaknesses
  • CWE-409

    Improper Handling of Highly Compressed Data (Data Amplification)