Устраните PHP2Shell на сайте, в блоге или магазине: определите рабочий PHP, проверьте совместимость, устраните препятствия и подтвердите исправления CVE-2026-109618 и CVE-2026-109619.
Все приложения
Laravel
Восстановите composer.lock и обновляйте Illuminate совместимым набором по руководству каждой основной версии. Проверьте Horizon, авторизацию, Carbon и хранилище. Согласуйте сериализованные задания и перезапустите все постоянные процессы после PHP; главная страница не проверяет очереди.
Читать руководство ↗Symfony
Согласуйте компоненты Symfony и рецепты Flex. Устраните устаревшие API до смены основной версии. Doctrine, Twig, Messenger и аутентификаторы могут блокировать переход. Пересоберите контейнер на стенде и проверьте HTTP вместе с консольными процессами.
Читать руководство ↗ThinkPHP
Различайте ThinkPHP 5.0, 5.1, 6 и 8, отдельные ORM и шаблонизатор. У скопированного каталога может не быть lock-файла. Проверьте маршруты, middleware, старые behaviors и свои теги. Не заменяйте только каталог фреймворка в рабочей системе.
Читать руководство ↗CodeIgniter
Структуры CI3 и CI4 различаются. Не устанавливайте codeigniter4/framework поверх system/ CI3. Учтите свои базовые классы, hooks и сессии. Новые младшие версии CI4 повышают требования PHP. Переносите настройки и код на копии, сравнивая вход и базу.
Читать руководство ↗Yii
Разделяйте Yii 1, 2 и 3. Образец yiisoft/yii2 относится к одному патчу Yii 2, не всей ветке 2.0. Проверьте расширения, RBAC, ActiveRecord и виджеты. Смена поколения требует миграции приложения, а не только правки Composer.
Читать руководство ↗CakePHP
CakePHP 3.10.5 исключает PHP 8; 4.5.12 ограничивает PHP ниже 8.4. Читайте руководство каждого основного перехода. Проверьте сигнатуры сущностей, finders и отдельные плагины аутентификации/авторизации. Испытайте реальные запросы и формы.
Читать руководство ↗Laminas / Zend Framework
Определите ZF1, ZF2, ZF3 и независимые компоненты. Таблица относится к laminas-mvc. До миграционных инструментов учтите пространства имён, фабрики ServiceManager и модули. Заброшенные модули рассматривайте отдельно; проверьте API, сессии и создание сервисов.
Читать руководство ↗Slim
Slim 3 → 4 меняет PSR-7, фабрики, контейнер и порядок middleware. Текущий патч Slim 3 не отражает исходный минимум PHP. По реальному lock-файлу проверьте ошибки, авторизацию, тело запроса и выдачу ответа на целевом PHP.
Читать руководство ↗Phalcon
Phalcon является компилируемым расширением; Composer не устанавливает подходящий phalcon.so или DLL. Документация 5.9 требует PHP 8.1+, но не сертифицирует все бинарники. Согласуйте архитектуру, ABI, NTS/ZTS и загрузку в FPM и CLI.
Читать руководство ↗Hyperf
Согласуйте hyperf/*, coroutine-клиенты и ABI Swoole/OpenSwoole. Перезапуск прокси оставляет старые процессы. Проверьте восстановление пулов, потребителей и задания; замените все постоянные процессы по документированной процедуре.
Читать руководство ↗WordPress
Учтите ядро WordPress, темы и плагины, включая дочерние темы, mu-plugins и drop-ins. Версию смотрите в состоянии сайта или version.php. Проверьте полную копию до смены Web PHP. Старый минимум не рекомендует неподдерживаемый PHP.
Читать руководство ↗WooCommerce
Проверьте WordPress, WooCommerce, платёжные плагины и переопределения темы вместе. Согласуйте остановку записи заказов. Испытайте обновление базы, HPOS, Action Scheduler и тестовые платежи. Откат PHP не восстанавливает схему и заказы после резервной копии.
Читать руководство ↗Drupal
Согласуйте core, core-recommended, Drush и модули. Удалите устаревшие API до основного перехода; проверьте update hooks и импорт конфигурации на копии. Drupal 7 не относится к показанному пакету Drupal 8+. Минимум не заменяет политику поддержки.
Читать руководство ↗Joomla
Используйте манифест и предварительную проверку Joomla. Планируйте расширения, шаблоны и основные переходы. Плагин совместимости не проверяет все расширения. Сохраните файлы и базу вместе; проверьте схему, вход администратора и многоязычные маршруты.
Читать руководство ↗Magento Open Source / Adobe Commerce
Сверьте точную редакцию и суффикс патча с матрицей Adobe. Поиск, база, кэш и брокер могут блокировать переход. Проверьте модули и индексаторы, соберите испытанный артефакт; до приёма заказов проверьте суммы, асинхронные заказы и платёжные уведомления.
Читать руководство ↗PrestaShop
Минимум Composer не равен полной PHP-матрице PrestaShop. Сверьте выпуск, Symfony, платёжные модули, тему и overrides. Испытайте Update Assistant на копии. Подготовьте совместный откат файлов/базы и проверьте несколько магазинов и историю заказов.
Читать руководство ↗OpenCart
Определите сборку OpenCart, OCMOD/VQMod и расширения её основной версии. Startup задаёт только минимум. Отрепетируйте миграцию приложения/базы, затем проверьте оформление, платёжные уведомления, почту и хранилище до новых заказов.
Читать руководство ↗PHPCMS V9
Рассматривайте PHPCMS V9 как унаследованное приложение. Исторический официальный сайт не удалось проверить; общий диапазон PHP не заявлен. Офлайн проверьте mysql_*, кодировку, модели и теги. Сохраняйте вложения и URL статей при ремонте или переносе. Перед экспортом PHPCMS сопоставьте ID категорий/моделей, свои поля и вложения с реальными префиксами. Сравните страницы и пути. Один текст может потерять поля или оставить изображения на старом сервере.
Читать руководство ↗DedeCMS / 织梦
Различайте исходный DedeCMS, коммерческие выпуски и DedeBIZ. PHP 5.6+ на текущей странице не подтверждает все старые пакеты 5.7. Офлайн проверьте SQL-классы, модели, темы и кодировку. Сохраните таблицы, загрузки и статические URL; не перезаписывайте другой сборкой. В DedeCMS проверьте главную и дополнительные таблицы каналов, реальные ключи/префиксы. Сохраните авторов, категории, шаблоны, статические пути. Сравните количество и полные статьи с картинками; только archives может потерять поля.
Читать руководство ↗Discuz! X
Запишите Discuz! X, UCenter и плагины отдельно. Важны сборка и кодировка; X3.4/X3.5 недостаточно. Используйте точный пакет. Проверьте единый вход, синхронизацию пользователей, вложения и кодировку с полным комплектом отката. Восстановите форум и UCenter вместе изолированно. Найдите другие подключённые сайты, сохраните вложения и ID пользователей. Согласуйте запись аккаунтов и проверьте вход всех приложений; главная не подтверждает согласованность.
Читать руководство ↗Typecho
Минимумы README Typecho относятся к указанным тегам, не всем темам/плагинам. Проверьте hooks, функции темы, SQL-адаптеры и маршруты. Сохраните базу и usr/ вместе. После обновления сравните постоянные ссылки, комментарии, Markdown и медиа.
Читать руководство ↗EC-CUBE
Согласуйте EC-CUBE, Symfony, Doctrine и платёжные плагины. app/Customize и Twig могут ломаться отдельно от ядра. Уточните выпуск 4.x, отрепетируйте миграции, доставку, налоги, японский текст и тестовые платёжные возвраты.
Читать руководство ↗TYPO3
Проверяйте ядро TYPO3 и расширения вместе. Учтите свои расширения, Fluid, TypoScript и сайты. Запустите Upgrade Wizards на стенде; проверьте редактор и публичный сайт. Минимум ядра не гарантирует расширения или договор продлённой поддержки.
Читать руководство ↗Shopware
Младшая версия и патч Shopware важны вместе с приложениями, плагинами и Symfony. Следуйте официальному порядку, пересоберите ресурсы при необходимости и перезапустите потребителей. Проверьте поиск, оформление и API на копии; Composer не подтверждает обработку заказов.
Читать руководство ↗Устранить препятствия исправлению PHP2Shell
Устранение PHP2Shell на PHP-сайте без разработчика
Если PHP-разработчика нет, восстановите доступ, проверьте резервные копии и определите среду. Затем выберите исправленный PHP, миграцию или статический архив для устранения PHP2Shell.
Устранение PHP2Shell - ошибки обновления PHP
Удалённые API, конфликты пакетов, недостающие расширения и ошибки шлюза могут блокировать исправление PHP2Shell. Восстановите работу на исправленном PHP и проверьте обе CVE.
Совместимость PHP для устранения PHP2Shell
Показаны отдельные выпуски, а не гарантия для всей основной версии. Минимум без верхней границы не доказывает поддержку любого нового PHP. Проверьте lock-файл, расширения и текущие условия поддержки.
Инвентаризация перед исправлением PHP2Shell
Используйте разрешённую рабочую копию. Команды проверяют CLI и зафиксированные пакеты, не исправляют PHP и не подтверждают Web-среду. Версия в примере prohibits служит только для сравнения.
Проверить исправления PHP2Shell
Совместимость приложения, его поддержка и безопасность PHP проверяются отдельно. Выберите поддерживаемую ветку с исправлениями обеих CVE и проверьте Web-процессы, задания и реплики. Обновление плагина не заменяет PHP.
| Ветка PHP | Исходные версии ниже | Первая исправленная версия | Конец обновлений безопасности |
|---|---|---|---|
| PHP 8.5 | < 8.5.12 | ✓ 8.5.12 | 31 дек. 2029 г. |
| PHP 8.4 | < 8.4.27 | ✓ 8.4.27 | 31 дек. 2028 г. |
| PHP 8.3 | < 8.3.36 | ✓ 8.3.36 | 31 дек. 2027 г. |
| PHP 8.2 | < 8.2.35 | ✓ 8.2.35 | 31 дек. 2026 г. |
Обычных выпусков PHP для этих веток нет. Минимальные бэкпорты исходников доступны для 7.4, 8.0 и 8.1. Поддержку поставщика проверяйте отдельно. Читать руководство ↗