Falhas RCE críticas no PHP: correções CVE-2026-109618 e 109619
Notícia

Falhas RCE críticas no PHP: correções CVE-2026-109618 e 109619

7 min de leitura

O PHP lançou as versões 8.5.12, 8.4.27, 8.3.36 e 8.2.35 para corrigir CVE-2026-109618 e CVE-2026-109619 (php2shell), duas falhas críticas de execução remota de código. Análise técnica, checklist de atualização e proteção contra vazamento de credenciais.

Em 21 de outubro de 2026, a equipe de desenvolvimento do PHP disponibilizou as versões 8.5.12, 8.4.27, 8.3.36 e 8.2.35 para corrigir duas vulnerabilidades críticas conhecidas na comunidade de segurança como “php2shell”: CVE-2026-109618 e CVE-2026-109619. Ambas permitem execução remota de código (RCE) sem necessidade de autenticação em servidores web expostos. A orientação oficial dos mantenedores do PHP é direta: atualizar o runtime do PHP é a única correção completa.

Como o PHP está presente em cerca de 70% dos sites que utilizam linguagens de servidor conhecidas, o lançamento gerou alertas imediatos de centros de resposta a incidentes internacionais, incluindo o CERT-EU (aviso de segurança 2026-018) e o Centro Nacional de Cibersegurança dos Países Baixos (NCSC-NL). Na Europa e em outras regiões, diversos portais públicos e serviços corporativos entraram temporariamente em modo de manutenção enquanto as equipes aplicavam as correções.

Vazamento antecipado, linha do tempo da descoberta e causa raiz

De acordo com a análise técnica publicada pela The PHP Foundation, o problema de esgotamento de memória (OOM) por trás da CVE-2026-109618 foi observado inicialmente em uma auditoria externa em 2024 financiada pela Sovereign Tech Agency e conduzida pela OSTIF e pela Quarkslab. Na época, a exploração parecia apenas teórica e as alterações propostas traziam risco de quebra de compatibilidade com extensões de terceiros. O cenário mudou quando o PHP ingressou no programa Patch the Planet no fim de julho de 2026: em 11 de agosto de 2026, o pesquisador Ryan Austin, da Calif (liderada pelo CEO Thai Duong), comprovou um caminho incondicional de execução remota de código e o reportou a Volker Dusch, engenheiro de segurança da The PHP Foundation. A OpenAI reportou de forma independente a mesma causa raiz no mesmo dia, seguida por vetores adicionais enviados pela Wiz em 24 de agosto e pela OpenAI em 18 de setembro.

O cronograma de divulgação coordenada foi interrompido cerca de 24 horas antes do lançamento oficial. Por volta das 15h00 UTC de 20 de outubro, os dois identificadores CVE e seus títulos vazaram em feeds públicos antes da liberação dos pacotes corrigidos. Esse vazamento levou o CERT-EU e o NCSC-NL a publicarem alertas urgentes. Um ponto essencial destacado nos boletins é que a saída temporária do ar de diversos sites entre 20 e 21 de outubro ocorreu por desligamento preventivo adotado pelos próprios administradores até a chegada do patch, e não por ataques destrutivos em massa.

No aspecto técnico, a CVE-2026-109618 (GHSA-w8hw-w9fx-j79w, NVD) decorre do tratamento incorreto de falta de memória (OOM) enquanto os dados da requisição ainda estão sendo analisados, deixando estruturas parcialmente inicializadas que permitem corrupção de memória e RCE (CWE-119, CWE-787). Já a CVE-2026-109619 (GHSA-6wmf-4rv5-p3rp, NVD) é uma falha de use-after-free (CWE-416) na qual estados internos do progresso de upload de sessão ou de backtraces de erro permanecem ativos após a liberação da memória da requisição. O PHP classifica ambas as falhas com nota 9,2 (Crítica) no CVSS v4.0, enquanto o NVD atribui 9,8 (Crítica) no CVSS v3.1.

Ambientes afetados e versões corrigidas

O comunicado do PHP alerta que todas as instalações que respondem a requisições web estão em risco, incluindo PHP-FPM, Apache mod_php, php.exe, CGI/FastCGI e runtimes de processos persistentes como FrankenPHP, RoadRunner e Swoole. O risco mais elevado concentra-se em ambientes Apache mod_php, onde todas as threads compartilham o mesmo espaço de endereçamento.

