Критическое обновление безопасности PHP (php2shell): что делать владельцам магазинов PrestaShop прямо сейчас

Две критические уязвимости PHP (CVSS 9.2) затрагивают практически каждый магазин PrestaShop. Какие версии PHP исправлены и что делать сегодня.

Автор: Presta Support Опубликовано Проверено

Окно терминала с выводом php -v и кнопкой "Обновить сейчас" рядом с защитным щитом лаймового цвета

21 октября 2026 года проект PHP выпустил исправления для двух критических уязвимостей в самом PHP. Обеим присвоен рейтинг CVSS 9.2, а исследователи, обнаружившие их, называют их php2shell. Проблема заключается не в PrestaShop или каком-либо модуле, но поскольку каждый магазин PrestaShop работает на PHP, это затрагивает практически каждый магазин. Ниже рассказывается о том, что происходит, какие версии PHP исправлены и что вам следует сделать сегодня.

В чем проблема?

Две уязвимости находятся в среде выполнения PHP — слое, который работает до выполнения собственного кода PrestaShop. Согласно анонсу, злоумышленник может использовать их для сбоя процессов PHP, чтения конфиденциальных данных или, в худшем случае, для выполнения кода на вашем сервере без входа в систему.

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

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

Почему обновление PrestaShop не помогает

Обновление PrestaShop или ваших модулей не исправляет это. Защита внутри приложения не может остановить атаку, которая происходит до выполнения кода приложения. Единственное реальное исправление — это обновленная версия PHP на вашем сервере.

Какие версии PHP исправлены?

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

Что вам следует сделать сейчас

1. Проверьте свою версию PHP

В бэк-офисе PrestaShop перейдите в раздел Дополнительные параметры > Информация. Там вы увидите, на какой версии PHP работает ваш магазин.

2. Запросите у хостинга письменное подтверждение

Свяжитесь с вашим хостинг-провайдером и уточните, применено ли к вашему серверу исправление для CVE-2026-109618 и CVE-2026-109619. Запросите ответ в письменном виде.

3. Вы сами управляете своим сервером?

  • Установите обновленные пакеты PHP из вашего дистрибутива или официальных релизов PHP.
  • Перезапустите каждый процесс PHP: пулы PHP-FPM, Apache, LiteSpeed и воркеры FrankenPHP. Установленное, но не загруженное обновление не защищает вас.
  • В день релиза проект PHP не рекомендовал ждать репозиторий rpms.remirepo.net, поддерживаемый волонтерами, и рекомендовал пакеты дистрибутива или сборку из исходного кода.
  • Используете Docker? Пересоберите свои образы на обновленном базовом образе и разверните их снова.

4. Все еще используете PHP 8.1 или более старую версию?

Уточните у хостинга, была ли пропатчена ваша версия PHP. Обновление PrestaShop до версии, поддерживающей более новый PHP, — это отдельная долгосрочная задача, а не экстренное исправление. Для планирования: PrestaShop 9 поддерживает PHP с 8.1 по 8.5, а поддержка PHP 8.2 заканчивается 31 декабря 2026 года. Магазины на PrestaShop 1.7 и 8.x обычно до сих пор работают на PHP 7.x или 8.1.

Временные меры, если вы пока не можете обновиться

Эти меры предназначены для технических команд. Сначала протестируйте их на тестовой копии; они снижают риск, но не заменяют обновление PHP.

Для CVE-2026-109618:

  • Уменьшите post_max_size: в рекомендациях указано 8M, если ваш магазин не принимает загрузки, и 32M, если принимает. Значение upload_max_filesize должно быть ниже этого предела.
  • Также настройте ограничения размера запросов на вашем веб-сервере или обратном прокси.

Для CVE-2026-109619:

  • Установите session.upload_progress.enabled=0 в php.ini, пуле PHP-FPM или конфигурации сервера и перезапустите все воркеры. Использование ini_set() или .user.ini недостаточно.
  • В PHP 8.5 также установите fatal_error_backtraces=0 и перезапустите воркеры.

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

Помогает ли брандмауэр веб-приложений (WAF)?

Cloudflare развернул специальные правила WAF для php2shell, которые включены по умолчанию с 21 октября. На платном тарифном плане убедитесь, что управляемый набор правил настроен на блокировку (block). Имейте в виду, что WAF защищает только тот трафик, который проходит через него: убедитесь, что ваш сервер принимает веб-трафик только от вашего провайдера WAF. WAF — это дополнительный уровень защиты, а не замена обновлению PHP.

Нужна помощь?

Не уверены, пропатчен ли ваш сервер, или все еще используете старую версию PHP? Мы проверим версию и конфигурацию вашего PHP, зададим правильные вопросы вашему хостингу и поможем спланировать переход на поддерживаемую версию PHP и PrestaShop. Узнайте больше о нашей услуге безопасности, запланируйте обновление или задайте нам вопрос.

Источник: «Critical PHP security updates: what PrestaShop users need to know» на build.prestashop-project.org (21 октября 2026 г.) и бюллетени безопасности PHP для CVE-2026-109618 и CVE-2026-109619.

  • Безопасность
  • PHP
  • PrestaShop
  • Хостинг