Sicherheitshinweis für die Rust-Standardbibliothek (CVE-2024-24576)
(blog.rust-lang.org)Für die Rust-Standardbibliothek wurde ein Sicherheitshinweis veröffentlicht. Er betrifft eine Schwachstelle mit der Kennung CVE-2024-24576 und wurde insbesondere durch ein Problem verursacht, bei dem unter Windows Argumente beim Aufruf von Batch-Dateien mit der Erweiterung .bat oder .cmd über die Command-API nicht korrekt escaped werden.
Wenn ein Angreifer die an den erzeugten Prozess übergebenen Argumente kontrollieren kann, lässt sich das Escaping umgehen und es können beliebige Shell-Befehle ausgeführt werden. Diese Schwachstelle ist nur dann relevant, wenn unter Windows Batch-Dateien mit nicht vertrauenswürdigen Argumenten aufgerufen werden. Andere Plattformen oder Anwendungsfälle sind nicht betroffen.
Die eigentliche Ursache des Problems ist, dass cmd.exe unter Windows (das zum Ausführen von Batch-Dateien verwendet wird) eine eigene Logik zur Aufteilung von Argumenten besitzt, sodass die Standardbibliothek ein angepasstes Escaping für an Batch-Dateien übergebene Argumente implementieren musste. Berichten zufolge war diese Escaping-Logik nicht gründlich genug, sodass durch bösartige Argumente eine beliebige Shell-Ausführung möglich wurde.
Mit Unterstützung von KI
3 Kommentare
Da es offenbar um ein Windows-Escaping-Problem geht, kann ich mir gut vorstellen, dass so etwas passiert.
Das scheint der früheren WinRAR-Sicherheitslücke ähnlich zu sein. Dabei wurden die Ausführungsmethode von Batch-Dateien unter Windows und die Einschränkungen bei der Dateibenennung ausgenutzt.
Wieder einmal zeigt sich: Nichts auf der Welt ist wirklich einfach. schluchz schluchz