← IT-SicherheitIT-Sicherheit / Aktuelle Lücke

Node2Shell: Ist deine Node.js-Anwendung betroffen?

Eine kritische Lücke im Brotli-Dekompressor betrifft Web-Anwendungen und APIs, die mit Node.js laufen, dazu Bun und viele Python-Anwendungen. Ich prüfe, ob deine Anwendung betroffen ist, und spiele die Updates ein.

Die Lücke

Node2Shell kurz erklärt.

Stand: November 2026

Was passiert ist

Kritische Lücke in Brotli

Am 21.10.2026 hat das Node.js-Projekt Updates für eine Lücke im mitgelieferten Brotli-Dekompressor veröffentlicht (CVE-2026-111497). Mit manipulierten, komprimierten Daten können Angreifer ohne Login Speicher beschädigen und unter Umständen eigenen Code ausführen.

Wer betroffen ist

Anwendungen mit Node.js

Web-Anwendungen, APIs, Portale und interne Tools, die dauerhaft mit Node.js auf einem Server laufen. Dazu kommen Bun und Python-Anwendungen, die das Brotli-Paket nutzen, oft ohne dass es jemand bewusst eingebunden hat.

Wie angegriffen wird

Über komprimierte Daten

Entweder schickt ein Angreifer deiner Anwendung eine präparierte Anfrage, zum Beispiel an Express 5. Oder deine Anwendung ruft selbst eine fremde Adresse ab, etwa bei Webhooks oder Link-Vorschauen, und bekommt eine präparierte Antwort.

Diese Versionen sind korrigiert

SoftwareSicher ab
Node.js 2626.12.1
Node.js 2424.22.1
Node.js 2222.23.4
Bun1.4.4
Python: brotli1.2.1
Achtung bei alten Versionen

Node.js 20, 23, 25 oder älter?

Diese Versionen bekommen vom Node.js-Projekt keine Updates mehr, auch nicht für Node2Shell. Wenn deine Anwendung darauf läuft, braucht es eine Absicherung und einen Plan für das Upgrade.

Betreuung für Altsysteme →

Quellen und Details: Cybersicherheitsagentur Baden-Württemberg, IT-Administrator

Selbst prüfen

So findest du heraus, ob du handeln musst.

  1. 1

    Finde heraus, wo Node.js läuft

    Auf einem eigenen Server, in einem Docker-Container oder bei einer Plattform wie Vercel oder Netlify? Läuft Node.js nur beim Bauen einer statischen Website, ist das Risiko gering.

  2. 2

    Schau nach der Version

    Auf dem Server zeigt der Befehl node -v die Version. Bei Docker steht sie im Dockerfile, bei Plattformen in den Projekteinstellungen.

  3. 3

    Vergleiche mit der Tabelle oben

    Ist deine Version mindestens so neu wie die korrigierte Version deines Zweigs, ist die Lücke geschlossen. Steht dort 20, 23, 25 oder älter, gibt es kein Update mehr.

  4. 4

    Unsicher? Frag nach.

    Wenn du nicht weiterkommst oder die Anwendung von jemandem gebaut wurde, der nicht mehr erreichbar ist, schau ich mir das mit dir an.

So helfe ich dir

Vom schnellen Update bis zur dauerhaften Betreuung.

Sofort

Node2Shell-Check

Ich prüfe, welche Node.js-Version deine Anwendung nutzt, auch in Docker-Images und auf Plattformen, aktualisiere sie und teste danach, ob alles weiter funktioniert.

  • ✓Version prüfen und aktualisieren
  • ✓Docker-Images neu bauen
  • ✓Funktionstest danach
Überbrücken

Schutz bis zum Update

Wenn ein Update nicht sofort möglich ist, zum Beispiel bei einer alten Node.js-Version, sperre ich Brotli-komprimierte Anfragen schon vor deiner Anwendung.

  • ✓Sperre am Reverse Proxy
  • ✓Ausgehende Abrufe prüfen
  • ✓Plan für das Upgrade
Dauerhaft

Laufende Betreuung

Ich halte Node.js und die Pakete deiner Anwendung aktuell und melde mich, wenn eine neue Lücke bekannt wird.

  • ✓Regelmäßige Updates
  • ✓Überwachung
  • ✓Fester Ansprechpartner
Mehr als ein Patch

Node2Shell ist nicht die letzte Lücke.

Updates, Backups, Zugänge, E-Mail: Mit ein paar Grundlagen bist du auch für die nächste Lücke gut aufgestellt.

IT-Sicherheit im Überblick
Häufige Fragen

Was du zu Node2Shell wissen willst.

Ich nutze kein Express. Bin ich trotzdem betroffen?

Möglicherweise. Das in Node.js eingebaute fetch() entpackt Brotli-komprimierte Antworten automatisch. Ruft deine Anwendung fremde Adressen ab, zum Beispiel für Webhooks, Link-Vorschauen oder Adressen, die Nutzer eingeben, kann sie angreifbar sein.

Meine Website ist mit Node.js gebaut. Muss ich etwas tun?

Wenn Node.js nur beim Bauen deiner Website läuft und am Ende fertige HTML-Dateien ausgeliefert werden, ist das Risiko gering. Betroffen sind vor allem Anwendungen, bei denen Node.js dauerhaft auf einem Server läuft und Anfragen beantwortet.

Meine Anwendung läuft bei Vercel oder Netlify. Kümmert sich der Anbieter?

Um die Laufzeitumgebung meistens ja. Prüf trotzdem, welche Node.js-Version in deinem Projekt eingestellt ist, und ob du eigene Pakete wie Express 5 oder body-parser 2 nutzt, die Brotli entpacken.

Wird die Lücke schon ausgenutzt?

Kurz nach der Veröffentlichung gab es noch keine bestätigten Angriffe. Es ist aber Beispielcode öffentlich, der zeigt, wie sich die Lücke ausnutzen lässt. Warte also nicht ab.

Ich nutze noch Node.js 20 oder älter. Was jetzt?

Node.js 20, 23, 25 und ältere Versionen bekommen vom Node.js-Projekt keine Updates mehr. Hier hilft nur der Umstieg auf eine aktuelle Version. Bis dahin lässt sich die Anwendung oft absichern, indem Brotli-komprimierte Anfragen vorher abgefangen werden. Dabei helfe ich dir bei der Betreuung von Legacy-Systemen.

Betrifft das auch Python?

Ja, wenn deine Anwendung das Paket brotli oder brotlicffi nutzt. Das passiert oft automatisch, weil verbreitete Bibliotheken wie requests oder httpx Brotli einbinden, sobald es installiert ist. Die korrigierte Version ist brotli 1.2.1.

Lass uns prüfen, ob deine Anwendung betroffen ist.

In einem kurzen Gespräch klären wir, wo deine Anwendung läuft und was zu tun ist. Kostenlos und unverbindlich.