Сайты

Критическая уязвимость PHP2Shell: что делать владельцу сайта на Битриксе и WordPress

21 октября в PHP закрыли две критические уязвимости, через которые сайт можно взломать без логина и пароля. Под угрозой большинство сайтов на Битриксе, WordPress и самописных PHP-движках. Объясняем без технических деталей: как узнать, касается ли это вас, что написать хостеру и что делать, если сайт на старом PHP 7.

МО

Мария Орлова

Редактор блога

Опубликовано

21 октября 2026 г.

Критическая уязвимость PHP2Shell: что делать владельцу сайта на Битриксе и WordPress

21 октября команда PHP выпустила внеплановые обновления и закрыла две критические уязвимости. Их назвали PHP2Shell. Суть простая и неприятная: злоумышленник может выполнить свой код на сервере сайта, не зная ни логина, ни пароля. А это значит — получить доступ к базе заявок и клиентов, подменить страницы или разместить на сайте вирус.

PHP — язык, на котором работают 1С-Битрикс, WordPress, Joomla, OpenCart и огромное количество самописных сайтов. Поэтому новость касается большинства коммерческих сайтов в рунете.

Что известно

  • Две уязвимости: CVE-2026-109618 и CVE-2026-109619. Обе получили оценку 9,2 из 10 по шкале критичности CVSS.
  • Авторизация не нужна. Атака идёт обычными запросами к сайту из интернета.
  • Под угрозой почти все версии PHP, включая очень старые. Исправления вышли для веток 8.2, 8.3, 8.4 и 8.5.
  • Для PHP 8.1 и старше, включая PHP 7, исправлений не будет: эти версии больше не поддерживаются.
  • Особенно уязвимы серверы с Apache и mod_php — там атака срабатывает ещё до того, как запрос дойдёт до кода сайта. Конфигурации с PHP-FPM тоже уязвимы.
  • На момент публикации CISA не зафиксировало реальных атак. Но технические подробности уже опубликованы, и обычно после этого атаки начинаются в течение нескольких дней.

Источники: PHP Foundation, CISA, технический разбор на Хабре.

Безопасные версии PHP

  • PHP 8.2 — версия 8.2.35 или новее;
  • PHP 8.3 — версия 8.3.36 или новее;
  • PHP 8.4 — версия 8.4.27 или новее;
  • PHP 8.5 — версия 8.5.12 или новее.

Всё, что ниже, — уязвимо. PHP 7.x, 8.0 и 8.1 уязвимы без возможности обновить версию внутри ветки.

Касается ли это вашего сайта

Скорее всего да, если сайт работает на: 1С-Битрикс, WordPress, Joomla, Drupal, OpenCart, MODX, Laravel или любом самописном движке на PHP.

Скорее всего нет, если сайт:

  • сделан на Tilda, Wix или другом конструкторе — платформа обновляет серверы сама;
  • написан на Python (Django, FastAPI), Node.js (Next.js) или Go и на сервере нет PHP.

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

Как узнать версию PHP за пять минут

  • WordPress: «Инструменты» → «Здоровье сайта» → «Информация» → «Сервер».
  • 1С-Битрикс: «Настройки» → «Инструменты» → «Проверка системы».
  • Виртуальный хостинг: версия PHP обычно видна в панели управления хостингом, в настройках сайта.
  • Свой сервер (VPS): попросите разработчика или администратора проверить. Важно: на одном сервере бывает несколько версий PHP, и проверять нужно ту, которая обслуживает сайт, а не просто первую попавшуюся.

Что делать

Если сайт на виртуальном хостинге

Обновление PHP — задача хостинга. Напишите в поддержку, чтобы узнать сроки. Можно отправить такой текст:

Здравствуйте! Мой сайт [адрес] работает на PHP [версия]. 21 октября вышли исправления критических уязвимостей CVE-2026-109618 и CVE-2026-109619 (PHP2Shell). Подскажите, когда на сервере будут установлены PHP 8.2.35 / 8.3.36 / 8.4.27 / 8.5.12 и нужно ли мне что-то сделать со своей стороны?

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

Если сайт на своём сервере

Разработчик или администратор должен:

  1. найти все установленные версии PHP на сервере;
  2. обновить их до исправленных версий;
  3. перезапустить PHP и веб-сервер — без перезапуска продолжит работать старый уязвимый код;
  4. если сайт работает в Docker — пересобрать образы, а не просто перезапустить контейнеры.

Нюанс: Ubuntu, Debian и другие дистрибутивы часто переносят исправления в старую версию, не меняя её номер. Поэтому «по номеру версии вроде уязвим» не всегда означает, что сервер не обновлён, — администратор проверяет это по истории изменений пакета.

Если сайт на PHP 7 или 8.0–8.1

Это самый неприятный случай. Исправлений для этих версий не будет, а временные настройки сервера лишь снижают риск, но не убирают его. Выход — перевести сайт на PHP 8.2 или новее.

Это не всегда «переключить версию в панели»: старые модули Битрикса, плагины WordPress и самописный код могут сломаться. Правильный порядок такой:

  1. сделать полную резервную копию сайта и базы данных;
  2. развернуть копию сайта на новой версии PHP;
  3. проверить ключевые сценарии: формы заявок, каталог, корзину, оплату, личный кабинет, админку;
  4. исправить то, что сломалось;
  5. переключить основной сайт и после переключения ещё раз пройти по формам и оплате.

Пока переезд не завершён, администратор может временно ужесточить настройки сервера. Но это мера на несколько дней, а не решение.

Почему это важно не только технически

Взлом сайта — это не только испорченные страницы. Если у сайта есть формы, в его базе хранятся имена и телефоны клиентов. Утечка персональных данных грозит оборотными штрафами: от 3 млн рублей и выше в зависимости от числа пострадавших, а за повторную утечку — до 3% годовой выручки. О самой утечке нужно уведомить Роскомнадзор в течение 24 часов.

Обновить PHP в разы дешевле, чем разбираться с последствиями.

Коротко

  • Две критические уязвимости в PHP позволяют взломать сайт без логина и пароля.
  • Под угрозой сайты на Битриксе, WordPress и любых PHP-движках.
  • Безопасные версии: 8.2.35, 8.3.36, 8.4.27, 8.5.12 и новее.
  • На хостинге — напишите в поддержку, на своём сервере — обновите PHP и перезапустите его.
  • PHP 7.x, 8.0 и 8.1 исправлений не получат — планируйте переезд на 8.2+.

Не уверены, на какой версии PHP работает ваш сайт? Пришлите адрес — бесплатно проверим, затронут ли он, и скажем, что делать. Если сайт на старом PHP, перенесём его на актуальную версию с резервной копией и проверкой всех форм и оплаты.

Теги:Сайты
Поделиться:Ссылка скопирована
МО

Мария Орлова

Редактор блога

Пишет о сайтах, конверсии и выборе технологий простым языком — без воды и священных войн фреймворков.

Автор статьи
Уязвимость PHP2Shell: как проверить сайт на Битриксе и WordPress | DEVWOW