jsonscraper

Zranitelnost Brotli zasáhla .NET a Node.js: jak aplikace zkontrolovat a aktualizovat

CVE-2026-111497 souvisí se zpracováním speciálně vytvořených dat Brotli. Ověřte nejen verzi runtime, ale také skutečné použití dekodéru.

Redakční zásady Nahlásit chybu

Aplikace může přijímat běžný provoz HTTPS, a přesto zpracovávat nebezpečný vstup, pokud rozbaluje data Brotli dodaná uživatelem. Microsoft 25. října 2026 vydal mimořádné aktualizace .NET, které řeší přetečení vyrovnávací paměti v dekodéru Brotli; zranitelnost má označení CVE-2026-111497. Node.js zahrnul opravu téže zranitelnosti do samostatného bezpečnostního vydání z 21. října. Prvním krokem pro vývojáře je najít cestu od externích dat k dekodéru a poté aktualizovat runtime a aplikaci znovu sestavit nebo restartovat.

Článek: Zranitelnost Brotli zasáhla .NET a Node.js: jak aplikace zkontrolovat a aktualizovat
Shrnutí: Microsoft 25. října vydal mimořádné opravy .NET kvůli zranitelnosti dekodéru Brotli CVE-2026-111497. Node.js zahrnul opravu téže zranitelnosti do bezpečnostních vydání z 21. října. Při posuzování rizika zjistěte, které aplikace dekódují nedůvěryhodná data a jaká verze knihovny běží v nasazeném prostředí.
Role obrázku: titulní — ústřední myšlenka
Rubrika: 
Vizuální námět: ilustrace komprese Brotli
© jsonscraper · ilustrace vytvořená umělou inteligencí

Podle popisu společnosti Microsoft může zranitelnost v .NET umožnit neověřenému útočníkovi číst nebo poškozovat paměť procesu, což může vést k úniku dat, odepření služby nebo zvýšení oprávnění. Opravy jsou k dispozici pro .NET 8, 9 a 10 a také .NET 11 Release Candidate 3. Pro .NET 8 jsou uvedeny runtime 8.0.33 a SDK 8.0.133 nebo 8.0.427. Zranitelnost se .NET Frameworku netýká.

Kde vzniká riziko

Riziko vzniká, když aplikace předá nedůvěryhodný proud Brotli zranitelnému dekodéru. V .NET k tomu může docházet při použití decomprese požadavků ASP.NET Core, automatickém rozbalování odpovědí přes HttpClient nebo přímém volání API z System.IO.Compression, například BrotliStream a BrotliDecoder. Doporučení pro .NET vyjmenovává tyto cesty a uvádí, že dekomprese příchozích požadavků i automatické rozbalování odpovědí jsou ve výchozím nastavení vypnuté.

Inventarizace balíčků je pouze začátek kontroly. Prohledejte konfigurace middleware a HTTP klientů, přímá volání dekodéru i komponenty třetích stran, které přijímají komprimovaná data. Zjistěte, zda taková data přicházejí od klientů, webhooků, proxy nebo externích API a jaká omezení velikosti a doby zpracování se uplatňují před rozbalením. Pomůže vám to určit, kde zranitelný kód přijímá data ovládaná zvenčí.

Aktualizace .NET

Nainstalujte aktualizaci pro používanou větev: .NET 8 — 8.0.33, .NET 9 — 9.0.22, .NET 10 — 10.0.14; pro .NET 11 použijte Release Candidate 3. U aplikací závislých na frameworku nainstalujte aktualizovaný runtime a aplikaci restartujte. Samostatně distribuované aplikace je nutné znovu sestavit a publikovat: aktualizace runtime na hostiteli nenahradí jeho kopii zahrnutou v aplikaci. Kontejnery znovu sestavte a nasaďte s aktualizovanými obrazy .NET.

Pro NativeAOT při opětovném publikování použijte také aktualizované SDK a balíčky runtime. Pokud opravu zatím nelze nasadit, dočasně zakažte Brotli na zjištěných vstupních cestách, které přijímají nedůvěryhodná data. Otestujte běžné požadavky i integrace: vypnutí komprese může změnit zpracování klientů, kteří odesílají komprimovaná těla požadavků.

Zkontrolujte Node.js a systémové závislosti

Projekt Node.js oznámil zranitelnost 21. října: zasažen je dekodér Brotli integrovaný v Node.js 22.x, 24.x a 26.x. Bezpečnostní vydání Node.js uvádí opravené verze 22.23.4, 24.22.1 a 26.12.1. Aktualizujte používanou podporovanou větev a službu restartujte. Podle popisu projektu problém vzniká, když aplikace rozbaluje data dodaná útočníkem pomocí node:zlib; poškození paměti může vést k pádu, úniku paměti nebo vzdálenému spuštění kódu.

Zkontrolujte také závislosti dodávané odděleně od systémového Node.js nebo .NET. Ověřte verze Brotli v kontejnerech a sestavovacích artefaktech a po nasazení kontrolu zopakujte. V CI připněte aktualizovaný základní obraz a zahrňte kontrolu verzí zranitelných knihoven do běžného procesu sestavení.

Stručný postup

  1. Sestavte seznam aplikací, SDK, runtime, kontejnerů a sestavení NativeAOT, které používají Brotli.
  2. Najděte místa, kde externí data procházejí automatickým nebo přímým dekódováním.
  3. Aktualizujte .NET, Node.js a samostatně dodávané knihovny na opravené verze; samostatné aplikace a kontejnery znovu sestavte.
  4. Restartujte procesy a ověřte verze v běžícím prostředí, nikoli pouze v souborech projektu.
  5. Dokud nebude oprava nasazena, omezte zpracování nedůvěryhodného vstupu Brotli na zjištěných zranitelných cestách.

Priorita závisí na kombinaci dvou faktorů: zda je přítomna zranitelná komponenta a zda jí lze předat speciálně vytvořený komprimovaný proud. Aktualizace závadu odstraní, zatímco mapa vstupních cest pomůže ověřit, že se oprava dostala do procesů, samostatných sestavení i kontejnerů.

People

No people listed for this article yet.

Keep readingGitHub CLI přidává OAuth tokeny s omezenou platností: jak je zapnout a ověřit integrace
Read the next article

Proměňte přečtené ve funkční integraci

Prozkoumejte API sociálních dat jsonscraper, testujte požadavky a sestavte další workflow.

Prozkoumat API