Planetahost VPS
Перейти к основному контенту

Критическая уязвимость в WordPress (CVE-2026-119977)

kriticheskaya_uyazvimost_v_wordpress_planetahost.png

Информация об уязвимости
Дата публикации 31 октября 2026 года
CVE CVE-2026-119977
Продукт WordPress Core
Компонент Механизм обновления ядра WordPress
Тип уязвимости TOCTOU Race Condition (CWE-367), удалённое выполнение кода (RCE)
Уровень опасности Высокий
Оценка CVSS 3.1 8,1 из 10
Вектор атаки Через сеть
Требуется аутентификация Нет
Уязвимые версии WordPress 4.7.0–7.1.3, включая промежуточные ветки
Исправлено в WordPress 7.1.4 и соответствующие исправленные релизы предыдущих веток
Эксплуатация в реальных атаках Подтверждена, CVE включена в каталог CISA KEV

Введение

31 октября 2026 года была опубликована информация об уязвимости CVE-2026-119977 в ядре WordPress. Ошибка связана с процессом обновления CMS и при определённых условиях позволяет удалённому злоумышленнику выполнить произвольный код на сервере без авторизации.

Проблема возникает во время обновления WordPress полным пакетом. Временные файлы распаковываются в предсказуемый каталог, доступный через веб-сервер. Если злоумышленник обратится к этим файлам в короткий промежуток времени, пока обновление ещё не завершено, он может воспользоваться особенностью обработки временных файлов и добиться выполнения произвольного кода.

3 ноября 2026 года она была добавлена в каталог CISA Known Exploited Vulnerabilities (KEV), что указывает на подтверждённую эксплуатацию в реальных атаках.

В чём заключается проблема

Уязвимость находится в механизме обновления ядра WordPress. При установке обновления полным пакетом CMS сначала загружает архив с новыми файлами, а затем распаковывает его во временный каталог.

Проблема заключается в том, что временный каталог создавался по предсказуемому пути внутри директории обновлений, которая может быть доступна через веб-сервер. В результате файлы, предназначенные только для внутреннего процесса обновления, на короткое время становятся доступны извне.

Злоумышленнику не требуется учётная запись WordPress. Достаточно дождаться начала обновления и успеть обратиться к подготовленным файлам в промежутке между их распаковкой и завершением установки.

Как работает атака

В основе уязвимости лежит ошибка класса TOCTOU (Time-of-check to time-of-use). Это ситуация, когда программа проверяет состояние объекта, но между проверкой и его использованием состояние успевает измениться.

В случае WordPress проблема возникает при распаковке полного пакета обновления:

  1. Администратор запускает обновление ядра WordPress.
  2. CMS загружает архив с новыми файлами.
  3. Архив распаковывается во временный каталог внутри директории обновлений.
  4. Каталог имеет предсказуемый путь и может быть доступен через веб-сервер.
  5. Злоумышленник пытается обратиться к временным файлам до завершения процесса обновления.

Если атакующему удаётся попасть в это временное окно и использовать подготовленные файлы, он может добиться выполнения произвольного кода на сервере.

Важно понимать, что это не обычная уязвимость, позволяющая отправить один запрос на любой сайт WordPress и сразу получить выполнение кода. Эксплуатация зависит от того, выполняется ли в данный момент обновление ядра полным пакетом, а также от доступности временных файлов через веб-сервер.

Какие версии WordPress затронуты

Уязвимость затрагивает большое количество веток WordPress, начиная с версии 4.7.0. Исправления выпущены для следующих веток:

Исправленные версии WordPress
Ветка Исправленная версия Загрузка
7.17.1.4Скачать
7.07.0.8Скачать
6.96.9.11Скачать
6.86.8.12Скачать
6.76.7.11Скачать
6.66.6.11Скачать
6.56.5.14Скачать
6.46.4.14Скачать
6.36.3.14Скачать
6.26.2.15Скачать
6.16.1.16Скачать
6.06.0.18Скачать
5.95.9.20Скачать
5.85.8.19Скачать
5.75.7.21Скачать
5.65.6.23Скачать
5.55.5.24Скачать
5.45.4.25Скачать
5.35.3.27Скачать
5.25.2.30Скачать
5.15.1.28Скачать
5.05.0.31Скачать
4.94.9.35Скачать

WordPress официально выпустил исправление в версии 7.1.4 от 28 октября 2026 года. Исправления также перенесены в предыдущие поддерживаемые ветки вплоть до 4.7.

Как устранить уязвимость

Решение

Основной способ защиты - обновить WordPress до исправленной версии.

  • Для ветки 7.1 установите WordPress 7.1.4 или новее.
  • Для остальных веток используйте соответствующие исправленные версии из таблицы.
  • Если сайт использует автоматические обновления, проверьте, что обновление действительно завершилось успешно.
  • После обновления убедитесь, что установленная версия отображается в административной панели WordPress.

Обновление можно выполнить через административную панель: откройте раздел «Консоль» → «Обновления» и нажмите «Обновить сейчас».

Временные меры защиты

Если немедленно обновить WordPress невозможно, необходимо ограничить доступ извне к временным каталогам обновления.

В частности, запретите HTTP-доступ к каталогу:

/wp-content/upgrade/

Для Apache это можно сделать с помощью конфигурации виртуального хоста или правил доступа. Например:

<Directory "/var/www/html/wp-content/upgrade">
    Require all denied
</Directory>

Если используется Nginx:

location ^~ /wp-content/upgrade/ {
    deny all;
    return 403;
}

Проверьте конфигурацию и примените изменения:

nginx -t && systemctl reload nginx

Путь /var/www/html необходимо заменить на фактический каталог установки WordPress. Для Nginx аналогичное ограничение можно настроить через директиву location.

Дополнительно рекомендуется контролировать обращения к каталогу обновлений и проверять журналы веб-сервера во время установки обновлений.

Важно

Ограничение доступа к каталогу обновлений является временной мерой и не заменяет установку исправленной версии WordPress.

После применения правил доступа обязательно проверьте штатное обновление CMS. Некорректная конфигурация веб-сервера может помешать обновлению или работе административных функций.

Поскольку CVE-2026-119977 уже включена в каталог CISA KEV, не откладывайте обновление сайтов, доступных из интернета.

Что проверить после обновления

После установки исправлений рекомендуется:

  • Убедиться, что версия WordPress соответствует исправленному выпуску.
  • Проверить содержимое каталога wp-content/upgrade/ и удалить оставшиеся временные файлы, если они больше не нужны.
  • Изучить журналы веб-сервера на предмет подозрительных обращений к временным каталогам обновления.
  • Проверить сайт на наличие неизвестных PHP-файлов и изменений в существующих файлах ядра.
  • Если сайт обновлялся в период, когда уязвимость оставалась неисправленной, проверить его на признаки компрометации.

Установка исправленной версии закрывает уязвимый сценарий обновления, но не удаляет возможные последствия атаки, которая могла произойти ранее.

Дополнительно