Связаться →
← Все статьи
4 мин. чтения

PHP2Shell: две критические уязвимости PHP, которые угрожают сайтам

В октябре 2026 года в PHP обнаружены две критические уязвимости с возможностью удалённого выполнения кода. Объясняем риски, затронутые версии и порядок защиты.

WEB-LABS KNOWLEDGE BASE

21 октября 2026 года разработчики PHP выпустили экстренные обновления безопасности. Причиной стали две критические уязвимости — CVE-2026-109618 и CVE-2026-109619, получившие общее неофициальное название PHP2Shell.

Обе уязвимости получили оценку 9,2 балла по CVSS v4.0. При определённых условиях они позволяют злоумышленнику выполнить произвольный код на сервере без предварительной авторизации.

Предупреждения опубликовали разработчики PHP, национальная служба реагирования на компьютерные инциденты Казахстана KZ-CERT и другие организации, занимающиеся кибербезопасностью.

Важно для владельцев сайтов

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

Что такое PHP2Shell и почему это опасно

PHP — серверный язык программирования, на котором работает множество сайтов, включая WordPress, интернет-магазины и корпоративные веб-приложения.

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

Обнаруженные уязвимости относятся к внутренним механизмам обработки памяти PHP. В определённых условиях специально сформированные HTTP-запросы могут вызвать ошибки управления памятью и привести к выполнению постороннего кода.

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

Две уязвимости: в чём различие

CVE-2026-109618 — повреждение памяти при нехватке ресурсов

Первая уязвимость связана с обработкой ситуации, когда PHP исчерпывает доступный лимит памяти — Out of Memory (OOM).

При прерывании обработки запроса некоторые внутренние структуры могут остаться не полностью инициализированными. Последующая очистка памяти в определённых условиях способна обратиться к некорректным данным.

При успешной эксплуатации это может привести к нарушению работы PHP-процесса или удалённому выполнению кода.

CVE-2026-109619 — использование устаревшего состояния памяти

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

При обработке следующего запроса PHP-процесс может обратиться к такому устаревшему состоянию до завершения обычной инициализации. Это создаёт условия для нарушения целостности памяти и выполнения постороннего кода.

Обе проблемы относятся к критическим, поскольку для некоторых сценариев атаки не требуется предварительно получать логин и пароль администратора.

Что означает RCE

Remote Code Execution (RCE) — удалённое выполнение кода. Если такая атака успешна, злоумышленник может выполнять действия в пределах прав уязвимого серверного процесса. Конкретные последствия зависят от конфигурации сервера и предоставленных ему разрешений.

Какие версии PHP подвержены угрозе

21 октября 2026 года были выпущены исправленные версии для актуальных веток PHP:

Ветка PHP Уязвимые версии Исправленная версия
PHP 8.28.2.34 и старше8.2.35
PHP 8.38.3.35 и старше8.3.36
PHP 8.48.4.26 и старше8.4.27
PHP 8.58.5.11 и старше8.5.12

Если сайт использует более старую ветку PHP, ситуация сложнее. Например, PHP 5.6, 7.x, 8.0 и 8.1 больше не получают обычные обновления безопасности от основного проекта PHP.

Некоторые поставщики серверного программного обеспечения поддерживают такие версии самостоятельно и выпускают исправленные сборки. Но наличие одинакового номера версии ещё не гарантирует наличие необходимого исправления.

Например, Plesk выпустил исправленные сборки PHP 7.4.33, 8.0.30 и 8.1.34 для Linux с датой сборки 21 октября 2026 года. Для более старых версий может потребоваться отдельная расширенная поддержка.

Предпочтительное решение — переход на поддерживаемую ветку PHP и установку всех доступных исправлений.

Почему WordPress тоже находится в зоне риска

WordPress работает на PHP. Следовательно, безопасность сайта зависит не только от самого WordPress и его дополнений, но и от серверной среды.

