Хакери вече използват публично достъпен експлойт код за проникване в уебсайтове, работещи с PHP, като сред основните мишени са университети и корпоративни сайтове.

В основата на тази вълна стоят два критични дефекта в ядрото на PHP, идентифицирани като CVE-2026-109618 и CVE-2026-109619 и получили наименованието PHP2Shell. И двете уязвимости имат CVSS v4.0 оценка 9.2 и позволяват на външен потребител да изпълнява команди на сървъра без необходимост от удостоверяване.

Екипът на PHP публикува коригирани версии на 21 октомври 2026 г., но множество сървъри все още не са обновени, докато работещи скриптове за експлоатация се разпространиха в интернет почти веднага след пускането на корекциите.

От екипа на PHP съобщават, че дефектите се намират в самото ядро на PHP, поради което чистият програмен код на уебсайта не защитава сървъра. Проектът PHP оценява риска като най-висок за сървъри Apache, които изпълняват PHP като модул (известен като mod_php), тъй като дефектът може да се задейства преди стартирането на какъвто и да е код на сайта.

Защитните стени и филтрите за уеб приложения може изобщо да не засекат злонамерената заявка, което прави инсталирането на корекции за сигурност основна линия на защита. Предишният ни доклад за публичния инструмент за тестване на PHP2Shell разяснява изследователското хранилище, което се появи първо, и какво точно заявяваше, че тества.

Изследователи от Akatsuki Legion, независима група за анализ на заплахите, идентифицираха активността на зловредния софтуер и я документираха в подробен публичен доклад.

Техният анализ приписва веригата от уязвимости на изследовател, известен като 9bie, и посочва, че скриптове с концептуален код (proof-of-concept), генерирани чрез изкуствен интелект, са се появили в GitHub непосредствено след пускането на корекциите на 21 октомври.

Групата също така е събрала телеметрия от собствения си honeynet и е публикувала използваните инструменти, които могат да бъдат разгледани в изследователския ѝ архив.

Хакери използват публичен експлойт код за PHP2Shell

Най-бързото решение за отстраняване на уязвимостта е преминаването към PHP 8.5.12, 8.4.27, 8.3.36 или 8.2.35. Дистрибуторите на Linux получиха корекциите предварително, така че техните пакетни канали може вече да ги съдържат, а детайлите за спешното обновяване за сигурност на PHP описват всеки засегнат клон.

По-стари издания като PHP 8.1 и по-ранни вече не получават официална поддръжка от проекта PHP, поради което тези сайтове се нуждаят от адаптирана корекция (backport) от доставчика или миграция към поддържана версия.

Публичният код показва как уязвимостите се комбинират във верига. Първият дефект, CVE-2026-109618, възниква при изчерпване на паметта на PHP по време на качване на файл, след което стъпката по изчистване работи с частично изградени данни.

Блок-схема на експлоатацията (Източник – AKATSUKI LEGION)
Блок-схема на експлоатацията (Източник – AKATSUKI LEGION)

Втората уязвимост, CVE-2026-109619, оставя стари данни от заявка в споделен работен процес (worker), което позволява на последваща заявка да ги използва повторно. Публичните скриптове използват две изтичания на памет, за да извлекат адреси, след което поставят фалшива структура в паметта, така че PHP да извика системната си функция и да изпълни избрана команда.

Активността е започнала преди официалното оповестяване. От Amazon Threat Intelligence са наблюдавали опити за сканиране и експлоатация още на 17 октомври – четири дни преди появата на корекциите, докато уязвимостите все още са били в процес на координирано разкриване.

Това разминаване във времето е критично, тъй като някои сървъри може да са били атакувани преди техните администратори изобщо да узнаят за съществуването на дефектите. Изследователи следят разпространението от няколко страни.

Телеметрията на Hunt.io регистрира три различни комплекта с инструменти за експлоатация на 21 октомври, включително скрипт за масова експлоатация, хостван на един IP адрес.

Връзка с ботнет мрежи

От Akatsuki Legion описват и отворена директория, съдържаща слушащи скриптове (listeners), записващи трафика от експлоатацията на портове 80 и 8888. Взети заедно, констатациите сочат, че няколко групи едновременно са споделяли и тествали кода.

