Read the docs

Decompression bomb in ezstd lets attackers exhaust BEAM memory

Priority LOW 30CWE-409Published · Updated

Key facts

Attack vector
Local
Privileges required
None
User interaction
None
Attack complexity
Low
Attack requirements
None
Impact type
—
Confidentiality · integrity · availability
None · None · High
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA.

Summary

silviucpp ezstd from 1.0.5 before 1.2.5 is affected. The ezstd:decompress_using_ddict/2 function passes the content size declared in a zstd frame directly to memory allocation, skipping the 1 GiB size check that ezstd:decompress/1 applies (Improper Handling of Highly Compressed Data, CWE-409). A local attacker without privileges can supply a small crafted zstd frame that makes the Erlang VM exhaust memory and terminate, because the allocation happens inside a NIF.

Written with Claude Haiku 5.5 from the sources below · 2026-11-06

Description from the CNA

Improper Handling of Highly Compressed Data (Data Amplification) vulnerability in silviucpp ezstd allows an attacker who supplies a zstd frame to ezstd:decompress_using_ddict/2 to exhaust memory and terminate the Erlang VM via a small frame that declares a very large content size. zstd_nif_decompress_using_ddict in c_src/ezstd_nif.cc reads the frame's declared content size with ZSTD_getFrameContentSize and passes it directly to enif_make_new_binary, without the 1 GiB MAX_BUFFER_SIZE check that ezstd:decompress/1 applies before allocating. A valid 65,550-byte frame of RLE blocks declaring 2 GiB is rejected by ezstd:decompress/1 but is fully allocated and decompressed by the dictionary path. The allocation happens inside a NIF, so when it exceeds the memory available to the VM the operating system kills the whole node rather than the calling process. This issue affects ezstd: from 1.0.5 before 1.2.5.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00178 7th percentileScored 2026-11-07
Fix Fixed ezstd (silviucpp): 1.2.5

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
silviucppezstd1.0.5 to before 1.2.51.2.5Patch availableCNA
  • ezstd Vendorsilviucpp Affected 1.0.5 to before 1.2.5 Fixed in 1.2.5 Patch available CNA

CPE names CNA · 1

CPEVersionsRoleVendor
cpe:2.3:a:silviucpp:ezstd:*:*:*:*:*:*:*:*——silviucpp
  • cpe:2.3:a:silviucpp:ezstd:*:*:*:*:*:*:*:* Versions — — ·silviucpp

Remediation

Update ezstd to version 1.2.5, the fixed version.

Written with Claude Haiku 5.5 from the sources below · 2026-11-06

  • Fix · CNA ezstd (silviucpp) Fixed in 1.2.5

Vendor assessments

Red Hat

Red Hat's page for this CVE →

Not affected: 1 product
  • Red Hat

Timeline

  1. 2026-11-05 Threatist record created from CVE-2026-119434
  2. 2026-11-05 CVSS score added · CISA ADP
  3. 2026-11-05 CISA SSVC decision points changed
  4. 2026-11-05 Priority changed: MEDIUM → LOW
  5. 2026-11-05 Alias added: GHSA-p9j8-93gx-5h3x
  6. 2026-11-06 Affected versions changed · Red Hat
  7. 2026-11-06 CVSS score added · Red Hat

References

Sources