В популярном языке программирования PHP найдены две критические уязвимости. Ошибки CVE-2026-109618 и CVE-2026-109619 позволяют злоумышленникам удаленно и без аутентификации выполнить код на сервере, использующем PHP. Команда разработчиков языка выпустила обновления для всех поддерживаемых веток, но первые попытки эксплуатации были замечены еще до публикации патчей — эксплойт получил название PHP2Shell.
На языке PHP написаны архитектуры популярных маркетплейсов, платформ e‑сommerce и систем управления обучением (LMS). Кроме того, PHP используется в различных CMS-системах (WordPress, Drupal, Joomla и так далее), на базе которых работает большинство сайтов в Интернете.
В блогпосте подробно рассказываем о CVE-2026-109618 и CVE-2026-109619, а также объясняем, как компаниям защитить свою инфраструктуру. О том, как развивались события вокруг этих брешей до выхода патча и как решения Лаборатории Касперского детектируют их эксплуатацию, читайте в экспертном блоге Securelist.
Уязвимые версии PHP
Согласно данным на сайте PHP, уязвимостям CVE-2026-109618 и CVE-2026-109619 подвержены версии ниже 8.2.35, 8.3.36, 8.4.27 и 8.5.12. Для более старых веток официальных исправлений нет. По неофициальным данным, уязвимости затрагивают и PHP начиная с 5.4.0.
Чем опасны ошибки CVE-2026-109618 и CVE-2026-109619
Обе уязвимости получили 9,2 балла по шкале CVSS v4.0. Они вызваны тем, что после прерванного запроса (например, из-за нехватки памяти) PHP оставляет в памяти некорректные данные и затем обращается к ним, что позволяет выполнить код на сервере. Одна из подтвержденных цепочек атаки через CVE-2026-109619 использует механизм session.upload_progress (отслеживание прогресса загрузки файлов), который включен в PHP по умолчанию.
Воспользовавшись уязвимостями, злоумышленники могут удаленно и без аутентификации выполнить код на сервере с правами процесса веб-сервера.
По данным разработчиков PHP, под угрозой все установки непропатченных версий, обрабатывающие веб-запросы, включая PHP-FPM, Apache с mod_php, php-cgi, FrankenPHP и LiteSpeed. Наибольший риск у mod_php: для него исследователи продемонстрировали эксплойт, в котором неаутентифицированный запрос запускает атаку еще до выполнения кода приложения.
Что делать бизнесу
Собрали ключевые рекомендации разработчиков PHP и экспертов «Лаборатории Касперского».
- Обновите PHP до версий 8.5.12, 8.4.27, 8.3.36 или 8.2.35. Начните с систем, доступных из Интернета. Исходный код доступен на сайте PHP. Если PHP установлен из пакетов дистрибутива или предоставлен хостингом, проверьте наличие обновленных пакетов: Linux-дистрибутивы и LTS-вендоры получили патчи заранее. Если сервером управляет хостинг-провайдер, попросите его применить обновление.
- Версии 8.1 и старше больше не получают обновлений от проекта PHP. Уточните у вендора дистрибутива или LTS-поддержки, есть ли бэкпортированные исправления, или перейдите на поддерживаемую ветку. Для PHP 7.4, 8.0 и 8.1 разработчики подготовили минимальные бэкпорты исходного кода для самостоятельной сборки. Их также можно найти на сайте PHP.
- Перезапустите PHP-FPM или веб-сервер, чтобы рабочие процессы загрузили новый код, и проверьте версию командой php -v. Если PHP ставился из пакетов дистрибутива, сверьтесь с журналом изменений пакета: номер версии может остаться прежним.
- Проверьте логи с 20 октября. Тревожный признак — процесс веб-сервера выполняет то, чего не должен (запускает командные оболочки, curl, wget и подобное). Своевременно фиксировать вредоносную активность помогают решения «Лаборатории Касперского». Попытки эксплуатации описанных RCE-уязвимостей на Linux и Windows-машинах могут быть обнаружены с помощью Kaspersky Endpoint Detection and Response Expert, а эксплуатация PHP2Shell в сетевом трафике обнаруживается Kaspersky Anti Targeted Attack (KATA) с модулем NDR и .
Если оперативно обновиться невозможно
Полностью устранить проблему поможет только незамедлительная установка патчей, но если она невозможна, рекомендуется применить временные меры. Разработчики поэтапно прописывают шаги для каждой уязвимости.
уязвимости
Советы