Skip to content
OpenAdvisories
High · 8.7 CVE-2026-47067 EEF-CVE-2026-47067EUVD-2026-31691GHSA-9653-rcfr-5c62

Atom table exhaustion via unrecognized URL schemes in hackney

Published May 25, 2026 · Updated May 27, 2026 · Assigned by EEF

Description

Allocation of Resources Without Limits or Throttling vulnerability in benoitc hackney allows Flooding. The URL parser in src/hackney_url.erl converts every unrecognized URL scheme to a permanent BEAM atom via binary_to_atom/2. BEAM atoms are never garbage-collected and the atom table defaults to a hard limit of 1,048,576 entries. An attacker who can supply URLs with attacker-chosen scheme prefixes — directly as request targets, as configured webhook URLs, or via Location headers followed during redirects — can exhaust the atom table and crash the entire BEAM VM with system_limit.

This issue affects hackney: from 2.0.0 before 4.0.1.

Affected products

VendorProductAffectedFixed
benoitc hackney 2.0.0 – < 4.0.1 4.0.1

Affected packages

EcosystemPackageAffectedFixedRecord
Hex hackney >= 2.0.0, < 4.0.1 4.0.1 EEF-CVE-2026-47067

References