Die kritische Schwachstelle CVE-2026-111497 im Brotli-Decoder von Google sorgt weiterhin für eine Welle von Notfall-Updates. Nach den ersten Patches für Node.js, Bun und Python-Pakete, über die wir bereits berichtet haben, hat PHP am 26. Oktober die offiziellen Windows-Pakete neu gebaut, und Microsoft hat Fixes für .NET, Visual Studio und PowerShell veröffentlicht. Die Schwachstelle ermöglicht es, Speicher zu korrumpieren und potenziell beliebigen Code über speziell präparierte Brotli-Daten auszuführen. Am 27. Oktober nahm CISA die Schwachstelle in den Katalog Known Exploited Vulnerabilities auf, mit einer Frist zur Behebung bis zum 10. November 2026.
Kern der Schwachstelle und Einstufung der Kritikalität
CVE-2026-111497 ist ein Out-of-Bounds-Write-Fehler im Brotli-Decoder, der die Bibliotheksversionen von 1.0.3 bis 1.0.9, von 1.1.0 bis 1.1.0 sowie Version 1.2.0 betrifft. Die Ausnutzung kann zu einem Absturz des Prozesses, zum Abfluss von Speicherinhalten oder zu Remote Code Execution mit beliebigem Code führen.
Die Einstufungen der Kritikalität unterscheiden sich je nach Methodik. Laut der GitHub Advisory Database erhielt die Schwachstelle 9,2 Punkte nach CVSS 4.0 (Critical). Red Hat bewertet sie mit 8,1 Punkten nach CVSS 3.1 (Important) und verweist auf eine hohe Angriffskomplexität – eine verlässliche Ausnutzung wird durch Hardware- und Software-Schutzmechanismen erschwert. Diese Bewertungen nutzen unterschiedliche CVSS-Versionen und Annahmen, weshalb ein direkter Vergleich nicht korrekt ist.
Die Schwachstelle wurde von Forschenden entdeckt, die JFrog und Wiz als Khai Tran und Sylvie Mayer von OpenAI Codex Security identifizieren, obwohl sich in den verfügbaren Quellen keine direkte Bestätigung von OpenAI findet. Google hat das Problem in Brotli-Versionen 1.2.1, 1.1.1 und 1.0.10 behoben.
Betroffene Produkte und Ausnutzungsbedingungen
Der zentrale Befund aus der Analyse beider Updates: Die Schwachstelle ist konfigurationsabhängig und nicht universell. Jedes betroffene Produkt hat eigene Bedingungen, unter denen schädliche Brotli-Daten den verwundbaren Decoder erreichen.
PHP unter Windows
Dem Hinweis von PHP zufolge ist der verwundbare Decoder über die cURL-Erweiterung verfügbar, wenn die automatische Dekomprimierung von HTTP-Antworten aktiviert ist. cURL selbst aktiviert diese Funktion nicht standardmäßig – sie wird von Anwendungen oder HTTP-Clients über die Option CURLOPT_ENCODING eingeschaltet.
Die Bibliothek Guzzle in den Versionen 7.16.1 und 8.3.1 setzt ihren Quellcode-Analysen zufolge CURLOPT_ENCODING standardmäßig auf eine leere Zeichenkette, wenn sie über den cURL-Handler arbeitet. Ein leerer Wert aktiviert alle unterstützten Dekomprimierungsformate, einschließlich Brotli. Das bedeutet, dass Anwendungen, die Guzzle mit Standardeinstellungen auf älteren Windows-Builds von PHP verwendeten, die Bedingungen für das Auslösen der Schwachstelle erfüllten. Der Angriff erfolgt dabei in Form einer speziell präparierten komprimierten Antwort des Servers, den die PHP-Anwendung anfragt.
PHP hat neu gebaute Pakete veröffentlicht:
8.5.12-18.4.27-18.3.36-18.2.35-1
Diese Builds enthalten denselben PHP-Quellcode wie die Releases vom 21. Oktober (einschließlich der PHP2Shell-Fixes), binden nun aber Brotli 1.2.1 ein. Da sich die PHP-Version nicht geändert hat, zeigt der Befehl php -v dieselbe Versionsnummer an. Die neue Build-Variante lässt sich am Suffix -1 im Dateinamen und am SHA-256-Hash auf der Download-Seite erkennen.
Microsoft .NET
Laut dem Sicherheitshinweis von Microsoft wurden Fixes in .NET-Versionen 8.0.33, 9.0.22, 10.0.14 und .NET 11 Release Candidate 3 integriert. Updates erhielten außerdem Visual Studio 2019, 2022 und 2026 sowie PowerShell 7.4, 7.5 und 7.6.
In .NET unterscheiden sich die Bedingungen für eine Ausnutzung von denen bei PHP: ASP.NET Core und HttpClient führen keine automatische Brotli-Dekomprimierung standardmäßig aus. Eine Bedrohung entsteht nur, wenn die Anwendung die Dekomprimierung von Anfragen oder Antworten explizit aktiviert oder die Brotli-APIs direkt zur Verarbeitung von Daten aus nicht vertrauenswürdigen Quellen verwendet.
Ausmaß des Problems über PHP und .NET hinaus
Brotli ist in zahlreiche Projekte integriert, und ein Update der Systembibliothek allein genügt nicht, wenn eine Anwendung ihre eigene Kopie des Decoders mitbringt. Laut der Analyse von JFrog kann der verwundbare Decoder nicht nur über HTTP-Clients, sondern auch über Dateiparser, Medientools und andere native Integrationen zum Einsatz kommen. JFrog hat insbesondere eine Exploit-Kette über FFmpeg und ein speziell präpariertes JPEG-XL-Bild demonstriert, bei der die Bibliothek libjxl Brotli zum Entpacken von Metadaten nutzt.
Laut Wiz sind Komponenten, die gegenüber CVE-2026-111497 verwundbar sind, in 91 % der Cloud-Umgebungen vorhanden, und in 82 % dieser Umgebungen gibt es öffentlich erreichbare Node.js-Instanzen. Diese Zahlen wurden von anderen Quellen nicht unabhängig bestätigt, spiegeln aber die weite Verbreitung von Brotli in Container-Anwendungen, Kubernetes-Clustern, API-Gateways und Reverse-Proxys wider.
Status der Ausnutzung
Bestätigte Fälle einer Ausnutzung von CVE-2026-111497 in realen Angriffen sind bislang nicht bekannt. Forschende von Imperva haben jedoch einen funktionierenden PoC-Exploit mit Remote Code Execution auf einem offiziellen Node.js-Build demonstriert. Die Aufnahme der Schwachstelle in den CISA-KEV-Katalog am 27. Oktober mit einer Frist bis zum 10. November weist darauf hin, dass die Behörde die Bedrohung als ausreichend schwerwiegend für verpflichtende Reaktionen einstuft.
Empfehlungen
Für PHP unter Windows: Installieren Sie die neu gebauten Pakete mit dem Suffix -1 von der PHP-Download-Seite. Falls ein sofortiges Update nicht möglich ist, besteht eine vorübergehende Maßnahme darin, die automatische Brotli-Dekomprimierung zu deaktivieren. Im PHP-Code bedeutet das, CURLOPT_ENCODING nicht zu setzen. In Guzzle besteht dies darin, die Request-Option decode_content auf false zu setzen (dadurch wird die Dekomprimierung aller Formate, einschließlich gzip, deaktiviert). Wichtig: Das bloße Entfernen von br aus dem Accept-Encoding-Header reicht nicht aus – der Server kann dennoch eine Brotli-Antwort senden.
Für .NET: Aktualisieren Sie auf die Versionen 8.0.33, 9.0.22, 10.0.14 bzw. .NET 11 RC3. Prüfen Sie, ob Ihre Anwendung explizite Brotli-Dekomprimierung oder direkte Aufrufe der Brotli-APIs verwendet.
Für alle Plattformen: Eine Inventarisierung sollte nicht nur die Version des obersten Pakets erfassen, sondern auch das Vorhandensein eingebetteter oder statisch gelinkter Brotli-Kopien sowie die Pfade, über die nicht vertrauenswürdige Daten den Decoder erreichen. Projekte, die ihre eigene Kopie der Bibliothek mitliefern, erfordern ein separates Update durch die Entwickler.
Angesichts der Aufnahme von CVE-2026-111497 in CISA KEV mit einer Frist bis zum 10. November und der Existenz öffentlicher PoC-Exploits sollte die Aktualisierung betroffener Komponenten als vorrangige Aufgabe betrachtet werden. Organisationen, die PHP unter Windows mit Guzzle oder anderen HTTP-Clients mit automatischer Dekomprimierung einsetzen, sollten zuerst aktualisieren – in genau dieser Konfiguration sind die Ausnutzungsbedingungen standardmäßig erfüllt.












