HTTP2Shell-sårbarheten i Brotli har lett till akuta säkerhetsuppdateringar i flera programvaruekosystem. Sårbarheten, som spåras som CVE-2026-111497, kan orsaka krascher, exponera känsligt minnesinnehåll och potentiellt möjliggöra fjärrkörning av kod när applikationer dekomprimerar skadlig data.

Forskare identifierade först problemet i Node.js innan de upptäckte en bredare exponering i den underliggande Brotli-avkodaren. Därför är sårbarheten även känd under namnen Node2Shell och Broccoli2Shell.

Sårbarheten sträcker sig bortom Node.js

Brotli är Googles öppna teknik för förlustfri komprimering, som minskar filstorlekar utan att förändra det ursprungliga innehållet. Sårbarheten påverkar avkodarversionerna 1.0.3 till 1.0.9 samt versionerna 1.1.0 och 1.2.0.

Trots namnet påverkar HTTP2Shell inte enbart HTTP/2. Alla applikationer som dekomprimerar angriparkontrollerad data genom en sårbar Brotli-implementation kan vara exponerade.

Programvara som potentiellt påverkas omfattar Python-baserade HTTP-klienter som requests, httpx, urllib3[brotli] och aiohttp[speedups]. Exponeringen beror dock på om deras konfiguration använder en berörd avkodare.

Microsoft har också släppt akuta .NET-uppdateringar. Företagets säkerhetsmeddelande varnar för att framgångsrikt utnyttjande kan möjliggöra privilegieeskalering på system med sårbara konfigurationer.

Så orsakar HTTP2Shell-sårbarheten i Brotli minneskorruption

Felet uppstår när avkodaren stöter på ett ogiltigt blockbyte i en särskilt utformad komprimerad dataström. I stället för att avvisa den felaktiga datan tolkar avkodaren tillståndet som en begäran om ytterligare indata.

Därför fortsätter den strömmande avkodaren att lägga till byte i en intern buffert på åtta byte. Dessa skrivoperationer överskrider till slut buffertens gränser och skadar närliggande minnesområden.

Angripare kan utnyttja detta beteende genom att leverera ett skadligt komprimerat HTTP-svar till en applikation som hämtar en webbadress. Alternativt kan de skicka en komprimerad förfrågan direkt till en server som accepterar Brotli-data.

Konsekvenserna omfattar processkrascher, exponering av minnesinnehåll och möjlig fjärrkörning av kod. Säkerhetsforskare har också visat att sårbarheten kan utnyttjas för att köra kod.

Korrigerade versioner finns för flera plattformar

Utvecklare lade in korrigeringar i den ursprungliga källkoden i februari. Stabila uppdateringar för Brotli och Node.js nådde dock användarna först den 21 oktober, följt av ett offentligt avslöjande den 22 oktober. Uppdaterade Python-paket blev tillgängliga den 23 oktober.

De korrigerade versionerna omfattar:

ProgramvaraKorrigerade versioner
Google Brotli1.0.10, 1.1.1, 1.2.1
Node.js22.23.4, 24.22.1, 26.12.1
Python Brotli1.2.1
Python brotlicffi1.2.1.0

Offentliga konceptbevis för exploatering av HTTP2Shell-sårbarheten i Brotli finns nu tillgängliga. Trots detta hade inga rapporter om skadligt utnyttjande i verkliga attacker framkommit vid publiceringstillfället.

Uppdateringar kräver kontroller utöver systembiblioteken

Administratörer måste starta om berörda processer efter uppdateringen. De måste också bygga om och distribuera berörda containeravbilder på nytt så att applikationerna använder de korrigerade komponenterna.

Att enbart uppdatera operativsystemets Brotli-bibliotek kan innebära att applikationer fortfarande är exponerade. Node.js-installationer och annan programvara kan innehålla egna kopior som kräver separata uppdateringar.

Om omedelbar uppdatering inte är möjlig omfattar tillfälliga åtgärder att ta bort Brotli-stöd från Python-applikationer och blockera inkommande Brotli-komprimerade förfrågningar via en proxyserver eller brandvägg. Filtrering av inkommande förfrågningar förhindrar dock inte i sig att applikationer tar emot skadliga komprimerade HTTP-svar.


0 svar till ”HTTP2Shell-sårbarhet i Brotli leder till akuta säkerhetsuppdateringar”