No ThinkPHP, corrigir o PHP2Shell exige aplicar o patch ao interpretador PHP. A versão da aplicação ajuda a identificar incompatibilidades; não comprova exploração nem a correção das duas CVEs.
ThinkPHP - Compatibilidade PHP para corrigir PHP2Shell
| Versão analisada | Requisito PHP declarado | Candidatos conforme a declaração | Fonte original |
|---|---|---|---|
| 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 |
Os candidatos comparam apenas esta declaração às primeiras correções PHP2Shell em versões com suporte. Não comprovam compatibilidade testada, suporte do fornecedor ou todas as dependências. Compatibilidade PHP para corrigir PHP2Shell ↗
Identificar o escopo da correção PHP2Shell
Arquivos e identidade do pacote
topthink/framework
composer.lockthinkphp/base.phpapp/
ThinkPHP - Remover bloqueios da correção PHP2Shell
Separe ThinkPHP 5.0, 5.1, 6 e 8, ORM e templates. Diretórios copiados podem não ter arquivo de bloqueio. Examine rotas, middleware, comportamentos antigos e tags próprias. Não substitua apenas a pasta do framework em produção.
Dependências e código personalizado
Documentação oficial ↗Testes do site após corrigir PHP2Shell
Inventário antes de corrigir 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 - Verificar correções PHP2Shell
Valide as duas correções no PHP que atende este site. Substitua ou reinicie processos Web, trabalhadores de filas e réplicas antigos. Página inicial funcionando ou CLI novo não bastam como prova.
3. Reinicie e verifique tudo ↗