Zum Inhalt springen
HostOn
Sicherheit

HTTP2Shell (CVE-2026-111497): kritische Lücke im Brotli-Decoder – so schützen Sie sich

HTTP2Shell, die kritische Brotli-Lücke: Was betroffen ist (Node.js, Python, Bun, Envoy, .NET), welche Versionen den Fix enthalten und wie Sie sich schützen.

Team HostOn7 Min. Lesezeit
HTTP2Shell: kritische Sicherheitslücke im Brotli-Decoder (CVE-2026-111497)

Kurz gesagt: HTTP2Shell (CVE-2026-111497) ist eine kritische Lücke im Brotli-Decoder, den Node.js, Python, Bun, Envoy, .NET und viele weitere Programme verwenden. Speziell präparierte komprimierte Daten können den Speicher beschädigen und unter bestimmten Umständen Code aus der Ferne ausführen. Der Fix ist da: Node.js 22.23.4, 24.22.1 oder 26.12.1 und Brotli 1.0.10, 1.1.1 oder 1.2.1. Aktualisieren Sie und starten Sie die Anwendungen neu.

Was ist HTTP2Shell?

Am 21. Oktober 2026 hat das Node.js-Projekt Sicherheitsupdates für die Versionen 22, 24 und 26 veröffentlicht. Eines der behobenen Probleme, CVE-2026-111497, steckt nicht in Node.js selbst, sondern in Brotli, dem Kompressionsverfahren von Google, das im Web als Kodierung br weit verbreitet ist.

Die Lücke trägt mehrere Namen: HTTP2Shell, Node2Shell und Broccoli2Shell. Gemeint ist immer derselbe Fehler. Der Name «HTTP2Shell» führt in die Irre: Mit dem Protokoll HTTP/2 hat die Lücke nichts zu tun. Betroffen ist jedes Programm, das Brotli-Daten aus nicht vertrauenswürdigen Quellen entpackt.

Entdeckt haben die Lücke Khai Tran und Sylvie Mayer (OpenAI Codex Security). Das Team von Imperva hat gezeigt, dass sich damit auf einer verwundbaren Node.js-Version Code ausführen lässt.

Wie die Lücke funktioniert

Brotli-Daten sind in Blöcke unterteilt, und der Decoder wechselt anhand von Anweisungen im komprimierten Datenstrom von einem Block zum nächsten. Ist eine solche Anweisung ungültig, behandelt der verwundbare Decoder das nicht als Fehler. Er versteht sie als Bitte um weitere Daten und schreibt weiter Bytes in einen Puffer von nur 8 Bytes, über dessen Grenze hinaus.

Diese Fehlerart heisst Schreibzugriff ausserhalb des Speicherbereichs (Out-of-Bounds-Write). Mögliche Folgen, nach Schweregrad:

  • Absturz des Prozesses: Die Anwendung fällt aus, die Website oder der Dienst ist nicht erreichbar.
  • Speicherlecks: Ein Angreifer kann Daten aus dem Speicher des Prozesses lesen.
  • Codeausführung aus der Ferne: Ein Angreifer führt eigene Befehle mit den Rechten der Anwendung aus.

Ein Konto oder Passwort braucht der Angreifer nicht. Es genügt, dass die Anwendung seine Daten entpackt.

Wie gefährlich ist die Lücke?

Die Bewertungen gehen auseinander. Die Stelle, die die CVE vergeben hat, stuft sie mit 9,2 von 10 (kritisch) nach CVSS 4.0 ein. Node.js bewertet sie als hoch, Red Hat als wichtig. Gesichert ist Stand 26. Oktober 2026:

  • Es gibt öffentlichen Demonstrationscode.
  • Codeausführung wurde auf ungepatchtem Node.js gezeigt, die Ergebnisse schwanken aber von System zu System.
  • Angriffe in freier Wildbahn sind noch nicht bekannt, und die Lücke steht nicht im CISA-Katalog aktiv ausgenutzter Schwachstellen.

Mit öffentlichem Code folgen echte Angriffe meist schnell. Behandeln Sie das Update als dringend.

Wer ist betroffen?

