A memory-corruption flaw in Google's Brotli decoder affects far more than Node.js. Bun, the Python Brotli and brotlicffi packages, Envoy proxies and Istio all ship their own copies of the vulnerable code, tracked as CVE-2026-111497. Crafted compressed data can overwrite past a buffer's end, causing crashes, memory leaks or attacker-controlled code execution.
Imperva researchers demonstrated code execution on one unpatched Node.js build. That has not been shown on the other software, and no real-world attacks have been reported. OpenAI's Codex Security team, which reported the flaw, describes it as enabling unauthenticated remote code execution in Brotli.
Exposure requires decoding Brotli data someone else controls. In Node.js and Bun, that means fetch() reading a response sent with Content-Encoding: br, or request-body parsers unpacking a Brotli upload. Envoy and Istio are only reachable when Brotli decompression is switched on. In Python, merely having the Brotli or brotlicffi package installed can expose an app, because HTTP clients like requests and httpx decode Brotli responses automatically.
The fix was added to Brotli's source in February but no release carried it until October 21, when Node.js and Google shipped patches. Because each program bundles its own copy, every product must update separately. Google rates the flaw 9.2 critical; Red Hat scores it 8.1. Users should update, restart services and rebuild container images. Where updating is not possible, reject Content-Encoding: br requests and responses, and uninstall the Python packages so clients fall back to gzip and deflate.
Source: The Hackers News
