WordPress исправил критическую уязвимость с риском выполнения кода

WordPress выпустил исправление критической уязвимости CVE-2026-87902 с оценкой CVSS 9,2. Проблема затрагивает версии CMS от 4.7.0 до 7.1.1, не требует учётной записи или действий авторизованного пользователя и при определённой конфигурации сервера может привести к выполнению кода. Основной релиз с исправлением — WordPress 7.1.2.
Одновременно обновления получили все ещё поддерживаемые ветки проекта: 7.0.6, 6.9.9, 6.8.10, 6.7.9 и 6.6.9. WordPress также перенёс исправление в более старые поддерживаемые версии вплоть до 4.7.37. Владельцам сайтов рекомендовано установить подходящий релиз без промедления.
Как проявляется уязвимость
Ошибка находится в механизме выбора шаблона страницы. Одно из имён файлов WordPress формирует с использованием части веб-адреса, но в затронутых версиях это значение не проходило встроенную проверку на последовательности перехода по каталогам ../, хотя соседний код такую проверку выполнял.
В результате атакующий без авторизации может заставить сайт загрузить локальный PHP-файл за пределами папок темы. Само по себе подключение файла запускает лишь то, что уже выполняет этот PHP-файл. Для запуска кода, выбранного атакующим, необходимы дополнительные условия на сервере.
Когда риск становится выше
Имя шаблона строится в формате page-{значение}.php. Поэтому для работоспособной атаки в активной теме должна быть папка верхнего уровня, имя которой начинается с page-, а целевой файл должен иметь расширение PHP. Такая структура встречается, в частности, в некоторых старых стандартных темах WordPress.
Patchstack рекомендует администраторам оценить два признака: наличие в активной теме папки верхнего уровня с префиксом page- и состояние PHP-настройки register_argc_argv. Известный сценарий выполнения кода зависит от включённой настройки. По умолчанию она отключена в PHP 8.5 и включена в более ранних версиях PHP. Эти проверки не заменяют установку патча.
Контекст угрозы помогают оценить массовые атаки на WordPress и Joomla, где описаны массовые атаки на WordPress и Joomla, и требования текущей ошибки к конфигурации сайта. WordPress не предлагает отдельного временного обходного решения: обновление остаётся единственным способом устранить уязвимость.
Что проверить владельцам сайтов
Сайты с включёнными автоматическими фоновыми обновлениями начнут получать патч автоматически. Остальным нужно открыть раздел обновлений в административной панели или установить нужный релиз с WordPress.org. Важно проверить версию даже на сайтах, обновлённых до 7.1.1 после релиза безопасности 17 сентября: эта версия всё ещё уязвима, а CVE-2026-87902 не связана с ошибками, закрытыми тем обновлением.
На 22 сентября не было сообщений об использовании уязвимости в атаках, публичного proof-of-concept и записи о ней в каталоге CISA Known Exploited Vulnerabilities. WordPress поблагодарил за обнаружение и сообщение об ошибке Роберта Рессла. Для бизнеса практический шаг один: инвентаризировать все установки WordPress, установить соответствующий патч и убедиться, что обновление применилось.

