
ProFTPd 1.3.5 - (mod_copy) Remote-Befehlsausführungs-Exploit und anfälliger Container
ProFTPD ist ein hochgradig konfigurierbarer FTP-Daemon für Unix und Unix-ähnliche Betriebssysteme. ProFTPD entstand aus dem Wunsch nach einem sicheren und konfigurierbaren FTP-Server. Es wurde von einer großen Bewunderung für den Apache-Webserver inspiriert. Im Gegensatz zu den meisten anderen Unix-FTP-Servern wurde es nicht vom alten BSD-ftpd-Code abgeleitet, sondern ist ein völlig neues Design und eine neue Implementierung.
Um eine angreifbare Umgebung für Ihren Test einzurichten, benötigen Sie Docker installiert und führen Sie einfach den folgenden Befehl aus:
docker build -t vuln/cve-2015-3306 .
docker run --rm -it -p 21:21 -p 80:80 vuln/cve-2015-3306
Und es wird eine angreifbare Anwendung auf Ihrem Host auf den Ports 21 und 80 starten.
Das mod_copy-Modul in ProFTPD 1.3.5 erlaubt es entfernten Angreifern, beliebige Dateien über die Befehle site cpfr und site cpto zu lesen und zu schreiben.
Jeder nicht authentifizierte Client kann diese Befehle nutzen, um Dateien von jedem Teil des Dateisystems an ein gewähltes Ziel zu kopieren. Die Kopierbefehle werden mit den Rechten des ProFTPD-Dienstes ausgeführt, der standardmäßig unter den Privilegien des Benutzers 'nobody' läuft. Durch die Verwendung von /proc/self/cmdline zum Kopieren einer PHP-Nutzlast in das Website-Verzeichnis wird die PHP-Remote-Codeausführung ermöglicht.
Um dieses Ziel zu exploitieren, führen Sie einfach aus:
./exploit.py --host HOST --port PORT --path PATH
Wenn Sie dieses angreifbare Image verwenden, können Sie einfach ausführen:
./exploit.py --host 127.0.0.1 --port 21 --path "/var/www/html/"
Nach der Ausnutzung wird eine Datei namens backdoor.php im Stammverzeichnis des Webverzeichnisses gespeichert. Und der Exploit wird Ihnen eine Shell geben, über die Sie Befehle an die Hintertür senden können:
./exploit.py --host 127.0.0.1 --port 21 --path "/var/www/html/"
[+] CVE-2015-3306 exploit by t0kx
[+] Exploiting 127.0.0.1:21
[+] Target exploited, acessing shell at http://127.0.0.1/backdoor.php
[+] Running whoami: www-data
[+] Done
Diese Schwachstelle wurde von Vadim Melihow gefunden.
Dieses oder frühere Programme dienen NUR zu Bildungszwecken. Verwenden Sie es nicht ohne Genehmigung. Der übliche Haftungsausschluss gilt, insbesondere die Tatsache, dass ich (t0kx) nicht für Schäden haftbar gemacht werden kann, die durch direkte oder indirekte Nutzung der von diesen Programmen bereitgestellten Informationen oder Funktionalitäten entstehen. Der Autor oder ein Internetanbieter übernimmt KEINE Verantwortung für den Inhalt oder Missbrauch dieser Programme oder deren Ableitungen. Durch die Nutzung dieser Programme akzeptieren Sie, dass etwaige Schäden (Datenverlust, Systemabsturz, Systemkompromittierung usw.), die durch die Nutzung dieser Programme verursacht werden, nicht in der Verantwortung von t0kx liegen.