Даже если на сайте установлены актуальные плагины, используются сложные пароли и ограничен доступ к административной панели, уязвимость в PHP остаётся отдельным риском.

Такая ситуация характерна не только для WordPress. Аналогичная проблема может затрагивать другие PHP-приложения, работающие на уязвимой версии интерпретатора.

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

Как проверить версию PHP на своём сайте

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

Для сайтов под управлением WordPress версия обычно отображается в разделе «Инструменты → Здоровье сайта → Информация → Сервер».

В Plesk версию PHP, используемую конкретным сайтом, можно посмотреть в разделе настроек PHP соответствующего домена.

01 Определить версию PHP
02 Сверить с исправленной
03 Подготовить резервную копию
04 Обновить PHP
05 Проверить работу сайта
Проверка после обновления PHP
01

Проверить версию PHP, которую использует именно сайт

02

Убедиться, что установлена исправленная сборка

03

Открыть главную страницу и основные разделы

04

Проверить административную панель WordPress

05

Проверить формы обратной связи и отправку писем

06

Проверить плагины, интеграции и фоновые задания

07

Убедиться, что новые ошибки PHP не появились в журналах

Почему нельзя просто переключить PHP без проверки

Обновление PHP устраняет известные уязвимости соответствующей версии, но переход между основными ветками может выявить несовместимость старого программного обеспечения.

Особенно внимательно необходимо подходить к сайтам, которые много лет работают на PHP 5.6 или 7.x, используют устаревшие темы, неподдерживаемые плагины либо индивидуально разработанный код.

При резком переходе на PHP 8.x такой сайт может перестать открываться из-за несовместимых функций или синтаксиса.

Поэтому профессиональное обновление включает не только переключение версии, но и проверку совместимости, резервное копирование и тестирование.

Не путайте безопасность и работоспособность

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

Что делать владельцу сайта прямо сейчас

Оптимальная последовательность действий зависит от того, кто управляет сервером и есть ли доступ к настройкам PHP.

План защиты сайта от PHP2Shell
01

Определить фактическую версию PHP и поставщика сборки

02

Проверить сведения об исправлениях у PHP или хостинг-провайдера

03

Сделать резервную копию файлов и базы данных

04

По возможности проверить обновление на тестовой копии сайта

05

Установить исправленную версию PHP

06

Проверить работоспособность сайта и интеграций

07

Просмотреть журналы на предмет необычных ошибок и подозрительных запросов

08

Продолжить регулярное обновление WordPress и его компонентов

Если используется собственный сервер, необходимо учитывать не только PHP сайтов, но и другие компоненты инфраструктуры. Например, Plesk также выпускал исправления для внутреннего PHP-движка панели управления.

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

Обновление PHP — только один уровень защиты

Даже после устранения PHP2Shell сайту по-прежнему необходимы контроль доступа, резервное копирование, обновление компонентов и защита публичных форм.

Отдельно мы разобрали, почему через формы WordPress проходит спам и как защитить сайт от автоматических отправок.

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

FAQ / PHP SECURITY

Частые вопросы

Ответы на основные вопросы о безопасности PHP.

Нужно ли обновлять WordPress после обнаружения PHP2Shell?

WordPress рекомендуется поддерживать в актуальном состоянии. Но для устранения CVE-2026-109618 и CVE-2026-109619 требуется исправление PHP.

Если сайт работает нормально, значит он защищён?

Нет. Нормальная работа сайта не подтверждает отсутствие уязвимостей. Необходимо проверить версию PHP и наличие исправлений.

Достаточно ли установить антивирус или WAF?

Нет. Эти средства дополняют защиту, но не заменяют исправление PHP.

Можно ли безопасно использовать старый PHP?

Некоторые поставщики выпускают исправленные сборки устаревших версий. Долгосрочное решение — переход на поддерживаемую ветку PHP.

Источники

Нужна помощь с обновлением PHP или восстановлением сайта?

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