Skip to main content

PHP corrige duas vulnerabilidades críticas de RCE sem autenticação (CVE-2026-109618, CVE-2026-109619): atualize agora

illustration hero ai

22 de outubro de 2026

0 minutos de leitura

Na quarta-feira, 21 de outubro de 2026, às 14h UTC, o projeto PHP lançou o PHP 8.5.12, 8.4.27, 8.3.36 e 8.2.35 para corrigir duas vulnerabilidades críticas, ambas com classificação CVSS v4.0 9.2, que podem permitir execução remota de código sem autenticação. A equipe de segurança do PHP recomenda: "Não há medidas de mitigação completas; atualizar é a única opção segura."

São falhas no runtime do PHP, não em um pacote do Composer. Isso muda a forma de detectá-las e corrigi-las, como explicamos abaixo.

Resumo Se você usa PHP para atender a solicitações web (PHP-FPM, Apache com mod_php, php-cgi, FrankenPHP, LiteSpeed), atualize hoje para 8.5.12, 8.4.27, 8.3.36 ou 8.2.35. Se você usa a versão 8.1 ou anterior, obtenha um pacote com backport da sua distribuição ou de um fornecedor de LTS, ou faça a atualização.

O que aconteceu

Todos os horários estão em UTC.

  • 20 de outubro: A equipe de segurança do PHP publicou um aviso prévio sobre um lançamento de segurança crítico programado para 21 de outubro, às 14h UTC. Ele corrige duas vulnerabilidades avaliadas em CVSS v4.0 9.2, com a ressalva de que o lançamento poderia ocorrer antes caso os detalhes vazassem ou houvesse exploração em ambiente real.

  • 21 de outubro, antes das 14h UTC: A Snyk publicou avisos para os dois CVEs, SNYK-UNMANAGED-PHP-21347795 (CVE-2026-109618) e SNYK-UNMANAGED-PHP-21347796 (CVE-2026-109619), para alertar os clientes sobre as medidas necessárias e garantir que os projetos monitorados fossem identificados assim que as versões corrigidas fossem conhecidas.

  • 21 de outubro, 14h UTC: O aviso de segurança do PHP e as quatro versões corrigidas são publicados. Em cerca de 30 minutos, os avisos da Snyk são atualizados com todos os detalhes relevantes, incluindo os intervalos afetados e as versões corrigidas.

  • A partir de 21 de outubro: As distribuições Linux (que receberam os patches antecipadamente) começam a publicar seus próprios avisos. A Snyk publica avisos para essas distribuições à medida que são divulgados, como SNYK-UBUNTU2604-PHP85-21373920. A lista atualizada está em CVE-2026-109618 e CVE-2026-109619.

As duas vulnerabilidades

As duas estão no ciclo de vida das solicitações do mecanismo PHP e podem ser exploradas antes da execução de qualquer código da aplicação. Esse é um dos fatores que tornam essas vulnerabilidades tão disseminadas e perigosas.

Detalhes técnicos

CVE-2026-109618, RCE por corrupção causada por falta de memória: O tratamento de falta de memória pode interromper o PHP quando os dados internos de uma solicitação estão parcialmente inicializados. Durante a limpeza da solicitação, esses dados inválidos são tratados como válidos. Um invasor capaz de levar um worker ao limite de memória com uma solicitação maliciosa pode provocar a interrupção.

CVE-2026-109619, RCE por estado global obsoleto: O estado interno associado a uma solicitação pode persistir depois que a memória que o armazenava é liberada. Uma solicitação posterior atendida pelo mesmo worker pode usar esse estado obsoleto antes que a inicialização normal o redefina. Em um modelo com workers de longa duração, isso representa um uso após liberação entre solicitações.

Essas falhas foram encontradas com o auxílio de IA em um runtime que está em produção há três décadas. Em um mundo de LLMs e agentes, todo mundo ainda está executando servidores — e o modelo que encontrou essas falhas é do mesmo tipo que os invasores têm à disposição hoje. Essa é a premissa por trás do Evo by Snyk: segurança orientada por IA para as aplicações executadas pelos agentes, não apenas para os próprios agentes.

Quem está em risco

Todas as instalações do PHP que atendem a solicitações web estão em risco. Isso inclui PHP-FPM, Apache com mod_php, php-cgi, FrankenPHP, LiteSpeed e outros. O Apache com mod_php é o mais vulnerável: um exploit demonstrado mostra que uma única solicitação sem autenticação pode disparar o ataque antes da execução do código da aplicação.

