Старая деревянная дверь с трещиной в раме, подсвеченной красным, и надпись «Проверь свой сайт»

Уязвимость PHP на сайте эксперта: как проверить без программиста

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

Что случилось с PHP 21 октября и при чем тут ИИ?

Коротко: 21 октября разработчики PHP закрыли две дыры с оценкой 9,2 из 10. Через них чужой человек может запустить свой код на сервере без всякого пароля. Нашли их две команды исследователей с помощью ИИ-моделей. Если сайт работает на PHP, ему нужна исправленная версия: уязвимость PHP закрывает только обновление.

По оценке исследователей Wiz, на PHP работает около 70% сайтов в мире. На нем написаны WordPress, Битрикс, Joomla и еще куча движков (программ, из которых собирают сайт), так что уязвимость PHP задевает их все.

21 октября команда PHP выпустила версии 8.5.12, 8.4.27, 8.3.36 и 8.2.35. В объявлении на php.net написано прямо: две уязвимости позволяют выполнить код на сервере без входа в систему, обновиться нужно немедленно. Временные настройки сервера, по словам команды PHP, безопасной установку не делают.

Разработчики оценили каждую дыру в 9,2 балла из 10 по шкале опасности CVSS. Wiz дала им общее имя PHP2Shell.

Кто нашел, рассказывают по-разному. OpenAI пишет, что компания Calif нашла одну из дыр с помощью модели GPT-5.6 Sol, а Wiz независимо нашла обе. Сама Wiz называет среди своих инструментов Gemini 4 Argon и ту же GPT-5.6 Sol.

«Уязвимости, конечно, нашли не люди»

канал «Сиолошная», Telegram, https://t.me/seeallochnaya/4001

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

Если Wiz права, ИИ достал то, что люди пропускали больше десяти лет.

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

Коротко: касается, если сайт стоит на WordPress, Битриксе или другом движке у тебя на хостинге. На Tilda, GetCourse и других конструкторах сервер держит сама платформа, и обновлять PHP там - ее работа. Заявлений этих платформ о дыре я не нашел. Сайт на конструкторе - напиши в их поддержку и спроси прямо.

Хостингу ты платишь за место под сайт на сервере и вспоминаешь про него, когда приходит счет.

На Reddit под новостью появился вопрос, который задал бы почти любой эксперт:

«How do I know if I'm running PHP?» (перевод: как понять, есть ли у меня вообще PHP?)

пользователь Reddit, сообщество r/Wordpress, https://www.reddit.com/r/Wordpress/comments/1xbmw05/

Ответ зависит от того, где живет сайт.

Где сайтКто обновляет PHPЧто сделать тебе
WordPress или Битрикс на обычном хостингехостингузнать версию и спросить хостинг
Отдельный сервер (VPS)ты или подрядчикобновить самим
Tilda, GetCourse, Taplinkплатформаспросить поддержку

VPS - отдельный виртуальный сервер: его настраивает сам владелец. Beget, например, прямо написал клиентам: на обычном хостинге все обновил сам, а на VPS обновлять PHP нужно самостоятельно.

Сайт на конструкторе от тебя почти не зависит. Минус у этого тоже есть: когда платформа ложится, сделать ничего нельзя. Что делать, если легла платформа и оплаты не проходят, - в разборе про GetCourse и Prodamus.

Где искать хостинг, если сайт делал подрядчик?

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

22 октября в сообществе r/Wordpress написал сотрудник одной компании. У них три сайта на WordPress, один из них - интернет-магазин. Автор поста признается, что в технике не разбирается.

«Our IT guy is on vacation without a laptop.» (перевод: наш айтишник в отпуске и без ноутбука.)

пользователь Reddit, сообщество r/Wordpress, https://www.reddit.com/r/Wordpress/comments/1xcf1vm/

Знакомо.

Самый толковый ответ в той ветке был короткий: это в основном работа хостинга, а найти хостинг можно по счетам и письмам от него.

«Non-technical version... this is mostly your hosting company's job.» (перевод: если без техники, это в основном работа твоего хостинга.)

пользователь Reddit, ответ в той же ветке r/Wordpress, https://www.reddit.com/r/Wordpress/comments/1xcf1vm/

Открой почту и поищи «хостинг», «продление», «hosting», «оплата сервера». В письмах будет название компании и, скорее всего, адрес панели.

А если сайт оплачивает подрядчик?

Тогда письмо ему, одной строкой: «Где стоит мой сайт и как мне попасть в панель хостинга?». Нормальный подрядчик ответит на это в тот же день.

И пароль от панели после этого запиши к себе, а не только в переписку с подрядчиком.

