Zwei Jahrzehnte Nginx-Löcher: Warum NGINX Rift Sie jetzt patchen lässt
Achtzehn Jahre alter Nginx-Fehler: NGINX Rift zwingt zu Sofort-Patches
Ein uralter Codefehler schläft seit 18 Jahren in Nginx. Jetzt ist er geweckt – und gefährlich. F5 hat Patches für vier Schwachstellen rausgehauen. Der Star darunter: CVE-2026-42945, genannt "NGINX Rift" von den Entdeckern bei depthfirst. Jeder Admin sollte jetzt updaten.
Warum dieser Bug so teuflisch ist
Der Fehler steckt im Rewrite-Modul von Nginx. Er lauert seit Version 0.6.27 aus dem Jahr 2008 – damals noch keine Smartphones im Alltag, kein Docker.
Angriffsweg: Ein simpler, manipuierter HTTP-Request reicht. Kein Login, kein Phishing. Nur ein Treffer.
Schaden: Ohne ASLR (Address Space Layout Randomization) droht Remote Code Execution. Mit ASLR? Zuverlässiger Denial of Service – Worker crasht, startet neu, crasht wieder.
Bewertung: CVSS 9.2 – kritisch, knapp unter Maximum.
Wie überlebt so was 18 Jahre?
Nginx nutzt PCRE für URL-Muster im Rewrite-Modul. Bei unnamed Captures wie $1 oder $2, gefolgt von weiterem Rewrite, If oder Set, überschreibt der Code Heap-Speicher. Klassischer Buffer Overflow. Solche Bugs sollten Reviews fangen – doch hier nicht.
Selbst top-gepflegte Open-Source-Projekte wie Nginx sind nicht fehlerfrei. Millionen Server weltweit nutzen es. Der Schadenradius? Riesig.
Wer muss handeln?
NGINX Plus: Bei R32 bis R36 sofort auf R32 P6 oder R36 P4 updaten.
Open Source: Versionen 1.0.0 bis 1.30.0 betroffen. Wechselt zu 1.30.1 oder 1.31.0.
Alte Relikte: 0.6.27 bis 0.9.7? Keine Patches. Vollständiges Upgrade fällig.
Notfall-Arbeit umgehend?
Kein Update jetzt möglich? Dann Workaround: Ersetzt unnamed Captures durch named Groups in Rewrite-Regeln. Statt $1 nutzt $(name).
Beispiel:
# Riskant
rewrite ^/user/([0-9]+)$ /profile?id=$1 last;
# Besser (vorübergehend)
rewrite ^/user/(?<id>[0-9]+)$ /profile?id=$id last;
Das stoppt den Trigger-Pfad. Aber patched werden muss!
Die drei anderen CVEs
Neben NGINX Rift noch drei Fixes:
- CVE-2026-42946 (CVSS 8.3 High): Zu viel Speicher in SCGI/uWSGI – DoS bei Proxy-Setups.
- CVE-2026-40701 (CVSS 6.3 Medium): Use-after-free im SSL-Modul bei ssl_verify_client oder ssl_ocsp.
- CVE-2026-42934 (CVSS 4.8 Medium): Out-of-Bounds-Read im Charset-Modul.
Nicht so akut, aber bald nachholen.
Lektionen für eure Infra
Dieser Fall mahnt:
- Beliebtheit schützt nicht. Nginx ist überall, Bug blieb 18 Jahre versteckt.
- Alt = riskant. Langes Alter häuft Probleme an.
- Patch langsam? Alles gefährdet. Ein Loch reicht.
- Überwachen lohnt. DoS kommt sofort.
Fazit: Jetzt updaten!
Nginx-Nutzer: Das sind keine Routine-Updates, sondern Notfall. Alter Bug, einfacher Angriff, hohe Gefahr – priorisiert NGINX Rift.
Testet in Staging, rollt in Prod aus. Und checkt eure Rewrite-Regeln gleich mit. Bleibt wachsam.