Skip to main content
← All vulnerabilities
CVE-2026-45820GHSA-PX8P-9VWX-VF98

fflate through 0.8.2 is vulnerable to denial of service via an infinite loop in unzipSync().

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 0.4.9, 0.5.4, 0.6.11, 0.7.5, 0.8.3
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: yes
  • Technical impact: partial

Summary

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.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: yes · Technical impact: partial

  3. Record last updated

Affected versions

  • 101arrowz fflate

    From 0.4.5 · through 0.4.8; From 0.5.0 · through 0.5.3; From 0.6.0 · through 0.6.10; From 0.7.0 · through 0.7.4; From 0.8.0 · through 0.8.2

  • fflatenpm

    From 0.4.5 · fixed in 0.4.9

  • fflatenpm

    From 0.5.0 · fixed in 0.5.4

  • fflatenpm

    From 0.6.0 · fixed in 0.6.11

  • fflatenpm

    From 0.7.0 · fixed in 0.7.5

  • fflatenpm

    From 0.8.0 · fixed in 0.8.3

References 2

GitHub · 101arrowz/fflate

npmjs.com