Die Brotli-Bibliothek

Verwundbar sind die Versionen 1.0.3 bis 1.2.0. Der Fix steckt in 1.0.10, 1.1.1 und 1.2.1. Linux-Distributionen übernehmen Fixes oft, ohne die Versionsnummer zu ändern. Prüfen Sie deshalb die Sicherheitsmeldung Ihrer Distribution, nicht nur die Nummer.

Betroffene Programme und Sprachen

ProgrammKorrigierte Versionen
Node.js22.23.4, 24.22.1, 26.12.1 (18, 20, 23 und 25 erhalten keinen Fix mehr)
Bun1.4.4
Python: Brotli, brotlicffiBrotli 1.2.1, brotlicffi 1.2.1.0
Envoy Proxy1.36.12, 1.37.8, 1.38.6, 1.39.3, 1.40.0
Istio1.29.9, 1.30.6, 1.31.2
Go: andybalholm/brotliv1.2.7
Ruby: brotli gem0.9.1
PHP: brotli extension0.21.1
.NETMicrosoft-Updates vom 25. Oktober 2026

PHP hat zudem die offiziellen Windows-Pakete der Versionen 8.2 bis 8.5 neu erstellt, weil sie die Brotli-Bibliothek enthalten.

Programme mit eigener Brotli-Kopie

Viele Programme bringen eine eigene Kopie des Decoders mit. Diese wird nicht repariert, wenn Sie die Systembibliothek aktualisieren, sondern erst mit einer neuen Version des Programms. Gemeldet wurden unter anderem ClickHouse, DuckDB, Apache Arrow (pyarrow), 7-Zip-zstd, p7zip, FFmpeg über libjxl (JPEG-XL-Bilder) und Werkzeuge für WOFF2-Schriften. Bei einigen gab es am 25. Oktober noch keine offizielle Version mit Fix.

Wie ein Angriff Sie erreichen kann

  • Anfragen an den Server: Ein Angreifer schickt eine Anfrage mit Content-Encoding: br, und die Anwendung entpackt den Inhalt automatisch, etwa über Middleware in Express oder ASP.NET Core.
  • Antworten, die die Anwendung abruft: Ihre Anwendung lädt eine Seite oder API von einem anderen Server, der mit präparierten Brotli-Daten antwortet. fetch() in Node.js sowie die Python-Clients requests, HTTPX, aiohttp und urllib3 entpacken Brotli-Antworten automatisch, wenn die Unterstützung installiert ist.
  • Hochgeladene Dateien: JPEG-XL-Bilder, Parquet-Dateien, Archive oder WOFF2-Schriften mit Brotli-Daten.

Der zweite Weg wird am leichtesten übersehen: Auch wenn Ihr Server nie Brotli-Daten empfängt, ist eine Anwendung gefährdet, die externe Ressourcen abruft.

Prüfen Sie, ob Sie betroffen sind

Node.js-Version (auf dem Server, in jedem Container und in jeder Anwendung unter «Setup Node.js App», wenn Sie cPanel nutzen):

node -v

Python-Pakete (in jeder virtuellen Umgebung):

pip show brotli brotlicffi

Systembibliothek:

# Debian / Ubuntu
dpkg -l | grep -i brotli
# AlmaLinux / Rocky / CloudLinux / RHEL
rpm -qa | grep -i brotli

Prozesse, die die Systembibliothek geladen haben und nach dem Update neu gestartet werden müssen:

