Source: Qualys Security Blog
Author: Bhagyashree Thorat
URL: https://blog.qualys.com/product-tech/2026/10/27/cant-patch-node-js-yet-build-a-stopgap-with-the-controls-you-own
ONE SENTENCE SUMMARY:
Node.js patched critical Brotli RCE and DNS/TLS flaws; use discovery, mitigations, layered controls, then upgrade, restart, rebuild, and verify.
MAIN POINTS:
- October 21 Node.js release fixed 10 vulnerabilities, including Brotli RCE CVE-2026-111497.
- Patched versions are Node.js 22.23.4, 24.22.1, and 26.12.1.
- Qualys telemetry shows only 42,000 of ~3.3 million installations patched so far.
- About 1.7 million installations run end-of-life Node.js lines that will never be fixed.
- Runtime-embedded Node.js in containers, single executables, and serverless evades dependency checks.
- Prioritize internet-facing services decompressing untrusted Brotli; then user-supplied TLS host connections.
- Interim mitigations include limiting Brotli decompression size/ratio at proxies or WAF.
- DNS hardening uses dns.lookup, rejects NUL hostnames, and canonicalizes IPs before TLS.
- Additional risk reduction disables keep-alive to untrusted servers and treats Permission Model as advisory.
- Defense-in-depth adds WAF/IPS signatures and EDR behavior/exploit protections, but upgrading is essential.
TAKEAWAYS:
- Migrating off unsupported Node.js branches is mandatory because no patches will arrive.
- Inventory must capture hidden runtimes across hosts, containers, and application-bundled binaries.
- Compensating controls reduce exposure windows, especially for Brotli-based inbound exploit attempts.
- Remediation requires rebuild/redeploy and service restarts, not just package installation.
- Verification closes the loop: rescan to confirm QIDs resolved and controls correctly applied.