CVE-2026-111497Brotli decoder out-of-bounds write
Decompressing attacker-controlled Brotli data can write out of bounds, leading to possible code execution.
In plain poop: someone flushes a brick, and the pipes burst into your server room.
Node.js October security releases for 22, 24 and 26: ten CVEs, including a Brotli RCE and TLS hostname bypasses
Four HIGH, three MEDIUM and three LOW. An out-of-bounds write in the Brotli decoder, dns.resolve truncating names at a NUL byte, and IP spellings that sneak past certificate hostname checks. The release also rejects the compromised eMudhra keys.
Send a server a crafted Brotli-compressed body and it writes past a buffer; or present a certificate for an IP written in a weird way and Node may accept it for a host it does not belong to.
A routine-looking security release with a few nasty pieces. The headline item is an out-of-bounds write in the Brotli decoder (CVE-2026-111497). Anything that decompresses untrusted Brotli data, such as HTTP bodies, uploads or proxied responses, should treat this as a remote code execution risk.
Two separate bugs (CVE-2026-105483 and CVE-2026-106069) let unusual IP spellings pass TLS hostname verification. That is the check that makes sure the certificate actually belongs to the server you meant to reach.
The same release ships a ca-cert update that rejects TLS chains containing the compromised eMudhra keys.
See the eMudhra incident. Already-resumed TLS sessions are not re-checked, so
restart services after upgrading.
We grade it L4. It is a core runtime with a remotely reachable memory bug, but there is no exploitation in the wild yet.
CVE-2026-111497Decompressing attacker-controlled Brotli data can write out of bounds, leading to possible code execution.
In plain poop: someone flushes a brick, and the pipes burst into your server room.
CVE-2026-105482Hostnames containing a NUL byte are cut short, so the name you check is not the name you resolve.
CVE-2026-105483An IP address written with fullwidth digits can pass TLS hostname verification. Affects 24.x and 26.x only.
CVE-2026-106069Hosts that loosely resolve to an IP address can slip past TLS hostname checks. Affects all three lines.
CVE-2026-105481A keep-alive socket can process a response written before its request was sent. Affects 22.x, 24.x and 26.x.
CVE-2026-106072DNS SANs can authenticate IP endpoints through non-canonical IPv4 hostnames. Affects 22.x, 24.x and 26.x.
CVE-2026-106074Startup snapshots and SEAs preserve randomUUID and randomInt entropy caches, repeating values across processes. Affects 22.x, 24.x and 26.x.
CVE-2026-106070ZipFile can return attacker-controlled prefix bytes after header validation fails. Affects 26.x.
CVE-2026-106071Wildcard radix lookup can grant excessive filesystem permissions. Affects 26.x.
CVE-2026-106073fs.realpathSync can bypass the Permission Model. Affects 22.x, 24.x and 26.x.
Run node -v on each box, then type the version or pick the closest match.
| Branch | Safe from | Status |
|---|---|---|
| Node.js 26 | 26.12.1 | Current |
| Node.js 24 | 24.22.1 | Active LTS |
| Node.js 22 | 22.23.4 | Maintenance LTS |
| Node.js 20 and older | none | End of life, affected, no fix |
Oct 21, 2026
Node.js ships security releases for 22, 24 and 26
Ten CVEs in total, plus dependency bumps for c-ares, ca-cert, OpenSSL (22/24), SQLite (22) and Undici.
Oct 21, 2026
Bundled CA store updated to NSS 3.131.1
TLS chains that contain the eight compromised eMudhra keys are now rejected.
We list each claim and who made it. Primary sources (the vendor, the researcher, the registry) are marked. Where reports disagree, we grade by the worst credible case.