Содержание

Утром 21 октября Cloudflare зафиксировал в трафике первые попытки эксплуатации уязвимости в PHP. Исправления в тот момент ещё не существовало. К вечеру PHP выпустил экстренное обновление безопасности, которое закрывает CVE-2026-109618 и CVE-2026-109619. Обе уязвимости позволяют удаленно выполнить код на сервере без авторизации. По шкале CVSS v4.0 им поставили 9.2, NVD оценил их в 9.8.

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

CISA рекомендует обновиться как можно скорее.

Что в зоне риска

  • Проблема в самом PHP, а не в CMS или плагинах. WordPress, Magento, Drupal, Laravel и любые другие проекты уязвимы наравне с остальными, даже если у них актуальный код. 
  • Под удар попадает любая схема, где PHP принимает веб-запросы. Самый высокий риск подтвержден для связки с mod_php, но угроза актуальна и для PHP-FPM, FrankenPHP, Apache с mod_php, php-cgi, LiteSpeed.

Порядок действий

  • Сделайте бэкап.
  • Узнайте точную версию PHP: php -v или раздел в панели управления.

Если вы на поддерживаемой ветке

Обновитесь до следующих версий: 8.5.12, 8.4.27, 8.3.36 или 8.2.35. Поставьте тот релиз, что соответствует вашей ветке, а затем перезапустите PHP-FPM и веб-сервер. Пока этого не сделано, в памяти остаётся старая версия, и уязвимость остаётся тоже.

Откуда брать пакеты, зависит от того, как у вас установлен PHP:

PHP из дистрибутива, панели или от LTS-вендора.

Обновляйтесь через вендора, у него уже есть патчи.

На CloudLinux и cPanel пакеты могут выйти чуть позже официального релиза.

Репозиторий Remi (rpms.remirepo.net)

Перейдите на пакеты дистрибутива или соберите PHP из исходников.

Если вы на PHP 8.1 или старше

Эти ветки проект больше не поддерживает, поэтому официальных релизов с исправлением нет. Спросите у вендора, делал ли он бэкпорт. 

Или соберите PHP из исходников. Вышли минимальные патчи под 7.4, 8.0 и 8.1.

Также имеет смысл запланировать переход на поддерживаемую ветку. PHP советует 8.4. Учтите, что это уже миграция, а не обновление пакета, поэтому совместимость CMS и плагинов сначала проверьте на тестовой копии.

Временные меры, если обновление невозможно

  • Отключите отслеживание прогресса загрузки. Выставьте session.upload_progress.enabled = 0 в php.ini или в конфиге пула FPM и перезапустите все воркеры. ini_set() и .user.ini здесь не помогут.
  • На PHP 8.5 добавьте fatal_error_backtraces = 0.
  • Ограничьте размер запроса. Урежьте post_max_size до 8M (или до 32M, если сайту нужны загрузки файлов) и держите upload_max_filesize ниже этого значения: так PHP будет принимать меньшие запросы, и часть векторов атаки закроется. 
  • Включите WAF. Он даст отсрочку до установки патча — обеспечит фильтрацию и блокировку HTTP/HTTPS-трафика.
  • Уберите из открытого доступа приложения, которые не можете обновить. Если они нужны для работы, настройте доступ к ним через VPN.

Помните, что это только временные меры. Проведите обновление как только это будет возможно и не откладывайте его, чтобы защитить системы компании.

Поделиться

Понравилась статья? Оцените

Нет оценок

Вам может быть интересно