VMTech
Обсудить проект →

PHP устранил две критические RCE-уязвимости PHP2Shell

PHP устранил две критические RCE-уязвимости PHP2Shell

Проект PHP выпустил экстренные обновления для двух критических уязвимостей PHP2Shell — CVE-2026-109618 и CVE-2026-109619 с оценкой 9,2 по CVSS v4.0. Ошибки позволяют неаутентифицированному атакующему выполнить код на веб-сервере. Исправления доступны в PHP 8.5.12, 8.4.27, 8.3.36 и 8.2.35.

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

Какие конфигурации затронуты

Консультатив PHP относит к потенциально уязвимым PHP-FPM, Apache mod_php, php-cgi, FrankenPHP и LiteSpeed. Наибольший риск связан с Apache mod_php: исследователи продемонстрировали эксплуатацию, при которой единственный неаутентифицированный запрос запускает атаку до выполнения кода приложения.

Для PHP-FPM ситуация различается по двум ошибкам. Для CVE-2026-109618 PHP допускает уязвимость, но полноценный эксплойт для FPM не демонстрировался. CVE-2026-109619 исследователи показали с выполнением кода и на mod_php, и на PHP-FPM, однако сценарий для FPM зависит от операции внутри работающего приложения.

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

Что установить и проверить

Администраторам следует обновить PHP runtime, обслуживающий веб-запросы, и перезапустить Apache, PHP-FPM и длительно работающие PHP-процессы. Обновление WordPress, Laravel или другого приложения не меняет версию PHP на сервере: пакет должен поставить провайдер, дистрибутив Linux либо контейнерный образ.

  • Ветка 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 и более старые ветки больше не получают обновлений от проекта. Для PHP 7.4, 8.0 и 8.1 опубликованы исходные бэкпорты. В пакетах LTS-дистрибутивов исправление может быть перенесено без изменения заметного номера версии, поэтому PHP рекомендует проверять changelog пакета по идентификаторам CVE.

Временные меры не заменяют обновление

PHP подчёркивает, что полную защиту даёт только обновление. Для CVE-2026-109618 в качестве снижения риска предлагается задать memory_limit=-1, не позволяя приложениям переопределять параметр, уменьшить post_max_size и ограничить размер запросов на веб-сервере или прокси. Использовать RLIMIT_AS и RLIMIT_DATA вместо этого не следует: они могут задействовать тот же уязвимый путь.

Для CVE-2026-109619 можно отключить session.upload_progress.enabled, перезапустить все воркеры, а в PHP 8.5 также установить fatal_error_backtraces=0. Однако отключение прогресса загрузки закрывает лишь подтверждённые пути через сессии и не устраняет все варианты атаки.

Cloudflare сообщила о ранних попытках эксплуатации ещё до выхода патча и развернула правила межсетевого экрана как временную меру. Подтверждённых успешных взломов в опубликованных данных нет. Для бизнеса практический приоритет — инвентаризировать веб-узлы с PHP, установить пакет с исправлениями, перезапустить обработчики запросов и проверить журналы на необычные multipart-запросы, ошибки лимита памяти, HTTP 500 и внеплановые перезапуски воркеров.

#phpsecurity#websecurity#vulnerability#patchmanagement
Открытая аналитика
На сайте 1 просмотров
мин чтения 4 21.10.2026
Instagram

PHP устранил две критические RCE-уязвимости PHP2Shell

Открыть публикацию в Instagram ↗