Връзката с ботнет мрежи вече е категорична. Sophos изследва блокиран примерен злонамерен код на ботнета Potassium, който се оказва вероятен вариант на Mirai.

Данните от техните клиенти показват сканиране и няколко неуспешни опита, като Sophos не открива доказателства за успешен пробив. Въпреки това зловредният код проверява за наличие на определена Linux програма преди стартиране, което показва намерение уязвимите сървъри да бъдат превърнати в ботове за DDoS атаки.

Експлойтът като услуга (Източник – AKATSUKI LEGION)
Експлойтът като услуга (Източник – AKATSUKI LEGION)

Инсталирането на корекции за сигурност остава единственото цялостно решение. В официалния бюлетин за сигурност на PHP се подчертава, че временните мерки – като задаване на стойност 0 за session.upload_progress.enabled и рестартиране на работните процеси – само намаляват риска, но не заместват обновяването.

Администраторите трябва също така да се уверят, че PHP-FPM, модулите за Apache, контейнерите и вградените софтуерни системи използват новата компилация, тъй като обновяването единствено на пакета за командния ред може да остави реално работещата услуга уязвима.

За университетите и бизнеса поуката е категорична. Публичният експлойт код намалява техническата бариера за проникване в уязвим сървър, а същата PHP конфигурация често обслужва университетски портали, сайтове за курсове и уеб страници на малкия бизнес.

Екипите по сигурност трябва да инвентаризират всяка среда за изпълнение на PHP, да инсталират корекциите за сигурност, да рестартират услугите и да анализират логовете за POST заявки, съдържащи PHP_SESSION_UPLOAD_PROGRESS.

Индикатори за компрометиране (IoCs):-

ТипИндикаторКонтекст от източника
IPv4206[.]188[.]197[.]105C2 сървър за вариант на Mirai и хост на списък за масово таргетиране; хоства също php2shell_mass.py и junare_exploit.py
IPv441[.]223[.]30[.]7Разпространява history.json, свързан с опити за експлоатация
IPv4122[.]10[.]130[.]72Хоства exp_83.php, зловреден код за сериализация на PHP
IPv4195[.]245[.]112[.]63Остаряла PHP услуга на порт 8082, маркирана с висок риск за зловреден софтуер Keitaro
IPv485[.]11[.]167[.]243Отворена директория с регистрирани заявки за експлоатация (в основния текст е посочен 85[.]11[.]163[.]243)
IPv4124[.]221[.]46[.]164Отворена директория, хостваща i097_listener.py и i097_listener80.py на портове 80 и 8888
Домейнthunder[.]godofthunder[.]stСвързан с варианта Potassium на Mirai, насочен срещу украински мрежи
User-Agentphp2shell-109618Засечен в заявка за експлоатация
URI път/lib/phpunit/phpunit/Util/PHP/eval-stdin.phpПът в наблюдавана POST заявка за експлоатация
Поле от формулярPHP_SESSION_UPLOAD_PROGRESSМногокомпонентно поле, задействащо уязвимостта при проследяване на качването
Командаid>/out/p1Примерна команда в етапа на изпълнение на експлойта
Файл за потвърждение/out/p1, /tmp/p1Файлове, проверявани за потвърждение на успешна експлоатация
Скриптr935_lfi_find.pyСкенер за откриване на LFI уязвимости
Скриптprobe_rfc1867.pyПроверява дали upload_progress е активиран
Скриптrace.pyИнструмент за атака от тип състезание (race condition) при обработката на качените файлове
Скриптphp2shell_fp.pyИдентифицира версии на PHP мишени чрез прокси пул
Скриптrce2.pyИнжектиране на сесиен файл чрез LFI уязвимост в Kubio
ХешНе е публикуванИзточникът не посочва MD5, SHA-1 или SHA-256 стойности

Забележка: IP адресите и домейните са умишлено обезвредени (напр. [.]), за да се предотврати случайно разрешаване на имена или превръщане в хипервръзки. Възстановявайте пълния им вид само в рамките на контролирани платформи за анализ на заплахи като MISP, VirusTotal или вашата SIEM система.