PHP2Shell в реальных атаках: RCE на mod_php и что проверить

Безопасность

PHP2Shell в реальных атаках: RCE на mod_php и что проверить

PHP2Shell в реальных атаках: удалённое выполнение кода на Apache mod_php, CVE-2026-109618 и CVE-2026-109619 в каталоге KEV

В понедельник CISA внесла PHP2Shell в каталог KEV. Так называют две критические уязвимости интерпретатора PHP, CVE-2026-109618 и CVE-2026-109619, которые позволяют удалённо выполнить код. Патч вышел 21 октября, а PHP2Shell в реальных атаках уже подтверждён на ловушке с Apache mod_php. Если ваши боевые серверы работают на PHP, проверять нужно сам интерпретатор, а не CMS.

Коротко

  • CISA внесла CVE-2026-109618 и CVE-2026-109619 (PHP2Shell) в каталог KEV, федеральным ведомствам США дан срок до четверга.
  • Атаки начались примерно 17 октября, патч вышел 21-го. На выходных после патча подтвердили RCE на Apache mod_php с PHP 8.4.26.
  • Для CVE-2026-115560 патча нет, но эксплуатация возможна только при редком сочетании конфигурации и кода.
  • Обновление CMS не помогает: обновите сам PHP и перезапустите процессы веб-сервера.

Почему PHP2Shell касается не только американских ведомств

Директива BOD 26-04 обязывает федеральные гражданские ведомства США (FCEB) закрыть обе уязвимости до четверга. На остальных она не распространяется, но CISA советует всем закрывать записи KEV в первую очередь: попадание в каталог — признак того, что уязвимость уже применяют в атаках.

CISA уже включала open-source компоненты в KEV, и механика там была та же: рантайм обновляют позже прикладного кода. Для оценки уязвимостей записи KEV служат лучшим фильтром.

По распространённым оценкам, на PHP работает около 70 % сайтов, а VirusTotal насчитывает более 5,1 млн PHP-хостов, доступных из сети. Это поверхность атаки, а не число уязвимых систем.

Где подтвердили PHP2Shell в реальных атаках?

По данным Amazon Threat Intelligence, злоумышленники начали атаковать уязвимости за четыре дня до патча, то есть примерно 17 октября. 20 октября команда PHP попросила ставить обновления сразу после выхода, 21-го исправления вышли. К тому моменту в сеть утекли идентификаторы CVE и меры защиты, ранее переданные операторам критической инфраструктуры. Появились и PoC, но, по словам команды PHP, ни одного рабочего. Cloudflare, Amazon, Hadrian, watchTowr, Previdian и Patchstack фиксировали массовые попытки эксплуатации и оценивали их все как неудачные.

Ситуация изменилась на выходных после выхода патча. Adel Karimi, руководитель направления обнаружения и реагирования в Perplexity, сообщил: на его ловушке (honeypot) с Apache mod_php и PHP 8.4.26 атакующий получил удалённое выполнение кода. CISA подробностей атак не раскрывает. Привилегии не нужны, но сложность атаки оценивают как высокую. На наш взгляд, поэтому массовые неудачи и единичный успех друг другу не противоречат.

Чем CVE-2026-115560 отличается от пары PHP2Shell?

CVE-2026-115560 — третья, отдельная уязвимость с удалённым выполнением кода, и патча для неё пока нет. В пятницу, ещё до внесения PHP2Shell в KEV, команда PHP опубликовала только меры снижения риска: эксплуатация возможна лишь при «необычном сочетании конфигурации и кода приложения». Обновление от 21 октября её не закрывает, поэтому сверьте конфигурацию с рекомендациями PHP.

Что проверить на боевых серверах уже на этой неделе?

Обновлённый WordPress или Laravel на старом PHP остаётся уязвимым, а один уязвимый интерпретатор открывает доступ ко всем сайтам на сервере. Номера исправленных релизов берите из бюллетеней PHP и своего дистрибутива.

  • Версия рантайма. «php -v» показывает версию CLI, а не модуля Apache или PHP-FPM. Debian, Ubuntu и RHEL часто переносят исправления без смены апстрим-версии, поэтому сверяйте вывод dpkg или rpm с бюллетенем дистрибутива.
  • Способ запуска (SAPI). Наличие mod_php проверяется через «apachectl -M» (на Debian/Ubuntu — «apache2ctl -M»). Атака на mod_php ничего не говорит о PHP-FPM или CGI — ни в плюс, ни в минус.
  • Перезапуск. Перезапустите Apache или PHP-FPM и проверьте время старта процессов. Контейнерные образы пересоберите и замените.

На пентестах мы часто видим серверы, пропатченные только на бумаге: пакет обновлён, а процессы работают со старым кодом. Как правило, атака на mod_php даёт права учётной записи веб-сервера. Это ещё не root, но конфигов с паролями к базе обычно хватает.

Следы ищите примерно с 17 октября, журналы сохраните до перезапуска служб. Обратите внимание на нетипичные дочерние процессы httpd/apache2 и php-fpm, новые исполняемые файлы и исходящие соединения веб-сервера. Индикаторов компрометации в сообщениях о PHP2Shell пока не приводят. Если обновление встало позже 17 октября, держите файлы и процессы под наблюдением — этим занимается наша защита сайта от взлома.

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

Что такое PHP2Shell и какие CVE в него входят?

Пара критических уязвимостей в интерпретаторе PHP, CVE-2026-109618 и CVE-2026-109619. Они позволяют удалённо выполнить код без привилегий, хотя сложность атаки высокая.

Достаточно ли обновить WordPress или Laravel, чтобы закрыть PHP2Shell?

Нет, уязвимости в самом PHP. Обновите интерпретатор, перезапустите Apache или PHP-FPM и убедитесь, что запросы обслуживает новая версия.

PHP2Shell уже эксплуатируют или это только попытки?

Эксплуатируют: на выходных после патча атакующий получил удалённое выполнение кода на ловушке с Apache mod_php и PHP 8.4.26. После этого CISA внесла уязвимости в KEV.

Касается ли срок CISA компаний в России?

Юридически нет: BOD 26-04 действует только для федеральных гражданских ведомств США. Но эксплуатация подтверждена, поэтому срок разумно считать ориентиром срочности.

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

Прокрутить вверх