Versões corrigidas disponíveis para PHP 8.2–8.5 Projeto comunitário independente · fatos verificados em 22 de outubro de 2026

Verificador PHP2Shell / openai php2shell checker

php2shell-checker da OpenAI: como rodar e como interpretar o resultado

O php2shell-checker da OpenAI é uma pequena ferramenta de código aberto em Node.js. Ela lê a versão do PHP que um site anuncia nos cabeçalhos HTTP, ou a saída do php -v no seu servidor, e compara com a última versão vulnerável de cada ramo. Rode a ferramenta no seu próprio site ou servidor e cole a saída no verificador PHP2Shell deste site para um resultado que também leva em conta os backports dos fornecedores.

Equipe editorial do PHP2Shell.helpVerificado Fontes oficiais ↓

O que é o php2shell-checker da OpenAI?

O php2shell-checker é uma ferramenta de código aberto que a OpenAI publicou em 21 de outubro de 2026, sob a licença Apache 2.0, junto com a divulgação coordenada do PHP2Shell (CVE-2026-109618 e CVE-2026-109619). É um script curto em Node.js com dois modos:

  • Modo URL: envia uma requisição HEAD a um site e procura a versão do PHP nos cabeçalhos X-Powered-By e Server. Só recorre a GET se o HEAD for recusado, não segue redirecionamentos e não lê a página.
  • Modo local: roda php -v na máquina e lê a versão.

Depois, compara a versão com uma tabela embutida da última versão vulnerável de cada ramo, do 5.4 ao 8.5. A ferramenta não envia tráfego de ataque: as próprias instruções da OpenAI pedem para não rodar sondagens de exploração.

Como rodo o checker da OpenAI?

Você precisa do Node.js e de uma cópia do repositório no GitHub. Na pasta do repositório:

  • No seu servidor, para verificar o PHP da linha de comando: node phpcheck.js --local
  • No seu próprio site: node phpcheck.js "https://your-site.example"
  • Para saída legível por máquina, acrescente --json.

Rode o modo URL apenas em sites que você possui ou administra. O PHP de linha de comando que o --local verifica pode ser diferente do PHP que serve o seu site, então confira também o que o próprio site informa; no WordPress, por exemplo, em Ferramentas → Saúde do site → Informações → Servidor (em inglês, Tools → Site Health → Info → Server).

O que significam OK, VULNERABLE e UNKNOWN?

ResultadoCódigo de saídaO que a ferramenta quer dizerO que fazer
OK0A versão está acima da última versão vulnerável do ramoConfirme que é a versão que o seu site roda e que o PHP foi reiniciado
VULNERABLE1A versão é igual ou anterior à última versão vulnerávelAtualize o PHP, a menos que o seu fornecedor tenha feito backport da correção (veja abaixo)
UNKNOWN3Nenhuma versão encontrada, o ramo não está na lista ou é uma versão de pré-lançamentoConfira a versão no painel de controle ou no servidor

UNKNOWN não significa que o seu site está seguro. A maioria dos servidores bem configurados esconde a versão do PHP nos cabeçalhos, então o modo URL muitas vezes retorna UNKNOWN.

Onde o checker da OpenAI pode errar?

Ele compara apenas números de versão, e a OpenAI deixa isso claro: um OK não verifica de forma independente uma correção de segurança. Na prática, três casos importam:

  • Backports das distribuições: Ubuntu, Debian, Red Hat e outras corrigem pacotes do PHP com números mais antigos. Um 8.3.6-0ubuntu0.24.04.13 corrigido continua aparecendo como VULNERABLE. Veja atualizar o PHP no Ubuntu e no Debian.
  • Números de build de painéis e fornecedores: em ramos antigos, qualquer número acima do corte aparece como OK, inclusive números que o PHP nunca lançou. O 宝塔 e o aaPanel distribuem builds corrigidos como 7.4.34 e 8.1.35, mas 8.0.27 é ao mesmo tempo um build do 宝塔 e uma versão antiga sem correção.
  • Cabeçalhos: um proxy ou CDN pode esconder ou reescrever o X-Powered-By, e um mesmo servidor pode hospedar vários sites com versões diferentes do PHP.

Como combino a ferramenta com o verificador PHP2Shell?

Cole a saída da ferramenta direto no campo de versão do verificador PHP2Shell. Ele aceita a saída --json, uma linha como OK: PHP 8.3.36, a saída do php -v ou um cabeçalho X-Powered-By: PHP/8.3.36, e extrai a versão. Depois escolha de onde vem o seu PHP, como um pacote do sistema operacional, 宝塔 / aaPanel ou outro painel de controle. Assim o verificador leva em conta backports e builds de painel que uma comparação só de versão deixa passar. A verificação roda no seu navegador e nada do que você cola é enviado a lugar nenhum.

As versões corrigidas são:

RamoPrimeira versão corrigida
PHP 8.28.2.35
PHP 8.38.3.36
PHP 8.48.4.27
PHP 8.58.5.12
8.1 e anterioresSem versão nova; patches oficiais de código-fonte para 7.4, 8.0 e 8.1

Se o resultado disser que você está afetado, siga o guia de correção do PHP2Shell para o seu ambiente. Depois de atualizar, procure sinais de uma invasão anterior com o checklist de invasão.

O php2shell.help pode fazer essa verificação na minha URL por mim?

Sim. O campo de URL do verificador PHP2Shell lê os cabeçalhos do seu site com a mesma lógica e depois avalia a versão com as regras deste site. Rodar a ferramenta por conta própria é útil no servidor, onde o --local lê o php -v.

O checker da OpenAI diz OK. Meu site está protegido contra o PHP2Shell?

Não necessariamente. OK significa apenas que a versão anunciada está acima da última versão vulnerável do ramo; a ferramenta não verifica a correção em si, e os cabeçalhos podem ser alterados. Confirme a versão que o seu site realmente roda e se todos os workers do PHP foram reiniciados.

Verifique se o seu PHP é afetado pelo PHP2Shell

Informe a versão que o seu site mostra. Comparamos com a primeira versão corrigida do mesmo ramo e dizemos o que fazer em seguida.

Verificador PHP2Shell →

Fontes

Os fatos centrais desta página (versões corrigidas, detalhes dos CVEs, pacotes das distribuições e alertas de órgãos oficiais) vêm de fontes oficiais. Pesquisas, notícias e posts da comunidade estão identificados como tal.