Vulnerabilidades de execução remota de código no núcleo do PHP geraram alerta global, mas a complexidade de memória dos servidores Linux barrou tentativas de infecção em massa.
A infraestrutura global de servidores web enfrentou momentos de alerta máximo com a descoberta de três vulnerabilidades críticas de execução remota de código (RCE) no núcleo do PHP. Batizadas coletivamente como PHP2Shell e rastreadas sob os códigos CVE-2026-109618 e CVE-2026-109619, as falhas atingiram pontuação máxima de severidade (9.2) no CVSS, gerando uma corrida global por atualizações.
Logo após a publicação dos códigos de exploração (PoC), varreduras automatizadas varreram a internet. No entanto, análises de segurança revelaram que o cenário prático foi bem diferente do esperado: a engenharia interna do PHP e as defesas modernas atuaram como barreiras quase intransponíveis contra os invasores.
A anatomia do PHP2Shell: Como funcionam as falhas de memória?
Para entender o risco técnico, é preciso olhar para o gerenciamento de memória do PHP. O motor da linguagem opera limpando variáveis e estruturas ao término de cada requisição.
Esgotamento intencional (OOM): A primeira falha (
CVE-2026-109618) ocorre quando um atacante envia requisições POST com blocos gigantescos de dados para forçar um esgotamento de memória (Out-Of-Memory). Durante a recuperação do erro, o PHP falha em zerar completamente os ponteiros, fazendo o sistema interpretar dados residuais maliciosos como estruturas válidas.Uso após liberação (Use-After-Free): A segunda falha (
CVE-2026-109619) permite que o estado de uma requisição sobreviva na memória mesmo após sua conclusão. Uma requisição seguinte consegue ler ou sobrescrever esses dados antes que o ambiente seja reiniciado, injetando código arbitrário.
As falhas afetaram um vasto espectro de versões, desde o antigo PHP 5.4 até as compilações recentes da série 8.5.
A ameaça da variante Potassium (Botnet Mirai)
Pouco após a divulgação, campanhas automatizadas iniciaram ataques utilizando a assinatura php2shell-scan na tentativa de infectar servidores Linux com a variante Potassium da clássica botnet Mirai.
Diferente do foco original da Mirai em dispositivos IoT com senhas fracas (como câmeras e roteadores), essa nova variante adaptou-se para tentar sequestrar servidores web de alto desempenho. O malware utiliza rotinas avançadas para validar binários ELF no diretório temporário /tmp, buscando estabelecer conexões TCP com servidores de comando e controle.
Por que os ataques falharam na prática?
Apesar do alarme inicial, os ataques em larga escala falharam em comprometer os alvos. Especialistas em cibersegurança apontam que há um abismo técnico entre um exploit de laboratório e um ataque real na internet:
Complexidade de ambiente: A corrupção de memória exige alinhar layouts de heap, arquiteturas de processador (
x86_64,ARM64), distribuições Linux específicas (Ubuntu, Debian, AlmaLinux) e módulos ativados. Disparar um exploit sem conhecer a topografia exata do alvo geralmente resulta apenas em uma queda de serviço (502 Bad Gateway) em vez de execução bem-sucedida.Defesas de Perímetro: Firewalls de aplicação web (WAF) e Sistemas de Prevenção de Intrusão (IPS) bloquearam rapidamente o tráfego anômalo antes de atingirem o interpretador do PHP.
Como proteger seu servidor?
A principal medida de mitigação é a atualização imediata dos pacotes do PHP para as versões corrigidas liberadas pela comunidade (como 8.5.12, 8.4.27, 8.3.36 e 8.2.35).
Para ambientes legados em fim de vida (EOL) onde o patch direto não é viável, administradores podem desativar o vetor de entrada problemático ajustando a diretiva session.upload_progress.enabled = 0 no arquivo php.ini.
