ThinkPHP の PHP2Shell 対策には PHP 実行環境の修正が必要です。アプリのバージョンは互換性の調査に役立ちますが、悪用の可否や両 CVE の修正を証明するものではありません。
ThinkPHP - PHP2Shell 修正に必要な PHP 互換性
| 対象リリース例 | 宣言されたPHP要件 | 宣言に一致する修正候補 | 原典 |
|---|---|---|---|
| v5.0.25 | >=5.4.0 | repo.packagist.org ↗643c58ed1bd2 | |
| v5.1.42 | >=5.6.0 | repo.packagist.org ↗ecf1a90d397d | |
| v6.0.16 | >=7.2.5 | repo.packagist.org ↗d3904e51e279 | |
| v6.1.5 | >=7.2.5 | repo.packagist.org ↗57d1950a1844 | |
| v8.0.4 | >=8.0.0 | repo.packagist.org ↗846432655a82 |
候補は、この宣言とサポート対象ブランチの最初の PHP2Shell 修正版を照合しただけです。動作確認、ベンダーのサポート、全依存関係の適合を保証しません。 PHP2Shell 修正に必要な PHP 互換性 ↗
PHP2Shell 対策の対象を確認
ファイルとパッケージ識別
topthink/framework
composer.lockthinkphp/base.phpapp/
ThinkPHP - PHP2Shell 修正を妨げる互換性の問題
ThinkPHP 5.0、5.1、6、8 を区別し、ORM とテンプレートの独立したパッケージも確認します。コピーされた構成には lock がない場合があります。ルーティング、ミドルウェア、旧 behaviors、独自タグを調査し、本番の thinkphp ディレクトリだけを上書きしないでください。
依存関係と独自コード
公式更新ドキュメント ↗PHP2Shell 修正後の業務機能テスト
PHP2Shell 修正前の読み取り専用調査
コマンド例
php -v
php --ini
composer --no-plugins show --locked topthink/framework
composer --no-plugins check-platform-reqs --lock
composer --no-plugins prohibits php 8.3.36 --lockedThinkPHP - PHP2Shell修正の確認
実際にこのサイトを処理する PHP で両方の修正を確認し、古い Web・キューのプロセスと全レプリカを交換または再起動します。トップページの表示や CLI の更新だけでは不十分です。
3. 全環境を再起動して検証 ↗