Хакери вече използват публично достъпен експлойт код за проникване в уебсайтове, работещи с 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 по време на качване на файл, след което стъпката по изчистване работи с частично изградени данни.

Втората уязвимост, CVE-2026-109619, оставя стари данни от заявка в споделен работен процес (worker), което позволява на последваща заявка да ги използва повторно. Публичните скриптове използват две изтичания на памет, за да извлекат адреси, след което поставят фалшива структура в паметта, така че PHP да извика системната си функция и да изпълни избрана команда.
Активността е започнала преди официалното оповестяване. От Amazon Threat Intelligence са наблюдавали опити за сканиране и експлоатация още на 17 октомври – четири дни преди появата на корекциите, докато уязвимостите все още са били в процес на координирано разкриване.
Това разминаване във времето е критично, тъй като някои сървъри може да са били атакувани преди техните администратори изобщо да узнаят за съществуването на дефектите. Изследователи следят разпространението от няколко страни.
Телеметрията на Hunt.io регистрира три различни комплекта с инструменти за експлоатация на 21 октомври, включително скрипт за масова експлоатация, хостван на един IP адрес.
Връзка с ботнет мрежи
От Akatsuki Legion описват и отворена директория, съдържаща слушащи скриптове (listeners), записващи трафика от експлоатацията на портове 80 и 8888. Взети заедно, констатациите сочат, че няколко групи едновременно са споделяли и тествали кода.
Връзката с ботнет мрежи вече е категорична. Sophos изследва блокиран примерен злонамерен код на ботнета Potassium, който се оказва вероятен вариант на Mirai.
Данните от техните клиенти показват сканиране и няколко неуспешни опита, като Sophos не открива доказателства за успешен пробив. Въпреки това зловредният код проверява за наличие на определена Linux програма преди стартиране, което показва намерение уязвимите сървъри да бъдат превърнати в ботове за DDoS атаки.

Инсталирането на корекции за сигурност остава единственото цялостно решение. В официалния бюлетин за сигурност на PHP се подчертава, че временните мерки – като задаване на стойност 0 за session.upload_progress.enabled и рестартиране на работните процеси – само намаляват риска, но не заместват обновяването.
Администраторите трябва също така да се уверят, че PHP-FPM, модулите за Apache, контейнерите и вградените софтуерни системи използват новата компилация, тъй като обновяването единствено на пакета за командния ред може да остави реално работещата услуга уязвима.
За университетите и бизнеса поуката е категорична. Публичният експлойт код намалява техническата бариера за проникване в уязвим сървър, а същата PHP конфигурация често обслужва университетски портали, сайтове за курсове и уеб страници на малкия бизнес.
Екипите по сигурност трябва да инвентаризират всяка среда за изпълнение на PHP, да инсталират корекциите за сигурност, да рестартират услугите и да анализират логовете за POST заявки, съдържащи PHP_SESSION_UPLOAD_PROGRESS.
Индикатори за компрометиране (IoCs):-
| Тип | Индикатор | Контекст от източника |
|---|---|---|
| IPv4 | 206[.]188[.]197[.]105 | C2 сървър за вариант на Mirai и хост на списък за масово таргетиране; хоства също php2shell_mass.py и junare_exploit.py |
| IPv4 | 41[.]223[.]30[.]7 | Разпространява history.json, свързан с опити за експлоатация |
| IPv4 | 122[.]10[.]130[.]72 | Хоства exp_83.php, зловреден код за сериализация на PHP |
| IPv4 | 195[.]245[.]112[.]63 | Остаряла PHP услуга на порт 8082, маркирана с висок риск за зловреден софтуер Keitaro |
| IPv4 | 85[.]11[.]167[.]243 | Отворена директория с регистрирани заявки за експлоатация (в основния текст е посочен 85[.]11[.]163[.]243) |
| IPv4 | 124[.]221[.]46[.]164 | Отворена директория, хостваща i097_listener.py и i097_listener80.py на портове 80 и 8888 |
| Домейн | thunder[.]godofthunder[.]st | Свързан с варианта Potassium на Mirai, насочен срещу украински мрежи |
| User-Agent | php2shell-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 система.