Последняя неделя даёт хорошее представление о том, как будет выглядеть управление уязвимостями в эпоху ИИ.
PHP2Shell (CVE-2026-109618 и -109619, CVSS 9.2) начался с паники. Детали утекли до релиза, патчи PHP вышли 21 октября, а Amazon заметили попытки эксплуатации ещё 17 октября. Затем ханипоты неделю бомбили миллионами запросов с нейрослопными «эксплойтами» с GitHub, а некоторые боты Mirai безуспешно ломились во все серверы, похожие на PHP. Пару громких заявлений о реальной эксплуатации исследователи потом отозвали. Подтверждённых шеллов за первые три дня так и не появилось.
Первая подтверждённая RCE засветилась лишь 24 октября, причём на ханипоте с Apache mod_php, то есть в самой удобной для атакующего конфигурации. Универсального эксплойта так и нет, поскольку параметры атаки нужно подбирать под каждую сборку сервера. Но 26 октября CISA внесла обе CVE в KEV и дала подотчётным ведомствам всего три дня на устранение дефекта.
Как выяснилось, реальная эксплуатация имеет самый неприятный вид: PHP2Shell связали с LPE в ядре Linux (Fragnesia, CVE-2026-46300) и получили root на 25 межсетевых экранах. После успешной компрометации атакующие нацелились на доменный контроллер, и вероятно, пытались закрепиться в инфраструктуре с целью шпионажа.
По данным Censys, из доступных сканированию 43,2 млн серверов с уязвимой версией PHP, сегодня всё ещё подвержены уязвимости 32,7 млн.
Уязвимость в Brotli (CVE-2026-111497) получила меньше внимания, в том числе потому, что разные команды исследователей изучили разные её аспекты и назвали каждая по-своему: Node2Shell, HTTP2Shell, Python2Shell, Broccoli2Shell, Brotli2Shell. Нашли дефект в OpenAI, а в Google исправили библиотеку ещё в феврале. Тогда проблема проходила больше по линии надёжности, а не безопасности. Первоначально октябрьская волна патчей в зависимых проектах началась с одного Node. js. Публичный PoC на стандартных сборках только ронял процесс, а в Red Hat отметили, что надёжного RCE нет. Потом копии уязвимого декодера нашлись в .NET, Windows-сборках PHP, DuckDB, ClickHouse, Apache Arrow, форках 7-Zip и много где ещё. Выискивать и патчить опасную зависимость надо для каждого проекта отдельно.
25 октября исследователи подтвердили, что смогли собрать рабочую цепочку, приводящую к RCE на стандартном Node.js 24.22.0, а уже 26 октября зафиксировали первую атаку. Пришла она с того же IP, с которого раньше эксплуатировали PHP2Shell. 27 октября CVE попала в KEV со сроком устранения до 10 ноября.
Тем временем, отдельные вендоры начали выпускать свои бюллетени для устранения дефекта. Так, в Broadcom оценили уязвимость в VMware SDDC Manager на 9.8 по CVSS.
А джекпот сорвала Palo Alto: PAN-OS задели и PHP2Shell, и Brotli. Во втором случае целью становится сам файрвол. Если включены расшифровка TLS и инспекция Brotli, вредоносные данные может прислать любой сайт, который открыл пользователь за файрволом. Многие хотфиксы для двух дефектов совпадают, так что админы хотя бы сэкономят время на перезагрузках.
Какой можно сделать вывод, глядя на всю эту кутерьму? Часть находок, сделанных ИИ — очень запутанные баги, которые сложно эксплуатировать. Даже опытные исследователи долго не могли понять, насколько они опасны. Импакт оказался реальным, но по CVSS и описанию заранее это не определить. Получается, что единственный надёжный сигнал — подтверждённая эксплуатация. Но этот сигнал поступает слишком поздно для оперативного реагирования.
Поэтому роль превентивного харденинга значительно растёт. Он хлопотный, но в итоге обходится дешевле, чем еженедельно разбирать очередную порцию слоп-PoC.
Ну а страховочной сеткой, конечно, служат развитые процессы детектирования и реагирования. Кстати, наш пост про PHP4Shell на Securelist обновили детектирующими правилами для Kaspersky EDR.