Pular para o conteúdo
Cyber Guard Core Cibersegurança e perícia digital

Ameaças e ataques 6 min de leitura

PHP2Shell explicado: as falhas críticas do PHP, quem é afetado e como proteger seu site

PHP2Shell: o que todo dono de site precisa fazer agora

Em 21 de outubro de 2026, o projeto PHP lançou atualizações de segurança emergenciais para duas falhas críticas, agora conhecidas em conjunto como PHP2Shell. Elas permitem que um atacante assuma o controle de um servidor web sem senha e, em algumas configurações, antes mesmo que o código do próprio site comece a rodar. Tentativas de exploração foram vistas poucas horas após a correção.

Estima-se que o PHP rode entre 75% e 80% de todos os sites, incluindo o WordPress, então isso afeta uma parcela muito grande da web. Veja o que aconteceu, quem está em risco e o que fazer agora e no futuro.

O que é o PHP2Shell

O PHP2Shell são dois bugs distintos no núcleo do próprio PHP, não em um plugin ou tema:

  • CVE-2026-109618 é acionado quando o PHP fica sem memória no meio da preparação de uma requisição. Os dados internos ficam montados pela metade, e o código de limpeza confia neles mesmo assim. Um envio de formulário especialmente construído e grande demais pode bastar para dispará-lo.
  • CVE-2026-109619 é um bug de "estado residual". Informações de uma requisição sobrevivem à memória para a qual apontam, e a requisição seguinte atendida pelo mesmo processo PHP age sobre essas sobras. Pesquisadores mostraram que ele pode ser alcançado pelo recurso de progresso de upload do PHP, ativado por padrão, que roda em qualquer envio de formulário antes que a aplicação o veja.

Ambos têm nota 9,2 de 10 (críticos). Qualquer um deles pode permitir que um atacante execute seu próprio código com as permissões do servidor web. A partir daí, ele pode ler bancos de dados e arquivos de configuração, instalar backdoors, enviar spam ou usar o servidor para atacar outros.

De onde veio

As falhas foram descobertas por pesquisadores de segurança da Calif, da OpenAI e da Wiz e comunicadas de forma privada à equipe de segurança do PHP. A divulgação estava prevista para 22 de outubro. Em 20 de outubro, capturas de tela, vídeos e detalhes parciais de uma ferramenta chamada "PHP2Shell" vazaram na internet, e o PHP antecipou a atualização emergencial para 21 de outubro às 14h UTC.

O comportamento vulnerável é antigo. Segundo a análise da Abstract Security, o código afetado remonta ao PHP 5.4, lançado em 2012, ou seja, está presente há mais de uma década. Isso é comum em bugs graves de softwares muito usados: um código que funciona bem no uso normal pode esconder um caso extremo por anos, até alguém examiná-lo do ponto de vista de um atacante.

O que está acontecendo agora

  • Exploração ativa: a empresa de segurança watchTowr viu tentativas de exploração contra sua rede de honeypots em 21 de outubro, no mesmo dia em que a correção foi lançada.
  • Escala: o VirusTotal estima que mais de 5,1 milhões de servidores PHP estejam expostos na internet.
  • Alertas oficiais: o National Cyber Security Centre do Reino Unido pediu às organizações britânicas que atualizem o PHP imediatamente ou tirem os sistemas do ar até que estejam corrigidos.
  • Proteções temporárias: a Cloudflare implantou regras de firewall de aplicação web contra os métodos de ataque conhecidos e relatou ter visto os primeiros ataques. Ela descreveu as regras como temporárias, e não como substitutas da atualização.
  • Completude contestada: uma equipe de pesquisa, a Abstract Security, afirma ter reproduzido um ataque relacionado em um servidor totalmente atualizado, abusando do mesmo recurso de progresso de upload. A afirmação não foi confirmada pelo projeto PHP, mas é mais um motivo para aplicar, além da atualização, as medidas de reforço abaixo.

Quem é afetado

Qualquer instalação de PHP que sirva páginas web está no escopo, seja qual for a forma de execução do PHP: PHP-FPM, Apache com mod_php, php-cgi, LiteSpeed ou FrankenPHP. A equipe do PHP considera o Apache com mod_php o caso de maior risco, porque um ataque pode ter sucesso antes que qualquer código da aplicação rode.

As versões corrigidas são:

Ramo do PHPVulnerávelCorrigido em
8.5anteriores à 8.5.128.5.12
8.4anteriores à 8.4.278.4.27
8.3anteriores à 8.3.368.3.36
8.2anteriores à 8.2.358.2.35
8.1, 8.0, 7.4todas as versõessem versão oficial; apenas backports de fornecedores ou do código-fonte
7.3 e anteriorestodas as versõessem correção: atualize para uma versão com suporte

