GitHub Advisoryadvisory · npm

GHSA-px8p-9vwx-vf98 fflate unzipSync can enter an infinite loop when parsing malformed ZIP64 archives

MEDIUM Published 2026-07-22 Modified 2026-09-03 Official page ↗
Aliases
CVE-2026-45820
Ecosystem
npm
Packages
fflate
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weaknesses
CWE-400
Reviewed
2026-09-03

Affected packages

• npm fflate: >= 0.4.5, < 0.4.9 → fixed in 0.4.9 • npm fflate: >= 0.5.0, < 0.5.4 → fixed in 0.5.4 • npm fflate: >= 0.6.0, < 0.6.11 → fixed in 0.6.11 • npm fflate: >= 0.7.0, < 0.7.5 → fixed in 0.7.5 • npm fflate: >= 0.8.0, < 0.8.3 → fixed in 0.8.3

Description

fflate through 0.8.2 is vulnerable to denial of service via an infinite loop in unzipSync(). A crafted ZIP archive with a central directory entry declaring compressed_size=0xFFFFFFFF (ZIP64 sentinel) but missing the required ZIP64 extra field tag 0x0001 causes z64e() to loop indefinitely due to out-of-bounds reads returning undefined, which coerces to 0, keeping the loop condition permanently true.

Related

Alias · CVE (1)

  • CVE-2026-45820 fflate through 0.8.2 is vulnerable to denial of service via an infinite loop in unzipSync(). vulnerability

Weakness · CWE (1)

  • CWE-400 Uncontrolled Resource Consumption weakness

References