CVE-2026-106070: Node.js ZipFile returns attacker-controlled prefix bytes after failed ZIP header validation

Published Oct 21, 2026
·
Updated

A flaw in the Node.js zlib.ZipFile API can cause it to return bytes that do not belong to the requested entry after the local and central header validation fails. When zipEntry.modified is read on an archive whose local header does not match its central directory, either directly or while compacting the archive, the validation error is caught but the parsed local header is left cached without a content offset. A later content read then returns attacker-controlled bytes from the start of the file instead of rejecting the archive, and CRC-32 verification still passes because the attacker controls the central directory CRC. A Node.js-based scanner can therefore approve different content from what another ZIP implementation extracts from the same archive. This vulnerability affects Node.js 26.x.

Other sources

A flaw in the Node.js zlib.ZipFile API can cause it to return bytes that do not belong to the requested entry after the local and central header validation fails.

When zipEntry.modified is read on an archive whose local header does not match its central directory, either directly or while compacting the archive, the validation error is caught but the parsed local header is left cached without a content offset. A later content read then returns attacker-controlled bytes from the start of the file instead of rejecting the archive, and CRC-32 verification still passes because the attacker controls the central directory CRC. A Node.js-based scanner can therefore approve different content from what another ZIP implementation extracts from the same archive.

— Node.Js

Affected Software

15 affected componentsFixes available
Node.js Node.js>=26.0.0<26.12.1
26.12.1
bitnami/node>=25.0.0<26.12.1
26.12.1
bitnami/node-min>=25.0.0<26.12.1
26.12.1
ubuntu/nodejs*
ubuntu/nodejs*
ubuntu/nodejs*
ubuntu/nodejs*
ubuntu/nodejs*
ubuntu/nodejs*
ubuntu/nodejs*
ubuntu/nodejs*
debian/nodejs
18.20.4+dfsg-1~deb12u218.20.4+dfsg-1~deb12u320.19.2+dfsg-1+deb13u220.19.2+dfsg-1+deb13u324.21.0+dfsg+~cs24.13.4-124.22.2+dfsg+~cs24.19.2-1
alpine/nodejs<24.22.1-r0
24.22.1-r0
alpine/nodejs<24.22.1-r0
24.22.1-r0
alpine/nodejs-current<26.12.1-r0
26.12.1-r0

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 26.12.1
  2. Upgrade

    Upgrade bitnami/node to a version that resolves this vulnerability.

    Fixed in 26.12.1
  3. Upgrade

    Upgrade bitnami/node-min to a version that resolves this vulnerability.

    Fixed in 26.12.1
  4. Upgrade

    Upgrade debian/nodejs to a version that resolves this vulnerability.

    Fixed in 18.20.4+dfsg-1~deb12u2Fixed in 18.20.4+dfsg-1~deb12u3Fixed in 20.19.2+dfsg-1+deb13u2Fixed in 20.19.2+dfsg-1+deb13u3Fixed in 24.21.0+dfsg+~cs24.13.4-1Fixed in 24.22.2+dfsg+~cs24.19.2-1
  5. Upgrade

    Upgrade alpine/nodejs to a version that resolves this vulnerability.

    Fixed in 24.22.1-r0
  6. Upgrade

    Upgrade alpine/nodejs-current to a version that resolves this vulnerability.

    Fixed in 26.12.1-r0

Event History

Oct 21, 2026
CVE Published
via Node.js·10:39 AM
Data Sourced
via Node.js·10:39 AM
SeverityAffected Software
Data Sourced
via Node.js·10:00 PM
Description
Oct 23, 2026
Data Sourced
via Ubuntu·12:00 AM
RemedyDescriptionSeverityAffected Software
CVE Published
via MITRE·04:15 PM
Data Sourced
via MITRE·04:15 PM
DescriptionSeverityWeakness
Data Sourced
via OSV·05:17 PM
DescriptionSeverityAffected Software
Data Sourced
via NVD·05:17 PM
DescriptionSeverityWeakness
Exploit Published
via GitHub·11:48 PM
Oct 29, 2026
Advisory Published
via OSV·08:55 AM

Parent advisories

This vulnerability appears in the following advisories.

Frequently Asked Questions

1

What capability must an attacker have to exploit this issue?

The attacker must be able to provide ZIP data to a Node.js application using ZipFile and cause ZIP header validation to fail. The affected behavior can then return prefix bytes controlled by that ZIP data.

2

Which release information should be reviewed for remediation?

The supplied references include the Node.js October 2026 security releases announcement and the Node.js v26.12.1 release information. The provided data does not identify other fixed versions.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203