PHP2Shell: как UAhosting устранил CVE-2026-109618 и CVE-2026-109619
После сообщений о PHP2Shell клиенты спрашивали нас: обновлены ли серверы, защищён ли магазин на PHP 7.4 и нужно ли отключать отдельные функции PHP. Объясняем, что произошло, какие работы выполнила команда UAhosting и какие настройки теперь доступны в панели.
На всех серверах виртуального хостинга UAhosting установлены исправления CVE-2026-109618 и CVE-2026-109619. Необходимые серверные меры для устранения именно этих двух уязвимостей выполнены. Информация актуальна на 26 октября 2026 года.
Что такое PHP2Shell и в чём опасность
21 октября разработчики PHP опубликовали исправления двух критических уязвимостей, известных под общим названием PHP2Shell. Их оценка — 9,2 балла по CVSS v4.0. При определённых условиях они позволяют удалённое выполнение кода без авторизации: злоумышленнику не обязательно знать пароль администратора сайта.
- CVE-2026-109618 связана с обработкой нехватки памяти: PHP может прервать операцию, когда внутренние данные запроса ещё не полностью подготовлены, а затем некорректно обработать их при очистке.
- CVE-2026-109619 касается внутреннего состояния, которое может сохраниться после освобождения памяти и использоваться следующим запросом в том же рабочем процессе.
Это ошибки самого PHP. Обновление WordPress, OpenCart или плагинов не исправляет серверный интерпретатор. PHP подчёркивает, что риск касается разных обработчиков веб-запросов, включая PHP-FPM и LiteSpeed; наиболее высоким он признан для Apache с mod_php. Подробности приведены в официальном сообщении PHP и бюллетене японского агентства IPA.
Какие меры принял UAhosting
Мы установили обновлённые пакеты PHP на всех серверах виртуального хостинга. Также применили системные обновления, включая доступные обновления ядра, и перезагрузили серверы. Перезапуск обеспечил использование исправленного кода новыми PHP-процессами.
Наличие исправлений проверяли по установленным пакетам и их журналам изменений. Дополнительно проверили работу Imunify360/ModSecurity: в журналах подтверждена блокировка запросов, соответствующих известному способу эксплуатации PHP2Shell. О выполненных работах сообщили клиентам в рассылке.
Для клиента виртуального хостинга это означает: самостоятельно устанавливать серверные патчи или срочно переключать сайт на другую ветку PHP из-за этих двух CVE не требуется.
Почему номер PHP мог остаться прежним
Официальные исправленные выпуски PHP — 8.2.35, 8.3.36, 8.4.27 и 8.5.12. Однако CloudLinux сначала перенёс патчи в собственные сборки с сохранением номеров 8.2.34, 8.3.35, 8.4.26 и 8.5.11. Такой подход называется backport.
Поэтому сама надпись «PHP 8.5.11» не доказывает отсутствие защиты. Важны конкретный выпуск пакета и внесённые исправления. Позднее CloudLinux также выпустил пакеты с новыми номерами PHP и подтвердил: предыдущие исправленные сборки уже защищают от обеих CVE. Это объяснено в официальной хронологии инцидента.
Что с PHP 7.4 и старыми магазинами
Один из запросов касался магазина на OpenCart: переход на PHP 8 потребовал бы адаптации модулей. В этом случае нужно различать обновление безопасности PHP и смену его основной ветки.
CloudLinux предоставляет исправления для старых веток в рамках собственной поддержки, включая HardenedPHP. Установленные нами обновления закрывают указанные CVE без обязательного перехода магазина с PHP 7.4 на PHP 8. При этом патч PHP не устраняет возможные ошибки CMS, темы или модулей: их поддержку и будущую миграцию следует планировать отдельно.
Какую роль играет Imunify360
По сообщению CloudLinux, Imunify360 получил правила для блокировки известных вредоносных запросов и публичных инструментов атаки. Это дополнительный уровень защиты. Производитель прямо указывает: WAF не заменяет обновление PHP, поскольку уязвимости шире одного сценария загрузки файлов. На UAhosting применены обе меры — исправления PHP и защита веб-брандмауэра.
Новые переключатели в настройках PHP
После обращения клиента мы добавили возможность самостоятельно выбирать значения session.upload_progress.enabled и fatal_error_backtraces. Откройте cPanel → Select PHP Version → Options («Опции»).
session.upload_progress.enabled управляет отслеживанием прогресса загрузки файлов через PHP-сессии. Значение Off не запрещает загружать файлы, но отключает именно этот механизм прогресса и отмены. Если сайт его не использует, функцию целесообразно отключить. После изменения проверьте формы загрузки. Документация PHP на русском.
fatal_error_backtraces определяет, добавлять ли цепочку вызовов к фатальным ошибкам. Переключатель доступен только для PHP 8.5+. Его отключение уменьшает детализацию диагностики; после установки патчей обеих CVE это не обязательное условие защиты. Для рабочего сайта отдельно следует отключить показ ошибок посетителям через display_errors. Описание параметра PHP.
Важное уточнение: 23 октября PHP сообщил об отдельной проблеме CVE-2026-115560 при редком сочетании настроек сессий и кода приложения. До очередного исправления разработчики рекомендуют session.upload_progress.enabled=0. Это отдельная рекомендация, которую не отменяют патчи двух первоначальных CVE.
Что нужно владельцам сайтов и серверов
Клиентам виртуального хостинга следует поддерживать CMS и модули в актуальном состоянии. Если нужна проверка PHP или новых опций, обратитесь в поддержку и укажите домен. Подробнее о выборе окружения — в нашей инструкции по смене версии PHP.
На VPS и выделенных серверах обновление PHP внутри сервера должен выполнить его администратор: проверить все ветки, установить исправленные пакеты и перезапустить соответствующие процессы. Выполненные нами работы на виртуальном хостинге не означают автоматического обновления клиентских VPS.
От инструкции — к настройке
Условия и возможности соответствующей услуги — на основном сайте UAhosting.
Посмотреть услугу