Хочешь доход с ИИ, который не держится на хостинге и айтишнике в отпуске? В ролике ниже способы заработка оценены для тех, у кого нет команды.

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

Коротко: версию PHP видно в двух местах. В WordPress - в разделе «Здоровье сайта», на вкладке с информацией о сервере. В панели хостинга - в настройках сайта, рядом с выбором версии. Если ни там, ни там не нашлось, спроси поддержку хостинга: для них это быстрый вопрос.

Чтобы понять, задела ли тебя уязвимость PHP, нужен номер версии. Начни с админки WordPress (страницы управления сайтом), если сайт на нем.

  1. Зайди в админку сайта.
  2. В меню слева открой «Инструменты», затем «Здоровье сайта».
  3. Перейди на вкладку «Информация» и разверни раздел «Сервер».
  4. Найди строку с версией PHP и перепиши номер целиком, со всеми цифрами после точек.

На вкладке «Состояние» WordPress иногда сам пишет, что версия PHP устарела и ее надо обновить, с пометкой «Безопасность». Менять тут ничего нельзя. По справке WordPress, этот экран только показывает информацию.

Вторая дорога - панель хостинга. У Timeweb версия стоит в разделе «Сайты»: шестеренка у нужного сайта, блок «Настройки версии и кодировки». У REG.RU в панели ispmanager - раздел «Сайты», двойной щелчок по домену, поле «Версия PHP (CGI)».

В справках иногда советуют создать на сайте служебный файл с командой phpinfo. Этот путь пропусти (такой файл потом легко забыть на сайте). Панель и поддержка дают тот же номер.

Версия старая - значит, сайт уже дырявый?

Коротко: не обязательно. Версии, где уязвимость PHP закрыта, - 8.2.35, 8.3.36, 8.4.27, 8.5.12 и все, что новее. Но хостинги ставили заплатки, то есть исправления, и на старые версии, а номер версии после такой заплатки часто остается прежним. Поэтому одной цифры в панели мало: письменно подтвердить, что исправление стоит, должен сам хостинг.

«PHP 8.1 and older no longer receive updates from the PHP project.» (перевод: PHP 8.1 и более старые версии больше не получают обновлений от проекта PHP.)

команда PHP, объявление о безопасности, php.net, https://www.php.net/archive/2026.php

Но для 7.4, 8.0 и 8.1 команда PHP все-таки выложила заготовки исправлений, из которых хостинг может сделать заплатку сам. Ондржей Сура, который ведет популярные сборки PHP для серверных систем Debian и Ubuntu, 21 октября выпустил заплатки сразу для 12 линеек PHP, пишет Хабр. Линейка - все версии с одним началом, например 8.2.

Часть хостингов этим воспользовалась.

«мы обновили все версии PHP доступные пользователям. От самых старых до безопасных версий и сняли все временные ограничения.»

Beget, новость «Уязвимость в PHP от 21.10.2026», https://beget.com/ru/news/2026/uyazvimost-v-php-ot-21-10-2026

Только по панели этого не видно.

«the version number can stay the same even after the fix... so ask the host to confirm the cve fix itself» (перевод: номер версии может остаться тем же и после исправления, так что проси хостинг подтвердить само исправление.)

пользователь Reddit, сообщество r/Wordpress, https://www.reddit.com/r/Wordpress/comments/1xbmw05/
Что в панелиЧто это значитЧто делать
8.2.35, 8.3.36, 8.4.27, 8.5.12 и вышеисправление стоитничего срочного
8.2-8.5, номер нижезаплатки нет или номер не сменилсяспросить хостинг
8.1 и нижеобновлений от проекта PHP нетспросить хостинг, планировать 8.2+

Линейка 8.2 тоже доживает: по данным php.net, ее поддержка кончается 31 декабря 2026 года. Переходи сразу на 8.3 или 8.4.

Что написать хостингу, чтобы получить ответ?

Коротко: хостингу задай два главных вопроса: какая версия PHP стоит на сайте и установлены ли исправления от 21 октября. Попроси ответить письменно, в чате поддержки или по почте. Если поддержка отвечает общими словами или вообще не понимает, о чем речь, это тоже ответ. Съезжай с такого хостинга, когда пожар потушишь.

Один из владельцев сайтов в r/smallbusiness на Reddit написал, что хостинг присылает автоматические письма про «критическое обслуживание» без единой детали. Спросить у хостинга версию PHP напрямую - до той ветки такой мысли у автора комментария не было (обсуждение в r/smallbusiness).

Бывает смешнее.

«When I contacted my host they asked me to send them a link to the announcement» (перевод: на мое обращение хостинг попросил прислать ему ссылку на объявление.)

