В PHP обнаружены две критические уязвимости: какие версии необходимо обновить

21 октября 2026 года в PHP обнаружены две критические уязвимости, позволяющие удалённо выполнять код на сервере без авторизации. 
  • 27
Частный вебмастер по разработке сайтов

21 октября 2026 года разработчики PHP сообщили о двух критических уязвимостях, получивших название PHP2Shell. Обе проблемы позволяют злоумышленникам потенциально выполнять произвольный код на сервере без авторизации.

Уровень опасности — 9,2 из 10 по CVSS 4.0. Уязвимости затрагивают непосредственно PHP, поэтому под угрозой могут оказаться сайты независимо от используемой CMS: WordPress, 1С-Битрикс, Joomla, Drupal и других систем.

В чём заключается опасность?

Обнаруженные уязвимости связаны с ошибками управления памятью и внутренним состоянием запросов PHP:

  • CVE-2026-109618 — ошибка обработки нехватки памяти, потенциально приводящая к удалённому выполнению кода.
  • CVE-2026-109619 — некорректная работа с внутренним состоянием запросов, позволяющая повторно обращаться к уже освобождённой памяти.

Успешная эксплуатация уязвимостей может привести к краже данных, изменению файлов сайта или получению злоумышленником доступа к серверу в пределах прав процесса PHP.

Проблема затрагивает различные способы запуска PHP, включая PHP-FPM, Apache mod_php и CGI. Наибольший риск разработчики отмечают для конфигураций с Apache mod_php.

Какие версии PHP необходимо обновить?

21 октября разработчики выпустили обновления безопасности для поддерживаемых веток PHP.

Ветка PHP Минимальная исправленная версия
PHP 8.5 8.5.12
PHP 8.4 8.4.27
PHP 8.3 8.3.36
PHP 8.2 8.2.35
PHP 8.1 и ниже Переход на поддерживаемую версию

Важно! Некоторые дистрибутивы Linux и хостинг-провайдеры самостоятельно переносят исправления безопасности в более старые версии PHP. Поэтому ориентироваться исключительно на номер версии, отображаемый через php -v, неправильно. Необходимо проверять версию системного пакета и уведомления его поставщика.

Как защитить свой сайт?

  1. Определите версию PHP, которую фактически использует сайт.
  2. Проверьте наличие обновлений безопасности у хостинг-провайдера или поставщика PHP.
  3. Сделайте резервную копию сайта и конфигурации сервера.
  4. Установите исправления и перезапустите соответствующий обработчик PHP.
  5. Проверьте работу сайта и журнал ошибок после обновления.

Обновление CMS, установка антивируса или использование межсетевого экрана не заменяют исправление самого PHP.

Пример обновления PHP на Ubuntu 24.04

В качестве примера рассмотрим Ubuntu 24.04 LTS со стандартным системным PHP 8.3.

Сначала обновим список пакетов:

sudo apt update

Проверим установленную и доступную версии PHP-FPM:

apt-cache policy php8.3-fpm

Если PHP 8.3 установлен и используется через PHP-FPM, обновим его основные пакеты:

sudo apt install --only-upgrade php8.3-common php8.3-cli php8.3-fpm

После обновления перезапустим PHP-FPM:

sudo systemctl restart php8.3-fpm

Если вместо PHP-FPM используется модуль Apache mod_php, необходимо обновить установленный модуль:

sudo apt install --only-upgrade libapache2-mod-php8.3
sudo apache2ctl configtest
sudo systemctl restart apache2

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

dpkg-query -W php8.3-fpm libapache2-mod-php8.3

Для Ubuntu 24.04 LTS компания Canonical выпустила исправление в пакете 8.3.6-0ubuntu0.24.04.13. Хотя сам PHP по-прежнему отображает версию 8.3.6, необходимые исправления безопасности уже включены.

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

Заключение

Уязвимости PHP2Shell представляют серьёзную угрозу для веб-сайтов. Независимо от используемой CMS рекомендуется проверить установленную версию PHP и своевременно применить исправления безопасности.

Официальные источники:

Комментарии

CAPTCHA
Комментарий отправлен на валидацию!

Теги: