Атаки PHP2Shell: как проверить и защитить сайт на WordPress и Joomla
После новостей об уязвимостях PHP сайт может выглядеть как обычно. Но стоит проверить, установлено ли исправление на хостинге и нет ли признаков вмешательства. Объясняю, с чего начать и когда потребуется восстановление сайта.
PHP2Shell затрагивает серверную среду. Обновление WordPress, Joomla или плагинов не заменяет установку исправления PHP.
Не знаете, защищён ли ваш сайт?
Я проверю PHP и наличие исправлений, разберусь с совместимостью CMS и помогу с обновлением. Если сайт уже взломан, проверю причину, удалю вредоносный код и помогу восстановить работу.
Вы общаетесь напрямую со мной. Объём, стоимость и сроки согласуем до начала работы.
Что произошло в октябре 2026 года
21 октября разработчики выпустили обновления PHP, закрывающие две критические уязвимости: CVE-2026-109618 и CVE-2026-109619. При определённых условиях они позволяют выполнить код на сервере без входа в CMS.
Проблема находится в PHP, на котором работают многие сайты и магазины. Она касается и WordPress, и Joomla, и других PHP-приложений. Поэтому проверять нужно серверную среду, а не только версию движка сайта.
22 октября Imperva сообщила о 482 342 запросах к 21 998 сайтам в 103 странах за первые сутки наблюдений. Это данные одного провайдера о сканировании и попытках эксплуатации. Они не означают, что все эти сайты были взломаны.
Внешний вид не подтверждает, что исправление установлено. Но сама новость об уязвимости тоже не доказывает взлом вашего сайта. Нужны проверка версии, сведения об обновлении и, при подозрениях, разбор файлов и журналов.
Что делать в вашей ситуации
01 Сайт работает, но вы не знаете версию PHP
Уточните в панели хостинга, какой обработчик обслуживает домен, и запросите подтверждение исправления. Если информации недостаточно, пришлите ответ хостинга: обсудим, что нужно проверить.
02 PHP старый, а сайт давно не обновляли
Сначала оцените совместимость CMS, темы, расширений и собственного кода. Подготовьте резервную копию и план возврата. Для старого магазина разумно проверить переход на тестовой копии, прежде чем менять рабочую среду.
03 Появились редиректы, чужие файлы или спам
Нужна проверка на компрометацию. Обновление PHP закрывает уязвимость, но не удаляет уже загруженный вредоносный код и не отменяет изменения в базе данных.
Как проверить версию PHP и наличие исправления
Начните с настроек конкретного домена в панели хостинга. У доменов и поддоменов на одном аккаунте могут быть разные обработчики PHP. Версия из командной строки тоже может отличаться от версии, которая обслуживает сайт.
Для поддерживаемых веток разработчики PHP выпустили следующие исправления 21 октября:
| Ветка | Релиз с исправлением |
|---|---|
| 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. Поэтому надписи «PHP 8.3» недостаточно: нужно знать точную сборку и наличие патча у поставщика.
Для PHP 8.1 и старше уточните статус исправлений у провайдера и план перехода на поддерживаемую ветку. Наличие исправления от отдельного поставщика не делает старую версию долгосрочно поддерживаемой самим проектом PHP.
После переключения могут перестать работать старые расширения, формы или оплата. До изменения сохраните файлы и базу данных, проверьте совместимость и убедитесь, что сможете вернуть рабочую конфигурацию.
Что написать в поддержку хостинга
Можно отправить такой запрос, подставив свой домен:
Пароли и ключи доступа в первое сообщение отправлять не нужно.
Ответ «защита включена» стоит уточнить: речь идёт об исправлении PHP или только о фильтрации запросов. Разработчики PHP указывают, что временные меры не заменяют обновление.
Неясен ответ хостинга? Обсудить проверку →Что делать, если есть признаки взлома
Переадресация на чужой сайт, новые администраторы, неизвестные PHP-файлы, изменённые страницы или предупреждение хостинга требуют разбора. Причина может быть связана с разными уязвимостями, поэтому автоматически приписывать заражение PHP2Shell нельзя.
- Ограничьте ущерб. При вредоносных редиректах или краже данных обсудите с хостингом временное ограничение доступа к затронутому сайту.
- Сохраните материал для проверки. Сделайте отдельную копию текущих файлов, базы и доступных журналов. Пометьте её как потенциально заражённую.
- Не восстанавливайте старый бэкап вслепую. В нём уже может быть вредоносный код, а после отката магазин может потерять новые заказы.
- Установите причину и устраните последствия. Нужны проверка файлов, базы, пользователей, заданий планировщика и точек повторного доступа.
- Обновите среду и доступы. После очистки смените затронутые пароли и ключи, проверьте права и отследите, не появляются ли изменения снова.
Отдельно проверьте отправку заявок, письма о заказах и оплату. Даже после удаления редиректа сайт может оставаться неисправным для клиентов.
Подробнее: что делать после взлома Joomla и как убрать вредоносный редирект.
Чем я могу помочь с вашим сайтом
Я занимаюсь доработкой и поддержкой сайтов. Можно обратиться с WordPress, Joomla или другой PHP-системой. Сначала посмотрю задачу и доступность исправлений, затем согласуем работы.
Проверка и обновление PHP
- Уточнение версии, сборки и статуса исправлений.
- Оценка совместимости CMS и расширений.
- Подготовка копии и порядка обновления.
- Обновление или взаимодействие с хостингом в рамках согласованного доступа.
- Проверка страниц, форм и согласованных сценариев магазина.
Восстановление после взлома
- Разбор признаков заражения и доступных журналов.
- Поиск и удаление вредоносного кода.
- Проверка повторного доступа и причины заражения.
- Восстановление согласованных функций сайта.
- Рекомендации по дальнейшей защите и контролю.
После работы вы получите описание найденной проблемы, внесённых изменений и проведённых проверок. Если для следующего шага нужна доработка или помощь хостинга, объясню, что именно требуется.
Стоимость зависит от состояния сайта, доступов, совместимости и объёма восстановления. Отдельные работы и платные инструменты согласуем до их выполнения.
Обсудить мой сайтЧастые вопросы
У меня обновлены WordPress и плагины. Это закрывает PHP2Shell?
Нужно отдельно подтвердить установку исправления PHP на сервере. Обновление CMS не заменяет обновление серверной среды.
Хостинг обновил PHP. Нужно ли ещё что-то проверять?
Уточните, что обновлён обработчик вашего домена. Затем проверьте работу сайта. Если до обновления были признаки вмешательства, нужна отдельная проверка на заражение.
Может ли онлайн-сканер точно определить, что сайт защищён?
По одному адресу сайта обычно нельзя надёжно подтвердить сборку PHP и наличие патча. Для этого нужны сведения хостинга или проверка серверной конфигурации. Внешняя проверка может помочь заметить отдельные симптомы.
Обновление PHP удалит вирусы?
Нет. Оно устраняет соответствующую уязвимость, но уже внесённые изменения в файлы, базу или доступы нужно проверять и устранять отдельно.
Вы работаете только с WordPress и Joomla?
Можно обратиться с другой PHP-системой или собственным сайтом. Возможность и объём работы определю после знакомства с проектом.
Сколько стоит проверка или восстановление?
Сначала нужны адрес сайта, описание ситуации и сведения о хостинге. После уточнения задачи согласуем состав работ и стоимость.