Критические уязвимости CVE-2026-109618 и CVE-2026-109619 в PHP | Патч 21.10.2026
Технологии 21 октября 2026 ⏱ 1 мин чтения

Критические уязвимости в PHP: CVE-2026-109618 и CVE-2026-109619

Разработчики PHP выпустили экстренные обновления для устранения двух критических уязвимостей, позволяющих удалённое выполнение кода на любом PHP-сайте. Уязвимости CVE-2026-109618 и CVE-2026-109619 затрагивают все версии PHP начиная с 5.4 и не требуют наличия функционала загрузки файлов для эксплуатации. Патчи доступны: PHP 8.5.12, 8.4.27, 8.3.36 и 8.2.35. Узнайте, как защитить свой сервер и какие временные меры защиты существуют.
Поделиться:
Сезонная скидка на разработку интернет-магазинов

Разработчики PHP анонсировали публикацию 21.10.2026 в 17:00 (MSK) экстренных корректирующих выпусков (8.5.12, 8.4.27, 8.3.36 и 8.2.35), в которых будут устранены две критические уязвимости. Всем администраторам серверов с PHP рекомендовано незамедлительно установить исправления на своих системах, сразу после их выпуска. Официально детали будут раскрыты только после появления исправлений, но судя по появившейся в открытом доступе информации, речь про уязвимости CVE-2026-109618 и CVE-2026-109619, потенциально позволяющие удалённо выполнить свой код на любом web-сервере, выполняющем PHP-скрипты в конфигурации по умолчанию. Проблемы проявляются во всех версиях, начиная с PHP 5.4.

В сети уже появились прототипы эксплоитов (1, 2) для проверки подверженности систем уязвимости. В примечании к эксплоиту утверждается, что уязвимости вызваны обращением к уже освобождённой памяти в обработчике отслеживания прогресса загрузки файлов на сервер (session.upload_progress). Наличия на сайте функциональности для загрузки файлов для совершения атаки не требуется, достаточно автоматического срабатывания в PHP-интерпретаторе обработчика контента "multipart/form-data". Для успешной эксплуатации требуется определение раскладки структур в памяти процесса, которая специфична в каждой сборке (проблема решается перебором в эксплоите смещений, заранее вычисленных для пакетов из разных дистрибутивов).

В качестве обходного пути защиты встречаются рекомендации выставить в php.ini параметр "session.upload_progress.enabled = off" (или "php_admin_flag[session.upload_progress.enabled] = off" в PHP-FPM), но представитель проекта PHP, а также автор первого прототипа эксплоита утверждают, что для блокирования обеих уязвимостей этого недостаточно. В примечании ко второму прототипу эксплоита упоминается, что помимо вышеупомянутой настройки в php.ini для предотвращения атаки без применения патча требуется полная блокировка запросов с типом контента "multipart/form-data", которая приведёт к невозможности загрузки файлов через web-формы.

В Apache httpd для блокировки multipart-запросов можно использовать следующее правило в mod_rewrite:


   RewriteCond %{HTTP:Content-Type} multipart [NC]
   RewriteRule ^ - [F,L]

Для блокировки в nginx:


    if ($http_content_type ~* "multipart") {
        return 403;
    }

Для блокировки в Caddy:


   @multipart header_regexp Content-Type (?i)multipart
   respond @multipart 403

Информация взята со статьи opennet.ru

UPD

Официальной командой разработчиков php были установлены патчи на версии 8.5.12, 8.4.27, 8.3.36 и 8.2.35, закрывающие уязвимости CVE-2026-109618 и CVE-2026-109619. php.net

Поделиться:

Готовы обсудить ваш проект?

Оставьте заявку, и я свяжусь с вами в течение 2 часов в рабочее время (Пн-Пт 9:00-18:00).