Na prática, isso significa que:

  • WordPress, Joomla, Drupal, Magento e a maioria dos sites de pequenas empresas rodam em PHP. Seu site só é tão seguro quanto a versão de PHP que está por baixo dele.
  • Clientes de hospedagem compartilhada dependem do provedor para atualizar o PHP. Muitos provedores atualizam automaticamente, mas alguns ainda oferecem versões antigas de PHP que não recebem mais correções.
  • Servidores antigos e sites esquecidos são o maior risco: um site de teste, uma página de campanha antiga ou uma cópia de homologação com PHP 7 não serão corrigidos por nenhuma atualização.
  • Appliances e painéis de controle às vezes trazem sua própria cópia do PHP, que suas atualizações normais não alcançam.

O que fazer agora mesmo

  1. Encontre todos os lugares onde o PHP roda. Sites, cópias de homologação, painéis de controle, ferramentas internas e appliances. Comece por tudo o que pode ser acessado pela internet.
  2. Atualize para uma versão corrigida da tabela acima, ou instale os pacotes corrigidos da sua distribuição Linux, que em muitos casos foram lançados antes do anúncio público.
  3. Reinicie todos os processos PHP após a atualização. Processos de longa duração mantêm o código vulnerável na memória até serem reiniciados.
  4. Se você usa hospedagem compartilhada, confira a versão do PHP no painel de controle da hospedagem. Passe para uma versão com suporte (8.2 ou mais recente) e peça ao provedor que confirme por escrito que as correções do PHP2Shell foram aplicadas.
  5. Se não puder atualizar hoje, restrinja o acesso ao servidor, desative session.upload_progress.enabled nas configurações do PHP e reinicie, e mantenha o tamanho máximo de upload o menor possível para o seu site. A equipe do PHP é clara: nenhuma configuração protege totalmente, então trate essas medidas como paliativas.
  6. Procure sinais de comprometimento a partir de 20 de outubro, e não apenas a partir do dia em que atualizou. Sinais de alerta incluem erros do PHP que mencionam "tried to allocate" com "in Unknown on line 0", rajadas de envios de formulários muito grandes, arquivos PHP desconhecidos nas pastas do site, novos usuários administradores, cron jobs ou chaves SSH alterados e o servidor web fazendo conexões de saída inesperadas.

Como se proteger da próxima

O PHP2Shell não será a última falha crítica em softwares que fazem a web funcionar. Estes hábitos reduzem os danos da próxima vez:

  • Mantenha-se em versões com suporte. Softwares em fim de vida não recebem nenhuma correção. Coloque as datas de atualização na agenda antes que o suporte termine.
  • Escolha uma hospedagem que atualize rápido e pergunte quanto tempo as atualizações críticas do PHP costumam levar para chegar à sua conta.
  • Coloque um firewall de aplicação web na frente do seu site. Serviços como a Cloudflare e outras CDNs podem aplicar patches virtuais em poucas horas, o que dá tempo enquanto você atualiza.
  • Remova o que você não usa. Sites antigos, plugins sem uso e recursos de upload de arquivos desnecessários são portas a mais.
  • Limite o raio de impacto. Rode cada site com sua própria conta, dê aos usuários do banco de dados apenas as permissões necessárias e guarde credenciais fora da pasta do site.
  • Monitore e mantenha backups. Monitoramento de alterações de arquivos, logs fora do servidor e backups off-line testados transformam um desastre em um contratempo.
  • Tenha um plano. Decida com antecedência quem acompanha os alertas, quem aplica atualizações emergenciais e para quem ligar se algo já deu errado.

Precisa de ajuda?

Se você não tem certeza de qual versão do PHP seus sites usam, ou quer uma verificação independente de sinais de comprometimento, nossa equipe pode ajudar. Podemos avaliar sua exposição, verificar se as correções estão aplicadas e investigar qualquer atividade suspeita com rigor pericial. Fale conosco ou ligue para nossa linha 24/7: +44 7520 644325.

Fontes

Publicado em pela equipe da Cyber Guard Core. Este artigo traz orientações gerais, não aconselhamento para a sua situação específica. Fale com um especialista.

Mais artigos

Todos os artigos
Ameaças e ataques31 de agosto de 2026 Ataques de dia zero em agosto de 2026: o que aconteceu e como proteger sua organização Uma falha do Windows usada pelo grupo Lazarus e servidores de impressão sequestrados sem senha: os dias zero de agosto e as medidas práticas que limitam os danos do próximo. Ler o artigo Ameaças e ataques26 de fevereiro de 2026 Derrubadas como arma: como sobreviver a um ataque direcionado à sua infraestrutura Se você administra uma empresa ou ativos digitais hoje, provavelmente está preparado para ameaças tradicionais, como e-mails de phishing. As derrubadas direcionadas são outro tipo de ataque. Ler o artigo Ameaças e ataques22 de agosto de 2025 A psicologia do crime cibernético: entendendo como os hackers pensam O crime cibernético não é só código. É controle, manipulação e motivação, e entender isso é o primeiro passo para se defender. Ler o artigo

Está enfrentando um incidente agora?

Nossa equipe de resposta a incidentes está disponível 24/7. Ligue, escreva no Telegram ou agende uma consulta para assuntos menos urgentes.

Ligue para +44 7520 644325 Agendar consulta