Plattform
ruby
Komponente
rack
Behoben in
2.2.24
3.0.1
3.2.1
2.2.23
CVE-2026-34830 describes a regex injection vulnerability within the Rack framework, specifically in the Rack::Sendfile#mapaccelpath method. This flaw allows attackers to manipulate the X-Accel-Redirect response header, potentially leading to unauthorized file access. The vulnerability impacts Rack versions 2.2.9 and earlier, and a patch is available in version 2.2.23.
CVE-2026-34830 in Nginx betrifft Ruby on Rails-Anwendungen, die Rack::Sendfile mit x-accel-redirect verwenden. Das Problem liegt in der Funktion Rack::Sendfile#mapaccelpath, die den Wert des Request-Headers X-Accel-Mapping direkt als Teil eines regulären Ausdrucks interpretiert. Dieses Fehlen einer Maskierung ermöglicht es einem Angreifer, reguläre Ausdrucks-Metazeichen in den Header-Wert einzuschleusen. Dies kann dazu führen, dass der generierte X-Accel-Redirect-Response-Header kontrolliert werden kann, wodurch Benutzer möglicherweise auf unerwünschte Ressourcen umgeleitet oder sogar bösartiger Code auf dem Webserver ausgeführt werden kann. Die CVSS-Schweregrad ist 5,9, was ein moderates Risiko anzeigt.
Ein Angreifer könnte diese Schwachstelle ausnutzen, indem er eine HTTP-Anfrage mit einem bösartigen X-Accel-Mapping-Header sendet, der reguläre Ausdrucks-Metazeichen enthält. Wenn die Ruby on Rails-Anwendung Rack::Sendfile mit x-accel-redirect verwendet und nicht gepatcht wurde, interpretiert Nginx den Header-Wert als regulären Ausdruck, was dem Angreifer möglicherweise die Kontrolle über die URL ermöglicht, auf die der Benutzer umgeleitet wird. Dies könnte verwendet werden, um auf bösartige Websites umzuleiten, auf sensible Ressourcen zuzugreifen oder sogar beliebigen Code auf dem Webserver auszuführen, abhängig von der Konfiguration und den Berechtigungen des Servers.
Applications utilizing Rack with x-accel-redirect are at risk, particularly those with less stringent input validation. Shared hosting environments where multiple applications share the same Rack instance are also at increased risk, as a vulnerability in one application could potentially be exploited to compromise others.
• ruby / server:
ps aux | grep Rack::Sendfile• generic web:
curl -I <your_rack_app_url> -H "X-Accel-Mapping: \..\/path/to/sensitive/file"• generic web:
grep -r "X-Accel-Mapping" /var/log/nginx/access.logdisclosure
Exploit-Status
EPSS
0.04% (12% Perzentil)
CISA SSVC
CVSS-Vektor
Die primäre Abhilfemaßnahme für CVE-2026-34830 ist das Upgrade von Nginx auf Version 2.2.23 oder höher. Diese Version enthält eine Korrektur, die spezielle Zeichen im X-Accel-Mapping-Header korrekt maskiert, bevor sie in dem regulären Ausdruck verwendet werden. Darüber hinaus wird empfohlen, alle Request-Header-Eingaben zu überprüfen und zu validieren, insbesondere solche, die bei der Antwortgenerierung verwendet werden. In Umgebungen, in denen ein sofortiges Upgrade nicht möglich ist, kann eine strengere Eingabevalidierung innerhalb der Ruby on Rails-Anwendung implementiert werden, um potenziell gefährliche Zeichen im X-Accel-Mapping-Header zu maskieren oder zu filtern, bevor sie an Nginx gesendet werden. Die Überwachung der Nginx-Protokolle auf verdächtige Muster kann ebenfalls dazu beitragen, potenzielle Angriffe zu erkennen und darauf zu reagieren.
Actualice la gema Rack a la versión 2.2.23, 3.1.21 o 3.2.6, o superior, según corresponda a su versión actual. Esto corrige la vulnerabilidad de inyección de regex en el encabezado HTTP_X_ACCEL_MAPPING. Asegúrese de probar la actualización en un entorno de prueba antes de implementarla en producción.
Schwachstellenanalysen und kritische Warnungen direkt in deinen Posteingang.
Rack::Sendfile ist eine Ruby on Rails-Gem, die das Bereitstellen von Dateien direkt vom Dateisystem ermöglicht, ohne sie in den Speicher des Servers zu laden.
X-Accel-Redirect ist ein HTTP-Header, der es Nginx ermöglicht, einen Benutzer auf eine andere URL umzuleiten, oft verwendet, um statische Inhalte von externem Speicher bereitzustellen.
Das Upgrade von Nginx auf Version 2.2.23 oder höher ist entscheidend, um diese Schwachstelle zu beheben und Ihren Webserver vor potenziellen Angriffen zu schützen.
Ja, Sie können eine Eingabevalidierung in Ihrer Ruby on Rails-Anwendung implementieren, um gefährliche Zeichen im X-Accel-Mapping-Header zu maskieren oder zu filtern.
Wenn Sie vermuten, dass Ihr Server kompromittiert wurde, sollten Sie ihn vom Netzwerk isolieren, Passwörter ändern und eine vollständige Sicherheitsprüfung durchführen.
Lade deine Abhängigkeitsdatei hoch und erfahre sofort, ob dich diese und andere CVEs treffen.
Lade deine Gemfile.lock-Datei hoch und wir sagen dir sofort, ob du betroffen bist.