пользователь Reddit, сообщество r/Wordpress, https://www.reddit.com/r/Wordpress/comments/1xb5npo/

Мерку для ответа дал автор поста в r/smallbusiness:

«If they can't answer clearly, that's your answer.» (перевод: если внятно ответить не могут, это и есть ответ.)

пользователь Reddit, сообщество r/smallbusiness, https://www.reddit.com/r/smallbusiness/comments/1xc0x6b/

Malwarebytes советует то же самое, только официальнее.

«Попросите своего хостинг-провайдера или IT-специалиста подтвердить, что исправления PHP установлены»

Malwarebytes Labs, https://www.malwarebytes.com/ru/blog/bugs/2026/10/php2shell-why-websites-are-going-offline-for-emergency-security-updates

Вот письмо, которое можно отправить как есть. Подставь адрес сайта.

Здравствуйте! Мой сайт: <адрес сайта>.

1. Какая версия PHP сейчас стоит на этом сайте?
2. Установлены ли исправления уязвимостей PHP от 21 октября 2026 года (CVE-2026-109618 и CVE-2026-109619)?
3. Если версия 8.1 или более ранняя: поставлена ли на нее заплатка и на какую версию вы советуете перейти?
4. Есть ли у вас свежая резервная копия сайта и как ее восстановить?

Прошу ответить письменно. Спасибо!

Номера в скобках - официальные имена этих дыр, хостинг их поймет. Четвертый вопрос - на случай, если обновление что-то сломает.

Поставить плагин безопасности и выдохнуть?

Коротко: дыра сидит в самом PHP на сервере, а плагин, то есть дополнение, живет внутри сайта. Эту дыру закрывает только исправленная версия PHP на сервере: плагин безопасности и обновление WordPress до нее не достают. Плагины обновлять все равно нужно: у них свои дыры, и одну из них в октябре уже ломали.

Первое желание после такой новости - поставить плагин с надписью «безопасность» и выдохнуть.

«Updating your plugins and themes won't fix an outdated PHP runtime.» (перевод: обновление плагинов и тем не исправит устаревший PHP.)

пользователь Reddit, сообщество r/Wordpress, https://www.reddit.com/r/Wordpress/comments/1xbmw05/

Обновление самого WordPress тоже не поможет: дыра не в нем. Wiz пишет об этом без вариантов:

«Applying the PHP security update remains the only complete remediation.» (перевод: установить обновление безопасности PHP - по-прежнему единственное полное решение.)

Wiz Research, https://www.wiz.io/blog/php2shell-php-rce

И что, плагины теперь можно не трогать?

Наоборот. 8 октября компания Patchstack написала о дыре в плагине Bricksforge для WordPress и оценила ее в 10 баллов из 10. Злоумышленники загружали на сайт картинку со спрятанным внутри PHP-кодом. Входить на сайт им для этого не требовалось.

Первые попытки Patchstack заметил 7 октября, с 63 разных адресов в сети. Исправление - версия плагина 3.1.8.10.

Плагины - твоя часть: в админке раздел «Плагины», ссылка «обновить сейчас» под каждым, где она есть.

Как обновить PHP и не уронить сайт

Коротко: перед сменой версии PHP сделай резервную копию сайта. Старые темы (готовое оформление сайта) и плагины на новой версии иногда ломаются, и вместо сайта появляется белый экран. Если так вышло, верни прежнюю версию в той же панели и напиши хостингу. На Битриксе держи PHP не ниже 8.2: ниже этой версии сам Битрикс ограничил поддержку.

Страх тут понятный.

«У меня версия PHP на серверах "очень старая", апгрейдить невозможно, это утянет кучу всего»

комментарий к статье о PHP2Shell, Хабр, https://habr.com/ru/articles/1097362/

И опасение тут не пустое. Сайт на старой теме или на коде, который писали под заказ, на новой версии PHP может не открыться совсем.

Для обычного сайта на WordPress порядок такой. Если версию меняет подрядчик, пусть идет по тем же шагам.

  1. Сделай резервную копию. В панели большинства хостингов есть раздел с копиями. Не нашлось - попроси поддержку.
  2. Если сайт делали под заказ, спроси подрядчика, переживет ли он переход на 8.3.
  3. Смени версию в панели хостинга: у Timeweb в «Настройках версии и кодировки», у REG.RU в поле «Версия PHP (CGI)».
  4. Открой главную, страницу с формой заявки и страницу оплаты. Отправь себе тестовую заявку.
  5. Белый экран или ошибка - верни прежнюю версию тем же способом и напиши хостингу. Так же советует и справка Timeweb.