sudo grep -l brotlidec /proc/*/maps 2>/dev/null

Bun:

bun --version

Docker-Images bringen ihre eigene Node.js-Version mit. Prüfen Sie jedes Image, zum Beispiel so (IMAGE durch den Namen Ihres Images ersetzen):

docker run --rm IMAGE node -v

So schützen Sie sich

1. Aktualisieren

  • Node.js: auf 22.23.4, 24.22.1 oder 26.12.1 oder neuer wechseln. Nutzen Sie Node.js 18 oder 20, ziehen Sie die Anwendung auf 22 oder 24 um, denn diese Versionen erhalten keine Fixes mehr.
  • Python: in jeder Umgebung mit diesen Paketen pip install -U brotli brotlicffi ausführen.
  • Betriebssystem: Sicherheitsupdates einspielen (apt upgrade oder dnf upgrade), sobald Ihre Distribution das korrigierte Paket veröffentlicht.
  • Bun, Envoy, Istio, .NET: die Versionen aus der Tabelle oben.
pip install -U brotli brotlicffi

2. Neu starten und neu bauen

Ein Prozess, der vor dem Update gestartet wurde, läuft weiter mit dem alten Code. Starten Sie Node.js-Anwendungen neu (zum Beispiel mit pm2 reload all oder in cPanel), ebenso Python-Dienste und alle Prozesse, die der Befehl oben findet. Bauen Sie Docker-Images auf einem korrigierten Basis-Image neu und prüfen Sie nach dem Start, dass die neue Version läuft.

3. Vorübergehende Massnahmen

Können Sie nicht sofort aktualisieren, blockieren Sie eingehende Anfragen, die mit Brotli komprimiert sind. Browser senden keine Brotli-komprimierten Anfragen, normale Besucherinnen und Besucher merken also nichts. Prüfen Sie aber, ob Integrationen (APIs, Apps) solche Anfragen senden.

In nginx, im Block server:

if ($http_content_encoding ~* "br") {
    return 415;
}

In Apache (.htaccess):

RewriteEngine On
RewriteCond %{HTTP:Content-Encoding} br [NC]
RewriteRule ^ - [R=415,L]

Cloudflare hat am 25. Oktober eine Notfall-WAF-Regel für diese Lücke veröffentlicht, Azure, Imperva und Vercel haben ähnliche Regeln. In Python können Sie die Pakete brotli und brotlicffi vorübergehend deinstallieren; ohne sie entpacken HTTP-Clients keine Brotli-Daten mehr.

Tipp: Diese Massnahmen schützen nur Daten, die beim Server ankommen. Anwendungen, die Ressourcen von anderen Websites abrufen, schützen sie nicht. Vollständig hilft nur das Update.

4. Auf Anzeichen eines Angriffs achten

  • unerwartete Abstürze von Node.js- oder Python-Anwendungen (Fehler wie segmentation fault);
  • Anfragen mit Content-Encoding: br in den Logs des Webservers;
  • neue Prozesse oder ungewöhnliche Verbindungen, die der Benutzer der Anwendung startet.

Empfehlungen nach Art der Nutzung

  • WordPress-Website oder Firmenwebsite im Webhosting: Sie müssen nichts tun. Die Systembibliotheken aktualisiert der Hosting-Anbieter. Halten Sie WordPress, Theme und Plugins wie gewohnt aktuell.
  • Node.js-Anwendungen in cPanel: Wählen Sie unter «Setup Node.js App» Node.js 22 oder neuer und starten Sie die Anwendung neu.
  • VPS oder eigener Server: Sie verwalten das System selbst. Führen Sie die Prüfungen oben aus, aktualisieren Sie, starten Sie neu und bauen Sie Container neu.
  • Entwicklerinnen und Entwickler: Node.js lokal und in der CI aktualisieren, Images neu bauen und Abhängigkeiten mit eigener Brotli-Kopie prüfen.
  • Alle anderen: Browser und Apps aktualisieren. Chrome und Firefox enthalten den Fix bereits.

Was wir bei HostOn gemacht haben

Auf unseren Webhosting-Servern läuft Node.js bereits in der korrigierten Version 22.23.4, auch unter «Setup Node.js App» in cPanel (ab dem Paket Pilatus). Die Versionen 18 und 20 erhalten keine Fixes mehr; stellen Sie Ihre Anwendungen deshalb auf 22 um. Systempakete aktualisieren wir, sobald die Distributionen den Fix veröffentlichen. Mit einem VPS verwalten Sie das System selbst und sollten die Schritte oben umsetzen. Brauchen Sie Hilfe? Eröffnen Sie ein Ticket im Kundenbereich oder schreiben Sie uns über die Seite Kontakt.

Chronologie

  • 21. Oktober 2026: Brotli 1.0.10, 1.1.1 und 1.2.1 sowie Node.js 22.23.4, 24.22.1 und 26.12.1 erscheinen.
  • 22.–23. Oktober: Die Python-Pakete Brotli und brotlicffi werden korrigiert; öffentlicher Demonstrationscode taucht auf.
  • 24. Oktober: Fixes für das Ruby-Gem und die PHP-Erweiterung brotli.
  • 25. Oktober: Microsoft-Updates für .NET und Notfall-WAF-Regel von Cloudflare.
  • 26. Oktober: PHP hat die Windows-Pakete neu erstellt; Angriffe in freier Wildbahn sind nicht bekannt.

Quellen: BleepingComputer, Wiz, JFrog Security Research, Phoenix Security, Ubuntu Security, The Hacker News.

SicherheitHTTP2ShellCVE-2026-111497BrotliNode.js

Häufige Fragen zum Thema

HTTP2Shell (CVE-2026-111497), auch Node2Shell oder Broccoli2Shell genannt, ist ein Schreibzugriff ausserhalb des Speicherbereichs im Brotli-Decoder von Google. Präparierte komprimierte Daten lassen den Decoder über einen Puffer hinaus schreiben. Das kann den Prozess abstürzen lassen, Speicherinhalte preisgeben oder unter bestimmten Umständen Codeausführung aus der Ferne ermöglichen.

Nein. Der Name führt in die Irre: Der Fehler liegt im Brotli-Decoder, nicht im Protokoll HTTP/2. Betroffen ist jede Anwendung, die Brotli-Daten aus nicht vertrauenswürdigen Quellen entpackt, unabhängig vom Protokoll.

Node.js 22.23.4, 24.22.1 oder 26.12.1 oder neuer auf derselben Linie. Die Versionen 18, 20, 23 und 25 erhalten keine Updates mehr und keinen Fix; ziehen Sie auf eine unterstützte Version um.

WordPress nutzt den Brotli-Decoder nicht direkt. Die Systembibliotheken, die Brotli entpacken, werden über die Pakete der Distribution aktualisiert. Im Webhosting von HostOn übernehmen wir diese Updates; für eine gewöhnliche WordPress-Website müssen Sie nichts tun.

Bis zum 26. Oktober 2026 sind keine echten Angriffe bekannt, und die Lücke steht nicht im CISA-Katalog aktiv ausgenutzter Schwachstellen. Es gibt aber öffentlichen Demonstrationscode, und Imperva hat Codeausführung auf einer verwundbaren Node.js-Version gezeigt. Aktualisieren Sie deshalb jetzt.

Nein. Das Blockieren von Anfragen mit Content-Encoding: br schützt nur Daten, die beim Server ankommen. Ruft Ihre Anwendung Ressourcen von anderen Websites ab, kann ein bösartiger Server eine Brotli-Antwort schicken. Vollständig schützt nur das Update.

Ja. Ein Prozess, der vor dem Update gestartet wurde, nutzt weiter den alten Code im Speicher. Starten Sie Node.js- und Python-Anwendungen sowie Dienste mit der Brotli-Bibliothek neu und bauen Sie Docker-Images neu.

Artikel teilen

Fragen? Schreiben Sie uns – in Ihrer Sprache.

Wir antworten in der Sprache, in der Sie schreiben – auf Deutsch, Französisch, Italienisch, Englisch und in zwei weiteren Sprachen.

DEENFRITESRO

Antwort in der Regel am selben Werktag

Arbeitsplätze mit Headsets und Laptops in einem hellen Büro
  • Ticketempfohlen

    Für alles zu Ihrem Konto: Hosting, Domains, Rechnungen. Mit Verlauf und Anhängen.

    Ticket eröffnen
  • E-Mail

    Für Fragen vor der Bestellung und Angebote.

    support@hoston.ch

    E-Mail schreiben
  • WhatsApp

    Für kurze Fragen. Bitte keine Passwörter oder Kundendaten senden.

    Nachricht schreiben

Erst prüfen: Gibt es gerade eine Störung?

status.hoston.ch

Kontakt · Umzugsservice · Tools