Накратко: Който още използва PHP 8.1 или по-стар, не получава от проекта PHP официални актуализации за сигурност, включително за PHP2Shell. Надграждането от PHP 8.1 до поддържана версия затова не е по желание, а същинското решение. Проверяваме Вашите приложения, тестваме в копие, мигрираме контролирано и осигуряваме времето дотогава.
Защо PHP 8.1 и по-стари са сега остър риск
Уязвимостите на PHP2Shell CVE-2026-109618 и CVE-2026-109619 позволяват изпълнение на код без удостоверяване. Поправени са в PHP 8.5.12, 8.4.27, 8.3.36 и 8.2.35. За PHP 8.1 и по-стари вече няма официални актуализации, а само минимални backport-ове на изходния код за 7.4, 8.0 и 8.1. Според специализираната преса са засегнати почти всички версии чак до PHP 5.4.
Някои дистрибуции и хостинг доставчици внасят собствени backport-ове. Дали Вашата система е сред тях, доставчикът трябва да потвърди за Вашето конкретно състояние на пакета. Без това потвърждение приемайте, че сървърът е отворен. Какво означава това в детайли, описва страницата PHP 8.1 и по-стари: какво важи сега.
Надграждане от PHP 8.1: коя целева версия?
Целта трябва да е версия, която проектът PHP още поддържа и която Вашето приложение допуска. Актуалното състояние на поддръжката php.net публикува на страницата за поддържаните версии. PHP 8.2 приключва на 31.12.2026 г.; преминаване към 8.2 би било следователно само междинна стъпка с близък последващ проект.
Коя PHP версия поддържа Вашият CMS или магазинна система, проверяваме по системните изисквания на производителя, например на wordpress.org, shopware.com или typo3.org, а не по памет. Често първо трябва да се актуализира самият CMS. Стари магазини са типичен случай, вижте Shopware 5: стари магазини на стара PHP версия.
Как помага PHP SOS конкретно?
- Опис и осигуряване: Събираме всички приложения, тяхната PHP версия, състоянието на CMS, разширенията и собствения код. Паралелно прилагаме временните мерки според php.net, за да спадне рискът до миграцията; подробности на страницата WAF и виртуално пачване.
- Проверка на съвместимостта: Сверяваме системните изисквания на производителите, проверяваме зависимостите с Composer и търсим в собствения код остарели функции. Как изглежда това при зависимостите, описва страницата Проверка на Composer зависимостите за уязвимости.
- Тест в копие: Приложението първо работи в тестова среда с новата PHP версия. Грешките отстраняваме там или ги документираме за Вашата агенция.
- Преминаване с път за връщане: Преминаването на живо става в съгласуван прозорец за поддръжка с актуално резервно копие и определен път за връщане.
- Последващ контрол: След преминаването проверяваме протоколите за грешки и централните функции и премахваме старата PHP версия, когато вече не е нужна.
Безопасен поглед кои уебсайтове коя PHP версия ползват е възможен на много системи чрез работещите FPM пулове:
# показване на работещите PHP-FPM master процеси и пулове
ps -eo pid,cmd | grep -E "php-fpm: (master|pool)" | grep -v grep
# инсталирани PHP версии (Debian/Ubuntu)
ls /etc/php/
Надграждането до нова PHP версия не премахва злонамерен софтуер, внедрен преди това. Ако сървърът е бил незащитен в мрежата от 17.10.2026 г. насам, към него спада и проверка за следи.
Типични спънки при надграждането
Повечето проблеми при смяната на PHP версията са предвидими, ако знаете къде да търсите:
- Остарели разширения: добавки или модули, които вече не се поддържат, често не работят на по-нови PHP версии. За тях е нужна замяна или адаптация.
- Собствен код: функции, които PHP междувременно е обявил за остарели или е премахнал, водят до предупреждения или прекъсвания. По-строгите проверки на типовете разкриват стари програмни грешки.
- Зависимости: библиотеки, включени чрез Composer, понякога сами изискват нови версии и влекат след себе си други промени.
- PHP разширения на сървъра: не всяко разширение, инсталирано при старата версия, автоматично присъства и за новата.
- Cron задачи и команден ред: уебсайтът вече работи на новата версия, но планираните задачи още извикват старата PHP версия.
Който провери тези точки предварително, съкращава преминаването и избягва изненади в живата експлоатация.
Какво получавате и какво ни е нужно
Получавате преглед на всички приложения с изходна и целева версия, план за миграция с ред и рискове, протокол от тестовете, документация на преминаването и списък с точки, които Вашата агенция или Вашият разработчик още трябва да свършат.
От Вас ни е нужно:
- достъп до сървъра или панела и достъп до администрациите на CMS
- достъп до изходния код и хранилището при собствени разработки
- контакт с агенцията или разработчика, които познават приложението
- тестова среда или разрешение да се създаде такава
- прозорци за поддръжка и лице за контакт за приемането
Какво не обещаваме
Не обещаваме, че всяко старо приложение ще работи без промени на нова PHP версия. При системи без по-нататъшно развитие може да се наложи по-голямо преустройство или смяна; казваме го открито, щом се очертае. Твърденията за съвместимост основаваме на данните на производителите. А временните мерки не са заместител на миграцията, а само преодоляват времето. Дългосрочните рискове на остарелите версии описва страницата PHP End of Life: рискове от остарели версии.
Често задавани въпроси
Засегнат ли е PHP 8.1 от PHP2Shell?
Според специализираната преса са засегнати почти всички версии чак до PHP 5.4. За PHP 8.1 и по-стари няма официални актуализации от проекта PHP, а само минимални backport-ове на изходния код за 7.4, 8.0 и 8.1. Някои дистрибуции внасят собствени backport-ове, което съответният доставчик трябва да потвърди.
До коя PHP версия да надградя?
До версия, която проектът PHP още поддържа активно и която Вашето приложение допуска според системните изисквания на производителя. PHP 8.2 достига края на поддръжката на 31.12.2026 г. и затова като цел е смислена само условно.
Не мога ли просто да сменя PHP версията в хостинг панела?
Технически това често става с едно щракване. Дали приложението след това ще работи, зависи от версията на CMS, разширенията и собствения код. Без тест рискувате прекъсвания или неправилно работещи функции, например в касата на един магазин.
Какво ако моят CMS не поддържа новата PHP версия?
Тогава първо трябва да се актуализира CMS, при определени обстоятелства до нова основна версия. При системи без по-нататъшно развитие може да се наложи смяна. Дотогава осигуряваме сървъра с временни мерки.