Description
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**.
Published: 2026-10-23
Score: 3.7 Low
EPSS: < 1% Very Low
KEV: No
AI Analysis

Analysis and contextual insights are available on OpenCVE Cloud.

Remediation

No solution or workaround provided in the CVE record.

Additional remediation guidance may be available on OpenCVE Cloud.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 26 Oct 2026 13:15:00 +0100

Type Values Removed Values Added
Title Node.js zlib.ZipFile Header Validation Flaw Exposes Attacker-Controlled Data nodejs: Node.js: Security inspection bypass via crafted ZIP archive header mismatch
Weaknesses CWE-754
References
Metrics threat_severity

None

cvssV3_1

{'score': 3.7, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N'}

threat_severity

Low


Sat, 24 Oct 2026 00:00:00 +0200

Type Values Removed Values Added
First Time appeared Nodejs
Nodejs nodejs
Vendors & Products Nodejs
Nodejs nodejs

Fri, 23 Oct 2026 20:15:00 +0200

Type Values Removed Values Added
Title Node.js zlib.ZipFile Header Validation Flaw Exposes Attacker-Controlled Data

Fri, 23 Oct 2026 18:30:00 +0200

Type Values Removed Values Added
Description 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**.
Weaknesses CWE-840
References
Metrics cvssV3_0

{'score': 3.7, 'vector': 'CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: hackerone

Published:

Updated: 2026-10-23T16:15:05.741Z

Reserved: 2026-10-06T15:00:00.655Z

Link: CVE-2026-106070

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Awaiting Analysis

Published: 2026-10-23T17:17:19.917

Modified: 2026-10-23T19:42:24.553

Link: CVE-2026-106070

cve-icon Redhat

Severity : Low

Publid Date: 2026-10-23T16:15:05Z

Links: CVE-2026-106070 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-26T15:00:19Z

Weaknesses
  • CWE-754

    Improper Check for Unusual or Exceptional Conditions

  • CWE-840