
Эксплойт Proof-of-concept для CVE-2022-1329, уязвимости удаленного выполнения кода в WordPress Elementor 3.6.0-3.6.2. Включает уязвимую среду на базе Docker и настраиваемую инъекцию PHP-полезной нагрузки.
Этот PoC основан на AkuCyberSec.
Используйте docker-compose, чтобы запустить уязвимую среду:
docker-compose up -d
Затем вы можете получить доступ к странице администратора WordPress по URL http://localhost:8000.
Зарегистрируйте администратора и добавьте пользователя без прав администратора в разделе Пользователи. Например, есть два пользователя:
| Имя пользователя | Пароль | Роль |
|---|
| wc | 123456 | Администратор |
| a2 | aaaaaa | Редактор |
Войдите под учетной записью администратора и установите Elementor 3.6.1 с помощью предоставленного zip-файла.
Если вы столкнулись с проблемой размера загрузки, добавьте php.ini в /var/www/html/ следующим образом и перезапустите сервер Docker:
upload_max_filesize = 64M
max_execution_time = 0
post_max_size = 150M
file_uploads = on
Отредактируйте скрипт PoC, указав информацию о пользователе без прав администратора, и запустите его для эксплуатации:
python3 poc.py
ПРИМЕЧАНИЕ: скрипт может завершиться с проблемой загрузки, но это нормально, попробуйте обновить страницу администратора в браузере, чтобы проверить, работает ли.
PoC в настоящее время выполняет phpinfo(); в качестве полезной нагрузки, конечно, вы можете изменить это, но вам нужно вручную удалить плагин elementor-pro в контейнере Docker /var/www/html/wp-content/plugin/elementor-pro:
# Unzip the zip file
unzip elementor-pro.zip
# Edit the main file to put your payload, it's in the begin of the file
nano elementor-pro/elementor-pro.php
# And zip
rm elementor-pro.zip; zip -ry elementor-pro.zip elementor-pro
# exploit again
python3 poc.py
