Act this weekWhat happenedA critical flaw in Brotli, a data compression library, lets specially crafted data corrupt memory, crash software or let an attacker run their own code.
Who is affectedAnyone running Node.js, .NET or Python web tools such as urllib3, requests, httpx and aiohttp with a vulnerable Brotli version, plus apps that bundle their own copy.
What to do- 1Update Node.js, .NET and Python packages to the latest fixed versions.
- 2Restart affected programs and rebuild and redeploy any container images.
- 3Check for apps that bundle their own Brotli copy, since updating the system copy will not fix them.
- 4If you cannot update yet, turn off Brotli in Python apps and block Brotli requests at your firewall.
A serious flaw in a widely used piece of web software is forcing emergency updates. It sits in Brotli, a tool that shrinks data so it travels faster online. Researchers call the flaw HTTP2Shell, and it is tracked as CVE-2026-111497. Microsoft pushed an emergency fix for .NET on Sunday. Fixes for Node.js and Google's Brotli were released October 21.
What happened
Brotli is an open-source project built and maintained by Google. Many programs use it to unpack compressed data. The flaw lets specially crafted compressed data trick the unpacking step into writing past the space set aside for it. That damages nearby memory. The result can be a crash, exposed data, or an attacker running their own code on the system.
The flaw has several names, including Broccoli2Shell and Node2Shell, because it was first spotted in Node.js. Researchers later found the same weakness could affect software in other ecosystems. Affected Brotli versions are 1.0.3 through 1.0.9, 1.1.0 and 1.2.0.
Why it matters
An attacker does not need to break in first. The program only has to unpack bad data. That could happen when an app fetches a web page that returns a malicious compressed reply. It could also happen when someone sends a compressed request straight to a server. Microsoft warned that on .NET, a successful attack allows privilege escalation, meaning an attacker gains more control than they should have.
Security firm Imperva has confirmed the flaw can lead to remote code execution. Working attack examples are public. No attacks in the real world have been reported so far, but the advice is to treat the updates as a priority.
Who it affects
The warning is aimed at people who run the software, such as developers and IT providers. Node.js is affected. So are Python web tools including urllib3, requests, httpx and aiohttp when they use a vulnerable Brotli decoder. Other apps that carry their own copy of Brotli can be affected too. The warnings point to the people who run the affected software, not to ordinary visitors to a website.
What to do
If your business runs websites or apps built on Node.js, .NET or Python, ask your developer or IT provider to confirm the fixes are installed. The alert box above lists the steps. Two details are easy to miss. Updating the system copy of Brotli does not protect Node.js or apps with their own copy. Blocking incoming Brotli requests also leaves the malicious-reply route open.
What happens next
The upstream Brotli fixes were first added to the project's code in February. Stable fixes for users came October 21, public details followed the next day, and Python packages with the fix arrived October 23. With attack examples now public, the main open question is whether real attacks begin. None have been reported yet.
The takeawayAsk your developer or IT provider to confirm Node.js, .NET and Python apps are patched and restarted, including any app with its own Brotli copy.