PHP2Shell é o nome dado a duas falhas críticas no núcleo do PHP, CVE-2026-109618 e CVE-2026-109619, que podem permitir execução remota de código sem autenticação. Em 21 de outubro de 2026, o projeto PHP publicou versões corrigidas; a AWS relatou tentativas contra seus sensores, mas disse que não sabe se elas teriam funcionado em servidores reais.
O risco merece atenção porque as falhas podem afetar diferentes configurações de PHP que atendem requisições pela web. Para quem administra um serviço, o passo decisivo é identificar qual runtime está em uso e atualizar para uma versão corrigida ou para um pacote de fornecedor com correção retroportada.
O que acontece nas duas falhas
A CVE-2026-109618 envolve corrupção no tratamento de falta de memória: parte dos dados de uma requisição pode ficar inicializada de forma incompleta e ser processada incorretamente durante a limpeza. Na CVE-2026-109619, um estado interno de uma requisição pode permanecer após a liberação da memória que o guardava e ser usado por outra requisição atendida pelo mesmo processo de trabalho.
O PHP classificou as duas falhas como capazes de permitir execução remota de código sem autenticação. O aviso antecipado do projeto atribuiu a cada uma nota 9,2 no CVSS 4.0, sistema que mede a gravidade de vulnerabilidades.
O PHP considera potencialmente expostas as instalações que atendem requisições web com PHP-FPM, Apache mod_php, php-cgi, FrankenPHP ou LiteSpeed. O caso demonstrado com maior risco foi Apache mod_php, em que o ataque podia ocorrer antes de a aplicação PHP ser executada.
O que a AWS observou no MadPot
A Amazon Threat Intelligence relatou uma tentativa contra a telemetria de honeypot do MadPot em 17 de outubro de 2026. Honeypots são sistemas-isca usados para observar atividades direcionadas a serviços vulneráveis.
Em 21 de outubro, a AWS identificou os primeiros exploits de prova de conceito por volta das 02h UTC e outras tentativas contra o MadPot entre 02h e 08h UTC. O embargo sobre a divulgação terminou às 14h UTC, quando as correções foram publicadas. A AWS afirmou que não sabe se as tentativas observadas teriam sido bem-sucedidas em sistemas reais. Os endereços IP citados incluem infraestrutura compartilhada de anonimização e não são indicadores exclusivos de atividade PHP2Shell.
O que significa o índice de 10% no Brasil
Em relatório publicado em 22 de outubro, a Check Point informou que 10% das organizações brasileiras enfrentaram tentativas de exploração desde a divulgação. O índice mede organizações que receberam tentativas, não invasões bem-sucedidas confirmadas.
No mesmo relatório, a Check Point estimou 10% para organizações no mundo todo e 6% na América Latina como região. As demais estimativas regionais foram 14% na Europa, 6% na América do Norte, 6% na região da Ásia-Pacífico e 4% na África. O percentual brasileiro e o latino-americano correspondem a recortes geográficos diferentes.
Quais versões do PHP corrigem as falhas
O projeto PHP publicou as seguintes versões corrigidas em 21 de outubro de 2026:
| Ramo do PHP | Primeira versão corrigida |
| PHP 8.5 | 8.5.12 |
| PHP 8.4 | 8.4.27 |
| PHP 8.3 | 8.3.36 |
| PHP 8.2 | 8.2.35 |
O PHP 8.1 e versões anteriores não recebem mais atualizações upstream do projeto, embora algumas distribuições e fornecedores de suporte de longo prazo possam disponibilizar correções retroportadas. O aviso do PHP lista as versões corrigidas e as orientações para as duas falhas.
Para verificar um serviço próprio, identifique o runtime PHP que realmente atende as requisições, inclusive em contêineres e imagens mantidas por fornecedores. Compare a versão em execução com a lista acima ou com uma correção retroportada confirmada pelo fornecedor. Restringir o acesso a uma VPN pode reduzir quem alcança o serviço, mas não corrige o runtime vulnerável.
Por que medidas de configuração não substituem a atualização
O PHP afirma que atualizar é a única correção completa para CVE-2026-109618 e CVE-2026-109619. Desativar session.upload_progress.enabled bloqueia caminhos confirmados da CVE-2026-109619, mas não todas as variantes. Limites de tamanho de requisição e outras mudanças de configuração também cobrem caminhos específicos, não substituem a correção.
O arquivo do PHP descreve ainda uma via de execução remota de código separada, classificada como improvável e identificada como CVE-2026-115560. A condição envolve session.serialize_handler configurado como php_binary ou php_serialize, alterado para php durante a execução antes de session_start(), com o progresso de upload de sessão ativado. Essa condição pertence a essa via específica, distinta das duas falhas PHP2Shell.
Instalar a correção não remove arquivos maliciosos ou outros danos que possam já estar no servidor. A Check Point recomenda investigar arquivos PHP desconhecidos, requisições incomuns, execução inesperada de comandos do sistema e conexões de saída não reconhecidas.