С Битриксом проще: он сам подталкивает. С 1 февраля 2026 года поддержка его продуктов на PHP ниже 8.2 ограничена, а советует он 8.3 или выше. А именно для 8.2 и новее вышли официальные версии PHP с исправлениями PHP2Shell.

А если сайт совсем старый и обновить быстро нельзя?

Делай два дела параллельно: письмо хостингу про заплатку для текущей версии и заказ подрядчику на переход. Срок подрядчику - до 31 декабря, когда кончится и поддержка 8.2.

«Мой сайт маленький, кому он нужен»

Коротко: нужен, потому что сайты сейчас перебирают программы, и им все равно, чей сайт. 19 октября Reuters описал хакера, который с помощью ИИ-агентов пытался взломать больше 1200 сайтов. Получилось это больше чем у 100 компаний, и среди них есть небольшие. Один успешный взлом, по оценке исследователя, обходился ему примерно в 50 долларов на оплату ИИ.

Историю раскопал Снорре Фагерланд из компании NorForge. По данным Reuters, хакер запускал ИИ-агентов (программы, которые сами выполняют задачи) на открытой платформе Cairn. Целью были в основном интернет-магазины США, Канады, Австралии и Японии. Среди взломанных - производитель сельхозтехники Deere и производитель бытовой техники SharkNinja, а еще две небольшие компании, которые признали взлом сами.

По оценке Фагерланда, на всю кампанию ушло около 5000 долларов на оплату ИИ-моделей.

Больше сотни компаний за эти деньги.

«It's a new world now.» (перевод: теперь это новый мир.)

Снорре Фагерланд, NorForge, по данным Reuters, https://www.staradvertiser.com/2026/10/19/breaking-news/how-one-hacker-used-ai-agents-to-break-into-over-100-company-websites/

Reuters эту кампанию с PHP2Shell не связывает: она началась 25 сентября, задолго до новости о дырах. Но она показывает, как теперь выглядит атака: агенту не важно, магазин это Deere или сайт психолога на три страницы.

Для такой программы сайт с тремя страницами и формой записи - тоже сервер. Пока PHP на нем не обновлен, туда можно подсадить чужой код. Канал «Сиолошная» сформулировал это так:

«(но куча мелких и/или полузаброшенных сайтов не успеют обновиться, и их начнут ломать)»

канал «Сиолошная», Telegram, https://t.me/seeallochnaya/4001

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

Атакуют ли уже?

Коротко: попытки атаковать через уязвимость PHP есть, массовых взломов публично пока не подтвердили. Amazon заметил попытку атаки еще 17 октября, за четыре дня до исправлений. Йоханнес Ульрих из SANS пишет, что надежного способа взлома в открытом доступе, насколько ему известно, нет. Обновляться советуют и команда PHP, и SANS, и даже те, кто считает панику преувеличенной.

Номера дыр утекли в сеть раньше срока. По словам PHP Foundation, до этого о дырах молчали, как и положено до выхода исправления. За два дня до намеченного релиза номера всплыли, и релиз сдвинули на день раньше.

Дальше часть ведомств не стала ждать. По данным Reuters, в Нидерландах, Финляндии, Дании и Франции 21 октября отключали государственные и муниципальные сайты и сервисы - в качестве меры предосторожности.

В России, по данным РБК в пересказе Хабра, центр ФСБ по компьютерным инцидентам (НКЦКИ) потребовал от операторов критической инфраструктуры срочно обновить PHP. Тем, кто не успевает, предписано рассмотреть ограничение внешнего доступа к уязвимым серверам вплоть до их полного отключения.

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

Amazon пишет, что его ловушка, сервер-приманка для злоумышленников, поймала попытку атаки через PHP2Shell 17 октября. Сработала бы хоть одна такая попытка на настоящем сайте, Amazon пока не знает.

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

В каталоге CISA (американский список уязвимостей, которые уже используют в атаках) этих двух дыр на 23 октября нет.

«The vulnerability and the risk are real, even if we did not see immediate mass exploitation.» (перевод: уязвимость и риск реальны, даже если немедленных массовых взломов мы не увидели.)

Йоханнес Ульрих, SANS Internet Storm Center, https://isc.sans.edu/diary/PHP+Vulnerability+WrapUp/33450/

Разработчики PHP 23 октября сообщили еще об одной проблеме, на этот раз в том, как PHP запоминает посетителя между страницами. Полное описание обещают вместе со следующим выпуском.

Пока дыры закрыты не у всех, письмо хостингу - самое дешевое, что можно сделать. Оно занимает пять минут. Отправь его сегодня.

Источники

Дыра закрыта, хостинг ответил письменно. Теперь можно вернуться к деньгам: открывай ролик ниже, там есть и способы заработка с ИИ, за которые лучше не браться.

← Назад в блог