O projeto PHP não fornece mais atualizações para o PHP 8.1 e versões anteriores. Portanto, instalações sem patch do 8.1, 8.0 ou 7.4 estão vulneráveis e não têm uma correção oficial do projeto. Dada a gravidade, a equipe de segurança do PHP publicou backports mínimos do código-fonte para as versões 7.4, 8.0 e 8.1, destinados a quem compila a partir do código-fonte ou não conta com um fornecedor de LTS.

O que fazer agora

  1. Atualize. As versões corrigidas são PHP 8.5.12, 8.4.27, 8.3.36 e 8.2.35. A versão 8.2 chega ao fim da vida útil em 31 de dezembro de 2026. Portanto, se você usa a 8.2, aproveite para planejar a próxima atualização.

  2. Consulte seu fornecedor. As distribuições Linux e os fornecedores de LTS receberam os patches antes do lançamento. Instale os pacotes atualizados fornecidos por eles, em vez de esperar por uma compilação a partir do código-fonte. Uma versão corrigida da distribuição pode continuar usando um número de versão antigo. Por isso, consulte também o aviso ou o nível de patch da distribuição.

  3. Verifique o que está realmente em execução. Confira a versão do PHP em cada host e imagem (php -v ou a tag da imagem). Os resultados de uma verificação, por si só, não confirmam que uma instalação está corrigida.

  4. Se você não puder atualizar hoje, o PHP lista medidas que reduzem a exposição a caminhos específicos, mas não tornam uma instalação segura: definir memory_limit=-1 em um contexto em que as aplicações não possam sobrescrevê-lo, usar um post_max_size baixo, definir session.upload_progress.enabled=0 e reiniciar todos os workers e, na versão 8.5, definir fatal_error_backtraces=0. Consulte o aviso correspondente para conhecer as ressalvas de cada medida.

  5. Se você usa PHP 8.1 ou anterior, atualize para uma versão compatível ou obtenha um pacote com backport da sua distribuição ou de um fornecedor de LTS. Os backports do código-fonte do PHP para as versões 7.4, 8.0 e 8.1 são o último recurso para equipes que compilam a partir do código-fonte.

O ecossistema de código aberto

A equipe de segurança do PHP avisou o ecossistema com um dia de antecedência, informando o horário exato, a gravidade e sem divulgar detalhes sobre exploração. Os patches foram compartilhados previamente com as distribuições Linux para que as correções nos pacotes fossem lançadas junto com a versão do código-fonte. Também foram publicados backports para versões sem suporte (7.4, 8.0, 8.1). Os usuários de um popular repositório mantido por voluntários (rpms.remirepo.net) foram avisados de que ele não seria atualizado no primeiro dia e receberam orientações sobre o que fazer. Além disso, as recomendações de mitigação explicam com transparência o que cada configuração não protege.

É assim que funciona a divulgação coordenada quando um projeto mantido por voluntários faz tudo certo. Também foi por isso que, na Snyk, conseguimos publicar os avisos antes do lançamento e completá-los pouco depois: um cronograma divulgado permite que todos os envolvidos se preparem.

Como funciona o Snyk SCA

O Snyk Open Source analisa o que sua aplicação declara em arquivos de manifesto ou de build, como composer.json e composer.lock. O interpretador PHP não é uma dependência declarada. Ele é instalado por um Dockerfile, um pacote de distribuição, uma imagem de plataforma ou manualmente. Uma restrição "php": ">=8.2" em composer.json informa quais versões a aplicação aceita, mas não exatamente qual versão está implantada.

Como a plataforma Snyk ajuda você a encontrar PHP exposto

O que você usa

O que você verá para CVE-2026-109618 e CVE-2026-109619

Snyk Open Source (CLI ou integração com SCM)

Os CVEs não são reportados, pois o runtime do PHP não é uma dependência comum no arquivo de manifesto. Em projetos PHP/Composer, a Snyk mostra as dependências declaradas pela aplicação, o que pode ajudar você a identificar quais projetos são aplicações PHP. A restrição de versão do PHP declarada não informa qual versão está implantada.

Snyk C/C++ verificação de dependências não gerenciadas

Os avisos são exibidos quando o runtime do PHP está presente no projeto e podem ser filtrados pelo ID do CVE.

Snyk Container

O PHP instalado por meio de pacotes de distribuições Linux é reportado assim que a distribuição publica seu aviso. Algumas distribuições compatíveis já publicaram avisos, disponíveis nos resultados de teste (por exemplo, SNYK-RHEL10-PHP84-21392647 e SNYK-UBUNTU2604-PHP85-21373920). Estamos importando os avisos de outras distribuições à medida que são publicados. Eles estão disponíveis aqui: CVE-2026-109618 CVE-2026-109619. O Snyk Container não detecta o PHP compilado a partir do código-fonte, incluindo as imagens oficiais php: do Docker.

Snyk API & Web

O DAST examina e testa aplicações em execução de fora para dentro e identifica a tecnologia usada. Se a aplicação de um cliente estiver exposta ao php2shell, nós detectamos e reportamos o problema.

Relatório Zero Day

O relatório Zero Day da Snyk compara seus projetos com os avisos. Por isso, ele só pode listar projetos verificados com verificações de dependências não gerenciadas ou verificações de Container de pacotes de distribuição. Em projetos verificados apenas com Open Source, nenhum resultado será exibido.

Descubra sua superfície de ataque PHP com o Snyk API & Web

Antes de aplicar patches, você precisa saber onde procurar. A guia Discovery do Snyk API & Web enumera os ativos encontrados nos seus domínios e identifica a tecnologia usada. Abra Discovery, defina o filtro Tech como PHP e veja todos os hosts e endpoints descobertos nos quais o PHP foi identificado, junto com a classificação e a pontuação de risco e a data da última identificação. Tudo pronto para verificar ou adicionar como alvo.

Painel do Snyk API and Web Discovery filtrado por ativos PHP, mostrando alvos com classificações de risco médio, alto e crítico.

O mesmo filtro Tech também está disponível na lista Targets. Assim, você pode filtrar da mesma forma as aplicações que adicionou para exibir apenas as que usam PHP.

Painel de alvos do Snyk filtrado pela tecnologia PHP, exibindo alvos de risco crítico e alto, com status das análises e vulnerabilidades encontradas.

Isso não informa a versão do PHP. Mas mostra onde procurar, uma etapa essencial para corrigir o problema.

Teste sua aplicação contra a vulnerabilidade com o Snyk API & Web

O Snyk API & Web permite verificar suas aplicações e APIs para detectar se estão vulneráveis ao PHP2Shell.

Uma verificação com um perfil completo agora testa a vulnerabilidade PHP2Shell. Você também pode criar um perfil de verificação personalizado para testar exclusivamente o PHP2Shell. Assim, fica fácil saber se suas aplicações estão vulneráveis ou se a correção já foi aplicada.

Perfil de análise do Snyk API & Web chamado “PHP RCE”, configurado com payloads abrangentes e a vulnerabilidade crítica PHP2Shell selecionada.

O que estamos fazendo

  • Os avisos para os dois CVEs foram publicados antes do lançamento do PHP, às 14h UTC, e atualizados com as versões afetadas e os detalhes das correções em cerca de 30 minutos.

  • Os avisos das distribuições estão sendo importados à medida que cada distribuição Linux os publica. Ubuntu e Red Hat já estão disponíveis.

  • Um relatório Zero Day para este evento está disponível para projetos de dependências não gerenciadas e Container.

Como sempre, a equipe de pesquisa de segurança da Snyk está acompanhando esta divulgação e atualizará os avisos conforme novas informações forem disponibilizadas. Se tiver dúvidas, entre em contato com sua equipe de conta da Snyk ou com o Support.

Referências

RELATÓRIO

Panorama da adoção da IA agentiva em 2026: Volume III

Sua lista de modelos aprovados mostra o que está em uso, mas não a que cada modelo pode acessar. Quer saber por onde começar a auditoria dos agentes?

Leia mais

blog feature ai lilac
Blog

Transforme seu backlog de vulnerabilidades em pull requests com remediação agentiva

O Evo Remediation Agent está em Open Preview e traz a resolução automatizada de dependências para o Evo Agentic AppSec. Agora, as equipes de AppSec podem executar campanhas contínuas de remediação

AI Background min crop
Blog

A IA está acionando todos os riscos que você aceitou: sete insights do painel de segurança de IA sem filtros

A IA está tornando os ataques mais baratos e rápidos, expondo riscos que as organizações já carregam. Quatro líderes de segurança explicam por que a defesa na velocidade das máquinas e a correção mais rápida são essenciais.

blog feature snyk container custom base recommendations
Blog

Conheça o Evo Agentic AppSec: segurança que acompanha o ritmo do desenvolvimento com IA

O desenvolvimento impulsionado por IA está ultrapassando os fluxos de trabalho tradicionais de segurança. O Agentic AppSec da Snyk usa agentes de segurança para encontrar, corrigir e verificar vulnerabilidades continuamente, enquanto as pessoas definem os critérios.