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

Содержание
Кто находится в зоне риска
Уязвимости
RCE через повреждение данных при нехватке памяти
RCE через устаревшее глобальное состояние
Как обновиться
Если вы не можете обновиться немедленно
Для CVE-2026-109618 (RCE через OOM)
Для CVE-2026-109619 (устаревшее состояние)
Бюллетени безопасности

21 октября 2026 года выпущена экстренная серия обновлений PHP. PHP 8.5.12, 8.4.27, 8.3.36 и 8.2.35 устраняют две критические уязвимости, которые могут позволить неаутентифицированное удалённое выполнение кода (RCE). Всем пользователям PHP настоятельно рекомендуется немедленно выполнить обновление.

Кто находится в зоне риска

Подвержены риску все установки PHP, обслуживающие веб-запросы, включая:

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

Уязвимости

RCE через повреждение данных при нехватке памяти (OOM), CVE-2026-109618 (GHSA-w8hw-w9fx-j79w). Обработка ситуации нехватки памяти (Out Of Memory) может прервать выполнение PHP в момент, когда внутренние данные запроса инициализированы лишь частично. При последующей очистке запроса PHP может ошибочно считать эти некорректные данные валидными.

RCE через устаревшее глобальное состояние, CVE-2026-109619 (GHSA-6wmf-4rv5-p3rp). Внутреннее состояние, принадлежащее запросу, может сохраниться после освобождения памяти, на которой оно находилось. Следующий запрос, обрабатываемый тем же рабочим процессом, может использовать это устаревшее состояние до того, как оно будет корректно переинициализировано.

Как обновиться

Если вы не можете обновиться немедленно

Обновление является единственным полноценным решением. Однако следующие меры позволяют снизить риск эксплуатации отдельных векторов атаки.

Для CVE-2026-109618 (RCE через OOM)

Для CVE-2026-109619 (устаревшее глобальное состояние)

Установите:

session.upload_progress.enabled=0

и перезапустите все рабочие процессы. Настройка должна применяться через php.ini, конфигурацию пула FPM или конфигурацию веб-сервера. Не полагайтесь на ini_set() или .user.ini.

В PHP 8.5 дополнительно установите:

fatal_error_backtraces=0

и перезапустите все рабочие процессы.

Удалите некорректные или устаревшие настройки, применяемые для каждого запроса и вызывающие диагностические сообщения до завершения инициализации PHP. Скрытие сообщений через error_reporting, display_errors или оператор @ не помогает.

Исправьте все доступные атакующему фатальные ошибки и тайм-ауты выполнения, включая ошибки в:

Бюллетени безопасности

Для полного технического описания рекомендуется ознакомиться с соответствующими бюллетенями безопасности: GHSA-w8hw-w9fx-j79w и GHSA-6wmf-4rv5-p3rp. Полный текст предупреждения на английском языке опубликован на php.net: Security advisory: Critical remote code execution vulnerabilities, update now.

Автор статьи: Андрей Олегович

Похожие статьи
Программирование на PHP
Предупреждение о безопасности PHP
Что нового в PHP 8.5
Разбор ошибок
PHP_errors.log Beget
PHP course: zero to hero in 50 lessons

Поиск по сайту

Канал @aofeed Чат @aofeedchat

Контакты и сотрудничество:
Рекомендую наш хостинг beget.com
Пишите на info@aredel.com если Вы:
1. Хотите написать статью для нашего сайта или перевести статью на свой родной язык.
2. Хотите разместить на сайте рекламу, подходящую по тематике.
3. Реклама на моём сайте имеет максимальный уровень цензуры. Если Вы увидели рекламный блок недопустимый для просмотра детьми школьного возраста, вызывающий шок или вводящий в заблуждение - пожалуйста свяжитесь с нами по электронной почте
4. Нашли на сайте ошибку, неточности, баг и т.д. ... .......
5. Статьи можно расшарить в соцсетях, нажав на иконку сети: