Tecnologia

🚨 PHP2Shell: falha crítica no PHP põe milhões de sites em risco. Atualize já!

Duas vulnerabilidades no próprio motor do PHP permitem que um atacante execute código no servidor sem precisar de login. Já há ataques em curso.

MegaTurbo2 min de leitura

Esta, a comunidade de segurança entrou em alerta. PHP2Shell é o nome dado a duas vulnerabilidades críticas de execução remota de código (RCE) no próprio PHP, a CVE-2026-109618 e a CVE-2026-109619. Ambas têm pontuação 9.2 no CVSS v4.0, e qualquer uma delas pode permitir que um atacante não autenticado execute código num servidor que processa pedidos PHP.

Porque é tão grave?

  • O problema está no motor, não no teu código. As falhas estão no runtime do PHP, por isso o código da tua aplicação pode estar correto e o servidor continuar vulnerável. Isso inclui lojas em Magento, Shopware e WooCommerce.

  • Afeta praticamente toda a gente. O código vulnerável existe desde o PHP 5.4.0, lançado em 2012, e as configurações padrão estão vulneráveis. Segundo o PHP, todas as instalações que servem pedidos web estão em risco, incluindo PHP-FPM, Apache com mod_php, php-cgi, FrankenPHP e LiteSpeed.

  • Pode expor dados sensíveis. A CVE-2026-109618 também consegue vazar memória por si só, de forma semelhante ao Heartbleed. Essa memória pode conter palavras-passe, tokens de sessão, chaves de API e chaves privadas TLS de outros pedidos.

  • Os ataques já começaram. Os detalhes das falhas vazaram online a 20 de outubro, antes da divulgação coordenada e antes de existirem correções. A Amazon Threat Intelligence reportou tentativas de exploração a partir de 17 de outubro, antes da divulgação pública. A Palo Alto Networks identificou mais de 22,6 milhões de instâncias expostas potencialmente vulneráveis.

O que fazer agora ✅

  1. Atualiza o PHP. Instala a versão 8.5.12, 8.4.27, 8.3.36 ou 8.2.35, reinicia os processos PHP e reconstrói as imagens de contentores.

  2. Instalaste pelo sistema operativo? Procura pacotes atualizados junto do fornecedor. Muitas vezes a correção é aplicada sem mudar o número da versão, por isso confirma os IDs das CVE no changelog.

  3. Usas PHP 8.1 ou mais antigo? O projeto PHP já não dá suporte a estas versões, por isso o caminho é migrar para uma versão suportada ou pedir uma correção ao fornecedor.

  4. Não consegues atualizar hoje? Aplica as duas mitigações temporárias em conjunto, session.upload_progress.enabled = 0 e memory_limit = -1, de forma que as aplicações não as consigam sobrepor, e reinicia todos os workers PHP. Cada uma cobre uma vulnerabilidade diferente, por isso não apliques só uma. Isto reduz o risco, mas não substitui a atualização.

Depois de atualizar 🔍

Procura sinais de invasão: cookies PHPSESSID anormalmente grandes ou malformados, reinícios inexplicáveis dos workers PHP, web shells, ficheiros inesperados, novos utilizadores administradores e ligações externas estranhas. Como as falhas podem expor a memória, considera trocar palavras-passe, chaves de API e tokens dos sistemas PHP expostos à internet.

Se o teu site, loja ou sistema corre em PHP, ou se não sabes em que tecnologia corre, fala hoje com quem o gere. Este é um daqueles casos em que esperar pode sair caro. 🔐

Mais notícias