Node.js · runtime · 2026-10-21

Node.js Brotli decoder out-of-bounds write

CVE CVE-2026-111497 High

Released the same day as the PHP fixes but a separate Node.js issue. It is a reminder that 'server runtime' is not one vulnerability class and that Node.js core is not the same as an npm package.

Patch status
Patch available
Exploitation
Exploitation unknown
CISA KEV
Not listed

Key facts

Each fact is linked to the source that supports it.
  1. Node.js fixed CVE-2026-111497 in 22.23.4, 24.22.1 and 26.12.1 on 21 October 2026. Node.js Project
  2. The Node.js advisory rates the issue High; NVD later published a CVSS v4.0 score of 9.2 from Google's CNA. Node.js Project NIST NVD
  3. NVD's record status at research time was 'Awaiting Analysis'. NIST NVD

Summary

A crafted Brotli-compressed stream can corrupt adjacent decoder state memory, disclose memory, cause denial of service, or potentially execute arbitrary code. NVD's later CVSS v4.0 assessment is 9.2.

Component: Node.js core / bundled Brotli decoder. Disclosed: 21 October 2026. Last verified: 22 October 2026, 16:45 UTC.

Affected versions

Product Affected range Note
Node.js 22.x All 22.x before 22.23.4 Official Node.js advisory lists 22.x as affected.
Node.js 24.x All 24.x before 24.22.1 Official Node.js advisory lists 24.x as affected.
Node.js 26.x All 26.x before 26.12.1 Official Node.js advisory lists 26.x as affected.
Brotli library 1.0.3 through 1.2.0 NVD describes the underlying library range. Node.js bundles its own decoder.

Version ranges preserve the source wording. A distribution package may contain a backport without changing this string. Node.js Project NIST NVD

Fixed versions

Product Fixed version Note
Node.js 22.x 22.23.4 Security release, 21 October 2026.
Node.js 24.x 24.22.1 Security release, 21 October 2026.
Node.js 26.x 26.12.1 Security release, 21 October 2026.
Brotli library 1.0.10, 1.1.1 or 1.2.1 NVD remediation wording.

Fixed in Node.js 22.23.4, 24.22.1 and 26.12.1. If your application bundles a separate Brotli library, that copy needs its own update. Node.js Project NIST NVD

Conditions and scope

These are the conditions named by the sources. They are not a score and not a prediction.

  • The application processes attacker-controlled Brotli-compressed data with an affected decoder.
  • NVD says the flaw is in the Brotli decoder across all platforms.
  • The official Node.js advisory does not publish a specific attack path; the input condition is an inference from the affected component.

Exploitation status

No public confirmation of exploitation was found in the sources checked for this page. That is not proof it was never exploited.

CISA KEV — not listed

Not present in the downloaded CISA KEV catalog.

Catalog version 2026.10.21 · checked 22 October 2026, 16:53 UTC .

Severity and scoring

Scores are listed with their version and assessor. Different CVSS versions, and different assessors, are not averaged. The presence of a high score does not establish exploitation, and a lower score does not make a memory-safety defect harmless.

9.2
CVSS v4.0 · Critical
Google CNA via NVD
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Scope and separation from PHP2Shell

This is a Node.js core flaw, not an npm package flaw and not part of PHP2Shell. It was released on the same day, which is a coincidence of the security calendar rather than evidence of a shared root cause.

Node.js bundles a Brotli decoder. The official advisory says an out-of-bounds write 'permits remote code execution'. NVD's fuller description attributes the buffer overflow to Brotli 1.0.3 through 1.2.0 and lists memory corruption, disclosure and denial of service as possible outcomes.

Response

Update the Node.js runtime to the fixed release for your line, rebuild container images, and confirm the running process rather than the version in a lockfile. If the application also ships a standalone Brotli library, update that separately.

No exploitation has been publicly confirmed in the sources checked here. Treat that as an evidence boundary, not a clean bill of health.

What to do

Sources

Sources for this record

Last verified 22 October 2026, 16:45 UTC. A statement that no evidence was found in checked sources is not a statement that an event never occurred.

Search PHP2Shell Live

Type to search the local index Results stay in your browser
↑ ↓ move Enter open Esc close