Почему все так паникуют?
Кажется, что об этой уязвимости PHP говорят повсюду. Да, здесь действительно есть ошибка, и она важна. Но это не просто эксплуатировать. Это далеко не так легко, как Log4Shell, Heartbleed или RoR YAML.
Доказывай свои слова
Уязвимость PHP не кажется столь простой для эксплуатации. Пять лет назад люди поняли бы это, но теперь их вводят в заблуждение LLM, которые уверяют их, что у них есть работающий exploit, хотя на самом деле это не так.
Если посмотреть на GitHub прямо сейчас, можно найти буквально тысячи «PoC» этой уязвимости. Но у всех них есть одна общая черта: они не работают на ванильном экземпляре PHP.
Попробуйте сами — разверните PHP-сервер в Docker, который вы считаете уязвимым, и запустите PoC самостоятельно. Не просите LLM это сделать. Нет. Запустите скрипт сами. Эксплойты не работают.
Где же exploit, Лебовски?
Многие люди надеялись, что LLM смогут мгновенно построить цепочку exploit, просто прочитав diff кода. Даже если бы эксплуатация была сложнее, чем у других уязвимостей, LLM якобы должны были выравнять поле боя. Но рабочего exploit нет. Что теперь?
Когда дело доходит до действительно критических CVE в интернете, на ум приходят следующие уязвимости:
- YAML-декодирование в Ruby on Rails (отправить POST body с неправильным YAML)
- Log4Shell (установить User-Agent на
${jdni:ldap:}) - Shellshock (скопировать
env x='() { :;}; echo vulnerable' bash -c "echo this is a test"и адаптировать) - Heartbleed (запросить Content-Length 10000000)
Как только эти уязвимости попадали в новости, сразу появлялись ботнеты, наносящие ущерб. Это было еще до эры LLM! Люди должны были писать эти ботнеты вручную.
Прошло 10 часов с момента публикации этой уязвимости. Половина мира занимается ею, и примерно 100 000 человек задействовали свой «искусственный интеллект». Но рабочего exploit все нет. Те, которые ходят по сети, либо поддельные, либо работают только в лабораторных условиях, потому что...
Чёрт, эти LLM
Script kiddies (и взрослые скрипт-кидди, которые тоже отключили мозг) теперь думают, что они не понимают UAF-цепочек, но этот Claude знает всё и точно сможет создать exploit.
Забавно, что в результате LLM даёт своему младшему брату отключённый геймпад. На экране написано «exploit» и есть какие-то подозрительные логи... но он модифицировал тестируемый сервер, внеся в него серьёзную уязвимость. Обман!!
- https://github.com/david-alvarez-rosa/php-rce
- https://github.com/eness/php2shell-CVE-2026-109618-CVE-2026-109619-PoC
- https://github.com/ikow/php2shell-poc
Одна действительно забавная деталь, общая для большинства этих «PoC», заключается в том, что они полагаются на «LFI» (Local File Inclusion). Говоря простым языком, их цепочка exploit требует, чтобы сервер фактически выполнил eval(read(filename_provided_by_user)).
Для PHP-приложений не редкость быть уязвимыми в каком-то смысле, но требовать наличие существующей уязвимости, через которую можно выполнить cat /etc/passwd — это сумасшедшее предварительное условие. Если это требуется, то это не делает ошибку серьёзной.
Странно, что столько людей независимо друг от друга пришли к такому невероятно странному логическому выводу. Причина в том, что они пришли к нему не независимо. Claude/GPT/etc. сделали все выводы за них, отсюда и странное распределение логических ошибок.
Здесь важно сказать кое-что о том, как много людей полагаются на Claude/GPT при принятии дизайнерских решений, и как ИИ сейчас является главным лицом, принимающим решения в мире. Получается странный случай «точек Шеллинга решений», когда способ решить проблему чрезмерно представлен просто потому, что это то, что Claude выдаёт по умолчанию.
Это раздражает, когда дело доходит до «теперь все веб-сайты выглядят одинаково», но поскольку LLM имеют власть одновременно испортить каждый домен, это также означает, что «большинство решений подозрительно похожи». Особенно в этом случае, когда ИИ внедряет уязвимость на сервер... чтобы доказать, что сервер уязвим для вашей «атаки на любой PHP-экземпляр»!
Почему же все так испугались?
Потому что:
- Член команды PHP core сказал, что это катастрофично («эксплойты появятся через 15 минут после выпуска патча»)
- Все мы глубоко знаем, что PHP небезопасен
- Видео с exploit содержало аниме-девушку
- Мы все знаем, что LLM висят над интернетом, как 100-тонная наковальня из чеховского ружья, и мы знаем, что код небезопасен
Раньше были похожие ситуации, но не в эпоху LLM. К счастью для нас, это похоже не такой момент. Эту уязвимость слишком сложно эксплуатировать. Это не Log4J.