Разработчики PHP раскрыли подробности того, как шла работа над критическими уязвимостями, исправленными накануне — и почему процесс оказался далеко не гладким.
О проблеме, возникающей при исчерпании доступной памяти, стало известно ещё в 2024 году по итогам внешнего аудита. Тогда её сочли скорее теоретической возможностью для атаки. Исправление затянулось: среди разработчиков PHP не было согласия относительно того, как именно закрывать дыру. На столе лежало несколько конкурирующих вариантов, и у каждого имелись изъяны. Выбор шёл между потерей обратной совместимости, появлением новых векторов для атак, вызывающих отказ в обслуживании, и необходимостью править массу сторонних дополнений.
Несколько месяцев назад компании Calif и Wiz независимо друг от друга с помощью AI-моделей GPT‑5.6 и Gemini 4 Argon нашли рабочие способы эксплуатации проблемы. О своих результатах они сообщили разработчикам PHP 11 и 24 августа 2026 года. После этого работа над исправлениями получила наивысший приоритет, а процесс принятия решений начали реформировать ради более быстрого реагирования в сложных компромиссных ситуациях — теперь подобные вопросы могут решаться большинством голосов, без строгого достижения консенсуса.
Изначально скоординированная с дистрибутивами дата выхода исправления была назначена на 22 октября. Затем её сдвинули на 21 октября — после того как 20 октября в соцсети утекли сведения о CVE-идентификаторах и некорректные данные о времени публикации предстоящих корректирующих выпусков. Вскоре после анонса Calif, нашедшая одну из уязвимостей, по ошибке выложила видеоролик с демонстрацией работы эксплоита. В кадрах просматривались детали, позволявшие сузить область поиска и воссоздать информацию о проблеме. Ролик быстро удалили, но это лишь подогрело интерес исследователей и ускорило работу над альтернативными прототипами эксплоитов.
За шесть часов до намеченной публикации исправлений эмбарго нарушила компания Chainguard, опубликовав сборки своего дистрибутива с исправленной версией PHP. Это дало злоумышленникам возможность изучить исправление до официального релиза и перечеркнуло всю работу по скоординированному раскрытию информации и одновременному выпуску обновлений в разных дистрибутивах.
Спустя 16 часов после раскрытия деталей универсального рабочего эксплоита так и не появилось, массовых атак пока не наблюдается. Причина — сложность эксплуатации: нужно определять раскладку структур в памяти процесса, а она специфична для каждой сборки. Опубликованные рабочие прототипы завязаны на отдельные конфигурации и атаку в лабораторных условиях. Кроме того, развелось много фиктивных эксплоитов — галлюцинаций AI, которые лишь создают видимость атаки, опираются на ошибки в конфигурации или работают только при наличии других критических уязвимостей.
