{"id":183985,"date":"2026-10-24T23:40:31","date_gmt":"2026-10-24T21:40:31","guid":{"rendered":"https:\/\/prohoster.info\/blog\/news\/kriticheskaya-uyazvimost-v-dekodirovshhike-brotli-zatragivayushhaya-node-js-bun-brauzery-http-klienty-i-drugie-proekty"},"modified":"2026-10-24T23:40:36","modified_gmt":"2026-10-24T21:40:36","slug":"critical-vulnerability-in-the-brotli-decoder-affecting-node-js-bun-browsers-http-clients-and-other-projects","status":"publish","type":"post","link":"https:\/\/prohoster.info\/nl\/blog\/news\/critical-vulnerability-in-the-brotli-decoder-affecting-node-js-bun-browsers-http-clients-and-other-projects","title":{"rendered":"Kritieke kwetsbaarheid in de Brotli-decoder die van invloed is op Node.JS, Bun, browsers, HTTP-clients en andere projecten","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>In de referentiebibliotheek voor de decodering van het gecomprimeerde dataformaat Brotli is een kwetsbaarheid ontdekt (CVE-2026-111497, codenaam Broccoli2Shell en HTTP2Shell), die leidt tot een bufferoverflow bij de verwerking van speciaal gevormde gecomprimeerde gegevens. Volgens Google kan deze kwetsbaarheid worden gebruikt voor remote code execution bij aanvallen op projecten die de offici\u00eble implementatie van de Brotli-decoder gebruiken. Tot de getroffen projecten behoren: Node.js, Bun, Envoy, Istio, web browsers, proxyservers, HTTP-clients, HTTP-servers, archiveringsprogramma's, proxyservers, UEFI-firmware, JPEG XL-viewers, content decodering bibliotheken voor Python, Ruby, Java, PHP en .NET, en de bijbehorende afhankelijkheden. <\/p>\n<p>Het probleem werd in februari van dit jaar door OpenAI ontdekt en geblokkeerd in de codebase van Brotli door onjuiste streams tijdens decodering te negeren. Op 22 oktober zijn de correctieve versies Brotli 1.0.10, 1.1.1 en 1.2.1 uitgebracht, waarin expliciet werd vermeld dat de kwetsbaarheid was verholpen en het probleem zelf werd opgelost. Op dezelfde dag werd er een prototype-exploit gemaakt, waarmee code op afstand kon worden uitgevoerd onder laboratoriumomstandigheden, met behulp van niet-standaard builds (in standaard builds kwam een crash voor). Later documenteerde Imperva een aanval op standaard builds van Node.js 24.22.0 in een Linux-omgeving op een ARM64-systeem.<\/p>\n<p>De kwetsbaarheid leidt tot een buffer overflow door onjuiste foutverwerking tijdens het parseren van blokken in de gecomprimeerde stroom. De functie DecodeBlockTypeAndLength() retourneerde in plaats van de foutcode alleen de waarden true en false, waardoor de aanroepende code niet kon onderscheiden of de stroom corrupt was of dat een status vereiste om extra gegevens naar de functie door te geven. In het geval dat een onjuiste bloktype in de stroom werd opgegeven, beschouwde de decoder het niet als een fout, maar als een toestand van gegevensgebrek die aanvullende lezing uit de stroom vereiste. Maar omdat de toegewezen buffer niet was berekend op de extra gelezen gegevens, werden deze buiten zijn grenzen geschreven, wat het interne toestand van de decoder be\u00efnvloedde.<\/p>\n<p>Kwetsbare projecten:<\/p>\n<ul>\n<li class=\"l\"> De referentiebibliotheek brotli, het probleem doet zich voor vanaf versie 1.0.3 en is verholpen in de updates 1.0.10, 1.1.1 en 1.2.1. De kwetsbaarheid treft applicaties en bibliotheken die gebruik maken van de libbrotlidec-bibliotheek.\n<li class=\"l\"> JavaScript-platform Node.js, probleem opgelost in de updates 26.12.1, 24.22.1 en 22.23.4. Aanvallen kunnen gericht zijn op applicaties die gebruikmaken van de fetch()-methode voor externe contentaanvragen, die automatisch HTTP-antwoorden met de header 'Content-Encoding: br' decoderen. De kwetsbaarheid manifesteert zich ook bij directe aanroep van de zlib.brotliDecompress*(), createBrotliDecompress() en brotli.decompress() methoden voor het uitpakken van externe inhoud of bij ontvangst van HTTP-aanvragen met parsing via de Express 5 en body-parser 2.x bibliotheken.\n<li class=\"l\"> Python-pakketten brotli en brotlicffi (oplossing aangeboden in versie 1.2.1) en de projecten die deze gebruiken, waaronder populaire bibliotheken zoals urllib3, aiohttp, httpx en Scrapy, die antwoorden decoderen met de header 'Content-Encoding: br' bij toegang tot externe webbronnen.\n<li class=\"l\"> HTTP-servers, HTTP-proxies, HTTP-clients en webbrowsers die Brotli-compressie ondersteunen ('Accept-Encoding: br'). In Apache httpd is mod_brotli inbegrepen (standaard uitgeschakeld). Voor nginx is er een externe module ngx_brotli (de brotli-versie in afhankelijkheden is ge\u00fcpdatet naar de actuele versie). In Chrome\/Chromium en Firefox is het probleem al opgelost in een van de eerdere updates. In de proxy-<a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/nl\/server\/dts-dronten\/\"   title=\"de server\" data-wpil-keyword-link=\"linked\">de server<\/a> Envoy is de kwetsbaarheid opgelost in de versies 1.40.0, 1.39.3, 1.38.6, 1.37.8, 1.36.12.\n<li class=\"l\"> .NET runtime wanneer de BrotliDecoder, BrotliStream en HttpClient methoden in de toepassing worden gebruikt. De kwetsbaarheid is nog niet opgelost.\n<li class=\"l\"> PHP-extensie brotli bij gebruik van de functie brotli_uncompress(). De oplossing is in voorbereiding.\n<li class=\"l\"> Ruby-pakket brotli bij gebruik van de methode Brotli.inflate. De kwetsbaarheid is nog niet opgelost.\n<li class=\"l\"> Database DuckDB bij het importeren van gecomprimeerde Parquet-bestanden. De oplossing is in voorbereiding.\n<li class=\"l\"> Database ClickHouse. De oplossing is in voorbereiding.\n<li class=\"l\"> Database YDB. De kwetsbaarheid is nog niet opgelost.\n<li class=\"l\"> Apache Arrow bij het importeren van gecomprimeerde Parquet-bestanden. De oplossing is in voorbereiding.\n<li class=\"l\"> libjxl (bij het comprimeren van metadata in JPEG XL wordt Brotli gebruikt).<br \/>\nDe oplossing is in voorbereiding.<\/p>\n<li class=\"l\"> Archivers NanaZip, 7-Zip-zstd en p7zip bij het uitpakken van br-bestanden. De kwetsbaarheid is niet opgelost.\n<li class=\"l\"> MuPDF. De kwetsbaarheid is niet opgelost.\n<li class=\"l\"> UEFI-firmware op basis van EDK II en UEFITool, gecomprimeerd met Brotli. Oplossing in voorbereiding \u2014 EDK II en UEFITool.\n<li class=\"l\"> JavaScript-platform Bun. De kwetsbaarheid is opgelost in versie 1.4.4.\n<li class=\"l\"> Platform voor het beheren van microservices Istio. De kwetsbaarheid is opgelost in de versies 1.29.9, 1.30.6 en 1.31.2.\n<li class=\"l\"> curl en libcurl, de kwetsbaarheid doet zich voor bij aanwezigheid van een kwetsbare versie van libbrotlidec in de afhankelijkheden.\n<li class=\"l\"> Parsers voor het Web Open Font-formaat (WOFF), waarin wordt gebruikt<br \/>\nBrotli.<\/p>\n<li class=\"l\"> Brotli4j, SumatraPDF, Ghostscript, CatBoost en YTsaurus. De kwetsbaarheid is verholpen in een van de updates.\n<\/ul>\n<p>Bron: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=66537\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435 \u0441 \u044d\u0442\u0430\u043b\u043e\u043d\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0434\u0435\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430 \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u0441\u0436\u0430\u0442\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 Brotli \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0430 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c (CVE-2026-111497, \u043a\u043e\u0434\u043e\u0432\u044b\u0435 \u0438\u043c\u0435\u043d\u0430 Broccoli2Shell \u0438 HTTP2Shell), \u043f\u0440\u0438\u0432\u043e\u0434\u044f\u0449\u0430\u044f \u043a \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u0431\u0443\u0444\u0435\u0440\u0430 \u043f\u0440\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u043d\u044b\u0445 \u0441\u0436\u0430\u0442\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445. \u041f\u043e \u0434\u0430\u043d\u043d\u044b\u043c Google \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u043b\u044f \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u043e\u0433\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u0434\u0430 \u043f\u0440\u0438 \u0430\u0442\u0430\u043a\u0435 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u044b, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u0435 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u0443\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0434\u0435\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430 Brotli. \u0421\u0440\u0435\u0434\u0438 \u0437\u0430\u0442\u0440\u0430\u0433\u0438\u0432\u0430\u0435\u043c\u044b\u0445 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c\u044e \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432: Node.js, Bun, Envoy, Istio, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":10,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-183985","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435 \u0441 \u044d\u0442\u0430\u043b\u043e\u043d\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0434\u0435\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430 \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u0441\u0436\u0430\u0442\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 Brotli \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0430 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c (CVE-2026-111497, \u043a\u043e\u0434\u043e\u0432\u044b\u0435 \u0438\u043c\u0435\u043d\u0430 Broccoli2Shell \u0438 HTTP2Shell), \u043f\u0440\u0438\u0432\u043e\u0434\u044f\u0449\u0430\u044f \u043a \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u0431\u0443\u0444\u0435\u0440\u0430 \u043f\u0440\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Alexander Kovalev\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/nl\/blog\/news\/critical-vulnerability-in-the-brotli-decoder-affecting-node-js-bun-browsers-http-clients-and-other-projects\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"nl_NL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c \u0432 \u0434\u0435\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0435 Brotli, \u0437\u0430\u0442\u0440\u0430\u0433\u0438\u0432\u0430\u044e\u0449\u0430\u044f Node.JS, Bun, \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u044b, HTTP-\u043a\u043b\u0438\u0435\u043d\u0442\u044b \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u044b | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435 \u0441 \u044d\u0442\u0430\u043b\u043e\u043d\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0434\u0435\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430 \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u0441\u0436\u0430\u0442\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 Brotli \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0430 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c (CVE-2026-111497, \u043a\u043e\u0434\u043e\u0432\u044b\u0435 \u0438\u043c\u0435\u043d\u0430 Broccoli2Shell \u0438 HTTP2Shell), \u043f\u0440\u0438\u0432\u043e\u0434\u044f\u0449\u0430\u044f \u043a \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u0431\u0443\u0444\u0435\u0440\u0430 \u043f\u0440\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/nl\/blog\/news\/critical-vulnerability-in-the-brotli-decoder-affecting-node-js-bun-browsers-http-clients-and-other-projects\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-24T21:40:31+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-24T21:40:36+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47 Kritieke kwetsbaarheid in de Brotli-decoder die Node.JS, Bun, webbrowsers, HTTP-clients en andere projecten raakt | ProHoster","description":"In de bibliotheek met de referentie-implementatie van de decoder voor het datacompressieformaat Brotli is een kwetsbaarheid ontdekt (CVE-2026-111497, codenaam Broccoli2Shell en HTTP2Shell), die leidt tot een bufferoverflow bij verwerking.","canonical_url":"https:\/\/prohoster.info\/nl\/blog\/news\/critical-vulnerability-in-the-brotli-decoder-affecting-node-js-bun-browsers-http-clients-and-other-projects","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"nl_NL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c \u0432 \u0434\u0435\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0435 Brotli, \u0437\u0430\u0442\u0440\u0430\u0433\u0438\u0432\u0430\u044e\u0449\u0430\u044f Node.JS, Bun, \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u044b, HTTP-\u043a\u043b\u0438\u0435\u043d\u0442\u044b \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u044b | ProHoster","og:description":"\u0412 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435 \u0441 \u044d\u0442\u0430\u043b\u043e\u043d\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0434\u0435\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430 \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u0441\u0436\u0430\u0442\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 Brotli \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0430 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c (CVE-2026-111497, \u043a\u043e\u0434\u043e\u0432\u044b\u0435 \u0438\u043c\u0435\u043d\u0430 Broccoli2Shell \u0438 HTTP2Shell), \u043f\u0440\u0438\u0432\u043e\u0434\u044f\u0449\u0430\u044f \u043a \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u0431\u0443\u0444\u0435\u0440\u0430 \u043f\u0440\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435.","og:url":"https:\/\/prohoster.info\/nl\/blog\/news\/critical-vulnerability-in-the-brotli-decoder-affecting-node-js-bun-browsers-http-clients-and-other-projects","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2026-10-24T21:40:31+00:00","article:modified_time":"2026-10-24T21:40:36+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/183985","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/comments?post=183985"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/183985\/revisions"}],"predecessor-version":[{"id":183986,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/183985\/revisions\/183986"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/media?parent=183985"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/categories?post=183985"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/tags?post=183985"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}