Немає PHP-розробника? Відновіть доступ, перевірте резервні копії та визначте середовище. Потім виберіть виправлений PHP, міграцію або статичний архів для усунення PHP2Shell.

01

Поверніть доступ і відповідальність

Знайдіть реєстратора, хостинг, сервер/панель, код, доступ БД і платника. Призначте того, хто погоджує роботи й відновлює. Визначте застосунок/версію за файлами. Поверніть відсутні акаунти й джерела до зміни PHP.

02

Збережіть докази та перевірте відновлення

За підозри збережіть журнали до очищення. Код, БД, uploads, налаштування, завдання збережіть датованим зашифрованим комплектом з обмеженим доступом. Запишіть кодування/storage. Відновіть приватно й перевірте вміст/вхід; повідомлення backup недостатньо.

Патч не виключає злам ↗

03

Зіставте покоління PHP

PHP 5.3/5.6 може залежати від видалених API. PHP 7 видаляє ext/mysql; PHP 8 видаляє each()/create_function() і посилює типи/сигнатури; PHP 8.2 позначає динамічні властивості застарілими. Читайте кожну міграцію. Давній мінімум не рекомендує старий PHP і не тестує власний код.

04

Оберіть ремонт, міграцію чи архів

Перевірений патч постачальника може дати час; вимагайте обидва CVE і підтримку. Старий PHP потребує підтримуваної цілі, не постійного винятку WAF. Керований застосунок ремонтуйте, покинуті залежності замінюйте; для контенту можливий статичний архів з обробкою входу, пошуку й форм.

05

Створіть реалістичний приватний стенд

Узгодьте Web PHP, розширення, INI, БД і маршрути. Обмежте знеособлені копії, заблокуйте справжню пошту, платежі й production-webhooks. Перевіряйте framework, плагіни й код разом. Збережіть бізнес-приймання й логи; попросіть їх у хостера.

06

Плануйте відкат із записами даних

Зберігайте узгоджені файли/БД. Повернення PHP не повертає схему. Узгодьте зупинку запису або перевірену синхронізацію, критерії помилки, виконавця, строк. Врахуйте нові замовлення після знімка, випробуйте відновлення й звірку.

07

Перевірте справжні служби після зміни

Перевірте Web PHP, усі FPM, черги, задачі, контейнери, репліки; замініть старі процеси. Підтвердьте обидва CVE версією/бюлетенем. Перевірте посилання, вхід, uploads і бізнес. Збережіть логи й вікно відкату; CLI/головної недостатньо.

Перевірити виправлення PHP2Shell ↗

Перевірка функцій після усунення PHP2Shell

Вхід, сесії та ролі

Перевірте вхід, вихід, пароль, сесії, адміністратора й ролі тестовим акаунтом.

Глибокі посилання та HTTP

Відкрийте глибоке посилання, форму й відсутню сторінку; порівняйте параметри, перенаправлення та HTTP.

Читання/запис БД

Читайте/пишіть у тестову БД; перевірте драйвери, строгий SQL, транзакції й повернуті значення.

Власні шаблони та escaping

Відобразіть статті, списки, кабінет і помилки; перевірте теги, escaping, кеш і попередження.

Завантаження й мініатюри

Завантажте безпечне зображення, отримайте мініатюру й видаліть; перевірте права, шляхи та URL, блокуючи виконувані файли.

Нові й старі завдання

Обробіть нове й старе завдання новим процесом; перевірте серіалізацію, повтори й дублікати.

Розклад і шляхи PHP

Перевірте реальні PHP, INI та акаунт планувальника; виконайте безпечне завдання й порівняйте після розгортання.

Холодний/теплий кеш і OPcache

Перебудуйте кеші за документацією; перевірте холодні/теплі запити, старі значення й процеси OPcache.

Тестова пошта

Надішліть пошту тестовому збирачу; перевірте шаблони, черги й транспорт без клієнтів.

Замовлення, податки, склад

Оформіть sandbox-замовлення з доставкою, податком, знижкою й поверненням; порівняйте суми, склад, історію.

Sandbox-платежі й сповіщення

Перевірте успіх/відмову платежу й сповіщення; підпис та ідемпотентність проти подвійних списань.

Сайти, домени й мови

Перевірте всі сайти, домени й мови з потрібною роллю; cookies, URL, налаштування.

GBK/UTF-8 і перевірка даних

Перевірте символи у формах, БД й експорті; збережіть GBK/UTF-8 до окремої перевіреної конвертації.

Контракти API й callbacks

Перевірте API з/без входу; порівняйте типи JSON, помилки, статуси й callbacks.

Розширення Web/CLI та ABI

Перевірте Web/CLI-розширення та ABI/NTS/ZTS; випробуйте драйвери й служби.

Перевірити виправлення PHP2Shell

Сумісність застосунку, його супровід і безпека PHP перевіряються окремо. Виберіть підтримувану гілку з виправленнями обох CVE та перевірте Web-процеси, завдання й репліки. Оновлення плагіна не замінює PHP.

Чотири гілки. Чітка мета оновлення.
Гілка PHPВихідні версії нижчеПерша виправлена версіяКінець оновлень безпеки
PHP 8.5< 8.5.12✓ 8.5.1231 груд. 2029 р.
PHP 8.4< 8.4.27✓ 8.4.2731 груд. 2028 р.
PHP 8.3< 8.3.36✓ 8.3.3631 груд. 2027 р.
PHP 8.2< 8.2.35✓ 8.2.3531 груд. 2026 р.
Використовуєте PHP 8.1 або старішу?

Звичайних випусків PHP для цих гілок немає. Мінімальні бекпорти коду доступні для 7.4, 8.0 і 8.1. Підтримку постачальника перевіряйте окремо. Читати посібник ↗

Першоджерело

PHP security teamПершоджерело ↗CVE-2026-109618Першоджерело ↗CVE-2026-109619Першоджерело ↗PHP 7.0Першоджерело ↗PHP 8.0Першоджерело ↗PHP 8.2Першоджерело ↗PHPПершоджерело ↗ComposerПершоджерело ↗
Усунення PHP2Shell - помилки оновлення PHP ↗← До посібників застосунків