Off-by-one in yauzl - CVE-2026-31988

 

Off-by-one in yauzl - CVE-2026-31988

Published: April 22, 2026


Vulnerability identifier: #VU126854
CSH Severity: Low
CVSS v4.0: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:U/U:Clear
CVE-ID: CVE-2026-31988
CWE-ID: CWE-193
Exploitation vector: Remote access
Exploit availability: No public exploit available
Vendor: thejoshwolfe
Affected software:
yauzl

Detailed vulnerability description

The vulnerability allows a remote attacker to perform a denial of service attack.

The vulnerability exists due to an off-by-one error in the NTFS extended timestamp extra field parser within the getLastModDate() function. The while loop condition checks cursor < data.length + 4 instead of cursor + 4 <= data.length, allowing readUInt16LE() to read past the buffer boundary. A remote attacker can cause a denial of service (process crash via ERR_OUT_OF_RANGE exception) by sending a crafted zip file with a malformed NTFS extra field.


How to mitigate CVE-2026-31988

Install updates from vendor's website.

Sources