Для CodeIgniter усунення PHP2Shell потребує виправлення середовища PHP. Версія застосунку допомагає виявити несумісність, але не доводить можливість експлуатації чи виправлення обох CVE.
CodeIgniter - Сумісність PHP для усунення PHP2Shell
| Приклад випуску | Заявлена вимога PHP | Кандидати за декларацією | Першоджерело |
|---|---|---|---|
| v4.1.9 | ^7.3 || ^8.0 | repo.packagist.org ↗4ec623a6b826 | |
| v4.2.12 | ^7.4 || ^8.0 | repo.packagist.org ↗bc3f312a3eba | |
| v4.3.8 | ^7.4 || ^8.0 | repo.packagist.org ↗10c23e96db99 | |
| v4.4.8 | ^7.4 || ^8.0 | repo.packagist.org ↗84ff35989270 | |
| v4.5.8 | ^8.1 | repo.packagist.org ↗80204755e06c | |
| v4.6.5 | ^8.1 | repo.packagist.org ↗116e0919590a | |
| v4.7.5 | ^8.2 | repo.packagist.org ↗a1f129d56df3 |
Кандидати зіставляють лише декларацію з першими виправленнями PHP2Shell у підтримуваних гілках. Це не доказ перевіреної сумісності, підтримки постачальника чи відповідності всіх залежностей. Сумісність PHP для усунення PHP2Shell ↗
Визначити обсяг виправлення PHP2Shell
Файли та ідентифікатор пакета
codeigniter4/framework
composer.locksystem/core/CodeIgniter.phpapp/Config/
CodeIgniter - Усунути перешкоди виправленню PHP2Shell
CI3 і CI4 мають різну структуру. Встановлення codeigniter4/framework поверх system/ CI3 не є міграцією. Зберіть власні класи, hooks і сесії. Перенесіть код/налаштування на стенд та порівняйте вхід і БД. Навіть проміжні CI4 підвищують вимоги PHP.
Залежності та власний код
Офіційна документація ↗Перевірка функцій після усунення PHP2Shell
Інвентаризація перед виправленням PHP2Shell
Використовуйте дозволену робочу копію.
php -v
php --ini
composer --no-plugins show --locked codeigniter4/framework
composer --no-plugins check-platform-reqs --lock
composer --no-plugins prohibits php 8.3.36 --lockedCodeIgniter - Перевірити виправлення PHP2Shell
Перевірте обидва виправлення в PHP, що обслуговує цей сайт. Замініть або перезапустіть старі Web-процеси, обробники черг і репліки. Робоча головна сторінка чи новий CLI не є достатнім доказом.
3. Перезапустіть і перевірте все ↗