PatchSiren cyber security CVE debrief
CVE-2026-96596 Erlang CVE debrief
CVE-2026-96596 is a denial-of-service vulnerability in the Erlang OTP stdlib, hexpm hex_core, hexpm hex, and erlang rebar3. An attacker can cause an infinite loop by supplying a crafted GNU sparse member in a tar archive. This vulnerability affects systems handling tar archives from untrusted sources, and defenders should assess exposure and prioritize patching or mitigation. The vulnerability occurs when the sparse map ends before its real size, causing the trailing-hole clause to read zero bytes, not advance the position, and recurse forever.
- Vendor
- Erlang
- Product
- OTP
- CVSS
- MEDIUM 5.9
- CISA KEV
- Not listed in stored evidence
- Original CVE published
- 2026-10-14
- Original CVE updated
- 2026-10-16
- Advisory published
- 2026-10-14
- Advisory updated
- 2026-10-16
Who should care
Defenders responsible for systems using Erlang OTP stdlib, hexpm hex_core, hexpm hex, and erlang rebar3 should assess exposure and prioritize patching or mitigation. This includes teams handling tar archives from untrusted sources, as well as developers and administrators of affected systems.
Why it matters
CVE-2026-96596 is a denial-of-service vulnerability in Erlang OTP stdlib, hexpm hex_core, hexpm hex, and erlang rebar3. Defenders should prioritize patching or mitigating this vulnerability, especially in systems handling tar archives from untrusted sources.
- Denial-of-service via infinite loop
- Potential for resource exhaustion
- Need for input validation and sanitization
- Priority for patching or mitigating affected versions
Technical summary
The erl_tar:extract/2 function in Erlang OTP stdlib, hexpm hex_core, hexpm hex, and erlang rebar3 is vulnerable to a denial-of-service attack. An attacker can cause an infinite loop by supplying a crafted GNU sparse member in a tar archive. This occurs when the sparse map ends before its real size, causing the trailing-hole clause to read zero bytes, not advance the position, and recurse forever. The vulnerability affects systems handling tar archives from untrusted sources, and defenders should assess exposure and prioritize patching or mitigation.
Defensive priority
Defenders should prioritize patching or mitigating this vulnerability, especially in systems handling tar archives from untrusted sources.
Recommended defensive actions
- Review and apply patches for affected versions of Erlang OTP, hexpm hex_core, hexpm hex, and erlang rebar3.
- Implement input validation and sanitization for tar archives from untrusted sources.
- Consider using the {max_size, N} option when using erl_tar:extract/1,2 to prevent infinite loops.
- Confirm whether affected product deployments exist in managed environments and assign an owner for follow-up.
- Review compensating controls for exposed systems while remediation is scheduled and verified.
- Check relevant monitoring, detection, and logs for exposed assets that need extra review.
- Track exceptions, retest remediated assets, and close the item only after evidence is documented.
Evidence notes
The CVE record and source item provide details on the vulnerability, including its description and affected versions. The vulnerability is caused by the erl_tar:extract/2 function in Erlang OTP stdlib, hexpm hex_core, hexpm hex, and erlang rebar3. The function does not handle GNU sparse members correctly, leading to an infinite loop. Defenders should verify the affected scope, severity, and vendor guidance to prioritize patching or mitigation.
Sources and references
Verified primary and authoritative sources
-
CVE-2026-96596 CVE Program record
Publisher, destination, and source semantics verified
URL: https://www.cve.org/CVERecord?id=CVE-2026-96596
CVE Program - Official CVE Program record with source-provided CVE metadata.
-
CVE-2026-96596 NVD vulnerability detail
Publisher, destination, and source semantics verified
URL: https://nvd.nist.gov/vuln/detail/CVE-2026-96596
NIST National Vulnerability Database - Official NIST NVD detail page and source-specific vulnerability assessment.
Supplemental references
-
erl_tar:extract/2 loops forever on a GNU sparse member with a trailing hole
Unverified legacy reference
URL: https://raw.githubusercontent.com/CVEProject/cvelistV5/main/cves/2026/96xxx/CVE-2026-96596.json
cve_program_cvelist_v5
-
Source reference
Unverified legacy reference
URL: https://github.com/erlang/otp/security/advisories/GHSA-phm5-m6cj-5382
Supplemental source - related, vendor-advisory
-
Source reference
Unverified legacy reference
URL: https://cna.erlef.org/cves/CVE-2026-96596.html
Supplemental source - related
-
Source reference
Unverified legacy reference
URL: https://osv.dev/vulnerability/EEF-CVE-2026-96596
Supplemental source - related
-
Source reference
Unverified legacy reference
URL: https://www.erlang.org/doc/system/versions.html
Supplemental source - x_version-scheme
-
Source reference
Unverified legacy reference
URL: https://github.com/erlang/otp/commit/fbf2c7194f6fce4b7b66dc0bcaa4f6b4b85e088f
Supplemental source - related
-
Source reference
Unverified legacy reference
URL: https://github.com/erlang/otp/commit/3086307f311b78b38644a7787a3aca6a3f95a9d5
Supplemental source - patch
-
Source reference
Unverified legacy reference
URL: https://github.com/erlang/rebar3/commit/23dbdb5d1f87f56902aef296c88a20049cd0c6e4
Supplemental source - related
Methodology and review provenance
AI-assisted synthesis based on stored public vulnerability evidence. System validation, approval state, and publication status do not by themselves establish human review of this revision. PatchSiren helps prioritize defensive review and does not prove exposure or remediation on any system.