Quem utiliza PHP-FPM também não deve baixar a guarda. Embora o FPM isole melhor os processos contra a CVE-2026-109618, o recurso de progresso de upload de sessão explorado na CVE-2026-109619 vem habilitado por padrão e pode ser acionado em instalações padrão do FPM sem depender de nenhum script específico da aplicação. Os pesquisadores validaram execução remota de código tanto em mod_php quanto em FPM. Além disso, a análise técnica da Tenable ressalta que o processo mestre do FPM reinicia automaticamente workers que sofrem falha, de modo que um serviço aparentemente disponível pode estar sofrendo tentativas de exploração; a Tenable também alerta para repositórios falsos no GitHub que prometem PoCs do “php2shell”, mas distribuem malware infostealer.

As versões oficiais corrigidas para os ramos suportados são PHP 8.5.12, PHP 8.4.27, PHP 8.3.36 e PHP 8.2.35. Diante da gravidade das falhas, a equipe do PHP também disponibilizou branches com correções mínimas em código-fonte para as versões descontinuadas PHP 7.4, 8.0 e 8.1. Em distribuições Linux como Debian e Ubuntu, as correções são aplicadas via backport nos pacotes da distribuição; por isso, é indispensável conferir a versão do pacote instalado nos avisos oficiais da distribuição em vez de confiar apenas na saída de php -v (Debian Security Tracker, Ubuntu Security).

Checklist de verificação e medidas temporárias de mitigação

1. Mapeamento completo do ambiente: Liste todas as instâncias do PHP que processam requisições web — pools FPM, Apache mod_php, imagens de contêineres e workers FrankenPHP, RoadRunner ou Swoole — e remova páginas públicas que exponham a saída de phpinfo().

2. Atualização e reinicialização de processos: Atualize para o PHP 8.5.12, 8.4.27, 8.3.36 ou 8.2.35 (ou para o pacote corrigido da sua distribuição Linux) e reinicie tanto o servidor web quanto todos os processos workers do PHP-FPM para garantir que nenhum binário antigo permaneça em memória.

3. Mitigações temporárias (apenas até a aplicação do patch): O PHP enfatiza que ajustes de configuração apenas reduzem caminhos específicos de ataque e não tornam segura uma instalação sem patch. Enquanto a atualização não é concluída, pode-se reduzir a superfície da CVE-2026-109618 definindo memory_limit=-1 via php_admin_value (impedindo alterações via ini_set() ou .user.ini) e reduzindo post_max_size e upload_max_filesize, garantindo que não existam limites RLIMIT_AS ou RLIMIT_DATA definidos no sistema operacional, pois isso anteciparia a falha de memória. Para a CVE-2026-109619, defina session.upload_progress.enabled=0 e, no PHP 8.5, fatal_error_backtraces=0, lembrando que o operador @ ainda gera estruturas internas de erro mesmo com error_reporting e display_errors desativados.

4. Auditoria de falhas e logs: Verifique nos logs do FPM e do servidor web se há quedas repetidas de processos workers, requisições multipart anormalmente grandes ou atividade incomum de upload de sessão. Logs de acesso HTTP aparentemente limpos não provam ausência de exploração, já que requisições que derrubam o processo antes da conclusão nem sempre são gravadas nos logs tradicionais.

Perspectiva da LeakData: Proteção de credenciais e dados após falhas críticas em servidores

Antes de tudo, informamos aos nossos usuários e parceiros que a plataforma e os serviços da LeakData não são afetados pelas vulnerabilidades CVE-2026-109618 e CVE-2026-109619. Após a publicação dos alertas globais, nossa equipe de segurança revisou todos os controles de perímetro e confirmou a proteção integral do nosso ambiente. No entanto, para organizações que mantêm aplicações web, o impacto mais duradouro de falhas críticas de RCE como o php2shell costuma surgir na etapa seguinte: o roubo de credenciais e bancos de dados.

Quando invasores obtêm execução remota de código em um servidor web desatualizado, o objetivo imediato é coletar arquivos de configuração, credenciais de banco de dados, chaves de API, tokens de sessão ativos e tabelas de usuários. Mesmo depois que a equipe técnica aplica a atualização do PHP, credenciais corporativas e dados extraídos durante a janela de exposição frequentemente reaparecem dias ou semanas depois em logs de infostealers, canais do Telegram e fóruns de vazamento de dados.

A LeakData apoia tanto usuários individuais quanto equipes de segurança corporativas na detecção rápida dessa exposição pós-exploração. Após atualizar seus servidores, você pode usar a LeakData para verificar se endereços de e-mail do seu domínio, contas administrativas ou credenciais aparecem em bases de vazamentos recém-identificadas, além de ativar o monitoramento contínuo de domínios e identidades para receber alertas imediatos e iniciar a rotação de senhas e chaves sem demora. Saiba mais em nossa página Como funciona.

#Segurança PHP#CVE-2026-109618#CVE-2026-109619#php2shell#Cibersegurança
Voltar para todas as atualizações