
Proof-of-Concept, das Befehlsinjektion über manipulierte Argumente bei der Ausführung von Windows-BAT-Dateien demonstriert und CVE-2024-24576 ausnutzt, um beliebige Befehlsausführung zu erreichen.
Ein schneller POC für die Schwachstelle, die hier offengelegt wurde: https://flatt.tech/research/posts/batbadbut-you-cant-securely-execute-commands-on-windows/
Nachdem Sie das Skript ausführen, werden Sie nach einem Argument gefragt, das an die BAT-Datei übergeben werden soll.
Auf dem Screenshot sehen Sie, dass durch Hinzufügen von " die zugrunde liegende API, die Windows zum Aufrufen von cmd verwendet, umgangen werden kann, was eine beliebige Befehlsausführung ermöglicht. In diesem Fall haben wir calc.exe geöffnet.

Offensichtlich ist dieser Code an sich nicht bösartig. Er dient nur dazu zu demonstrieren, dass selbst bereinigte Eingaben (es sei denn, Sie entfernen alle "-Zeichen), wenn sie eine BAT-Datei aufrufen, auf diese Weise missbraucht werden können, was möglicherweise öffentlich zugängliche Webanwendungen betrifft.
Video-Walkthrough: https://youtu.be/xjL4pdf7pJ0
WIP Es gibt andere Sprachen, die als mit denselben Problemen behaftet markiert sind. Ich habe Ruby getestet, aber es scheint nicht betroffen zu sein. Ich werde weitere Tests durchführen, um zu sehen, wo Probleme liegen.
Golang-Code muss noch getestet werden. Ruby-Code scheint vom selben Exploit-Pfad nicht betroffen zu sein.
Danksagungen: