PHP2Shell: o que lojas virtuais devem fazer agora

Em 21 de outubro de 2026, o projeto PHP corrigiu duas falhas críticas, CVE-2026-109618 e CVE-2026-109619, conhecidas como PHP2Shell, que permitem executar código em um servidor web sem fazer login. Toda loja auto-hospedada que roda em PHP, como WooCommerce, Magento, PrestaShop ou OpenCart, deve estar no PHP 8.5.12, 8.4.27, 8.3.36, 8.2.35 ou em um pacote corrigido da hospedagem. A CISA, dos Estados Unidos, incluiu as duas falhas no catálogo de vulnerabilidades exploradas em 26 de outubro de 2026.

O que fazer hoje#

  1. Descubra qual versão do PHP sua loja usa

    Veja no painel da hospedagem ou, no WordPress, em Ferramentas, Saúde do site, Informação, Servidor. Anote a versão e se a hospedagem gerencia o PHP para você.

  2. Atualize o PHP ou peça à hospedagem que confirme a correção

    Passe para o PHP 8.5.12, 8.4.27, 8.3.36 ou 8.2.35, ou pergunte por escrito à hospedagem se o servidor tem as correções de 21 de outubro de 2026 para CVE-2026-109618 e CVE-2026-109619.

  3. Faça backup antes e depois

    Baixe um backup completo dos arquivos e do banco de dados e guarde uma cópia fora do servidor, para restaurar uma versão limpa se algo estiver errado.

  4. Atualize a loja e todos os plugins

    Instale as atualizações pendentes do WordPress, WooCommerce ou da sua plataforma, do tema e de cada plugin ou módulo, e remova os que você não usa mais.

  5. Confira os administradores e troque as senhas

    Exclua contas de administrador que você não reconhece e troque as senhas do painel, da hospedagem e do banco de dados, além das chaves de API e senhas de serviços de e-mail salvas na loja.

O que aconteceu, em linguagem simples#

PHP é a linguagem de programação em que roda grande parte das lojas virtuais auto-hospedadas. Em 21 de outubro de 2026, o projeto PHP lançou as versões 8.5.12, 8.4.27, 8.3.36 e 8.2.35 para corrigir duas vulnerabilidades críticas, CVE-2026-109618 e CVE-2026-109619 S1. Pesquisadores de segurança chamam a dupla de PHP2Shell S5S6. As duas têm nota 9,2 de 10 S5.

As falhas estão no próprio PHP, não em um plugin específico. Segundo o projeto PHP, elas afetam todas as instalações de PHP que atendem requisições web, e em algumas configurações de servidor uma requisição de alguém sem login pode disparar o ataque antes de qualquer código da loja rodar S1. Por isso, o login do painel, um plugin de segurança ou uma senha forte não bastam para barrá-lo. O projeto PHP afirma que não há soluções provisórias completas e que atualizar é a única escolha segura S1.

As tentativas de ataque começaram cedo. A Datadog relata que a AWS observou tentativas de exploração já em 17 de outubro de 2026, antes de a correção ser pública S6. Em 26 de outubro de 2026, a Agência de Segurança Cibernética e de Infraestrutura dos EUA (CISA) incluiu os dois CVEs no catálogo Known Exploited Vulnerabilities, que lista falhas com evidência de exploração ativa S3S4.

Um problema separado, CVE-2026-115560, foi divulgado pelo projeto PHP em 23 de outubro de 2026. Ele não faz parte do PHP2Shell e não é corrigido pelas versões de 21 de outubro. Só afeta aplicações que combinam configurações de sessão incomuns; a correção está prevista para a próxima versão regular e, até lá, a configuração recomendada é session.upload_progress.enabled = 0 S2. Este artigo reflete a situação em 30 de outubro de 2026.

Minha loja foi afetada?#

Se você hospeda sua própria loja, é muito provável que ela rode em PHP. O WordPress é uma aplicação PHP S7, então lojas WooCommerce rodam em PHP, assim como Magento (Adobe Commerce), PrestaShop e OpenCart. Um blog, uma página de campanha ou uma área do cliente em WordPress também conta, mesmo que a loja esteja em outro lugar.

Onde sua loja roda e quem atualiza o PHP
Sua configuraçãoRoda em PHP?Quem atualiza o PHP
WooCommerce no WordPressSimVocê ou sua hospedagem, conforme o plano
Magento, PrestaShop ou OpenCart em servidor próprioSimVocê ou a agência ou desenvolvedor que cuida do servidor
WordPress gerenciado ou hospedagem gerenciada para lojasSimEm geral a hospedagem; peça que confirme a correção
Plataforma totalmente hospedada, como Shopify ou NuvemshopVocê não roda PHP por conta própriaA plataforma mantém os próprios servidores

Para ver sua versão do PHP, olhe o painel da hospedagem, onde ela costuma aparecer em um menu de configurações ou versão do PHP. No WordPress, vá em Ferramentas, depois Saúde do site, depois a aba Informação, e abra Servidor. As versões corrigidas são 8.5.12, 8.4.27, 8.3.36 e 8.2.35 ou posteriores em cada ramo S1.

O número da versão nem sempre conta a história toda. Distribuições Linux e empresas de hospedagem receberam as correções antes e podem incluí-las nos próprios pacotes sem mudar o número da versão S1S6. Na dúvida, pergunte diretamente à hospedagem se o servidor inclui as correções para CVE-2026-109618 e CVE-2026-109619.

Lojas no PHP 8.1 ou anterior estão em situação mais difícil. O projeto PHP não atualiza mais essas versões; alguns fornecedores oferecem correções adaptadas, e o projeto PHP indica procurá-los ou atualizar S1. Vale lembrar também que o suporte ao PHP 8.2 termina em 31 de dezembro de 2026 S1.

O que fazer hoje#

A lista numerada acima é a versão curta. Alguns detalhes deixam cada passo mais seguro.

Se você mesmo administra o servidor

Atualize o PHP pelos pacotes do sistema ou pelo painel e reinicie o PHP e o servidor web para que todos os processos usem a versão corrigida. A CISA recomenda corrigir imediatamente os sistemas expostos à internet e, se um sistema não puder ser corrigido logo, tirá-lo do ar ou colocar um firewall de aplicação web na frente como medida temporária S3. O projeto PHP lista algumas configurações provisórias, mas avisa que elas não tornam uma instalação segura S1.

Se uma hospedagem ou agência administra

Envie um pedido curto por escrito: “Por favor, confirmem que nosso servidor tem as correções do PHP para CVE-2026-109618 e CVE-2026-109619 lançadas em 21 de outubro de 2026 e informem a versão ou o pacote do PHP que usamos.” Guarde a resposta.

Faça backup antes de mudar qualquer coisa

Faça um backup completo dos arquivos e do banco de dados e guarde-o fora do servidor. Se a loja já tiver sido comprometida antes da correção, talvez seja preciso restaurar um backup limpo mais antigo, então não sobrescreva os backups anteriores ainda.

Atualize os plugins e confira os administradores

Atualizar o PHP fecha essa brecha, mas o resto da loja também precisa de cuidado. Atualize o WordPress, o WooCommerce ou sua plataforma, o tema e cada plugin. Na lista de usuários, procure contas de administrador que você não criou. Depois troque as senhas e gere novamente as chaves de API e senhas SMTP salvas na loja, como as de pagamento, frete e e-mail, porque qualquer pessoa com acesso ao servidor pode tê-las lido.

Como proteger sua lista de clientes e sua reputação de envio#

O banco de dados de uma loja guarda mais do que pedidos. Normalmente contém o nome, o e-mail, o endereço de entrega e o histórico de compras de cada cliente, além da lista de assinantes da sua newsletter. Quem consegue executar código no servidor muitas vezes consegue ler esse banco e também usar o servidor para enviar e-mails em seu nome.

Sinais de que algo está errado

  • Avisos de devolução ou respostas a e-mails que você nunca enviou.
  • Um alerta da hospedagem sobre envio de spam ou carga incomum no servidor.
  • Contas de administrador, plugins ou arquivos que você não adicionou, ou mudanças na página de pagamento.
  • Relatórios DMARC mostrando servidores que você não usa enviando com o seu domínio.
  • Um aumento repentino de denúncias de spam, ou seu domínio ou o IP do servidor em uma lista de bloqueio.

A reputação de remetente do seu domínio leva tempo para ser construída e pode cair rápido quando sai spam em seu nome. Os registros SPF, DKIM e DMARC dizem às caixas de entrada quais servidores podem enviar pelo seu domínio, e os relatórios DMARC mostram quem está tentando; a explicação sobre SPF, DKIM e DMARC cobre cada registro e o guia de configuração do DMARC mostra como ler os relatórios. Se o servidor da loja não deve enviar e-mail de marketing, não o inclua no registro SPF; isso limita o que um servidor comprometido pode fazer com o seu domínio.

Se dados de clientes podem ter sido expostos

As obrigações legais após um vazamento variam de país para país. Muitas leis de proteção de dados exigem avisar a autoridade, os clientes afetados ou ambos dentro de um prazo; no Brasil, o art. 48 da LGPD obriga o controlador a comunicar à ANPD e aos titulares os incidentes que possam causar risco ou dano relevante, e a regulamentação da ANPD fixa o prazo de três dias úteis S8. Confira as regras de cada mercado em que você vende, ou consulte um advogado, antes de escrever aos clientes. Nosso guia de leis de e-mail marketing cobre as regras de consentimento por mercado; as regras de comunicação de vazamentos são outro tema e dependem da lei local.

Ao escrever aos clientes, seja direto: o que aconteceu, quais dados foram envolvidos, o que você fez e a que eles devem ficar atentos. E-mails de phishing que fingem ser da loja costumam vir em seguida, então avise que você nunca pedirá senha nem número de cartão por e-mail. Em uma marca de roupas como a Ninefold, essa mensagem sairia do endereço de sempre, sem cupom de desconto, para não parecer propaganda.

Reduzir o que pode dar errado da próxima vez#

O PHP2Shell não será a última atualização urgente. Uma loja fácil de manter atualizada é mais fácil de proteger.

  • Menos plugins. Cada plugin ou módulo é código que roda no seu servidor e precisa de atualizações. Remova os que você não usa e, quando der, troque vários plugins pequenos por um só bem mantido.
  • Um ramo do PHP com suporte. Planeje sair do PHP 8.2 antes do fim do suporte, em 31 de dezembro de 2026, e saia agora de qualquer versão mais antiga S1.
  • Hospedagem ou serviços gerenciados. Hospedagem gerenciada, ou serviços hospedados para pagamento, busca ou e-mail, passam as correções para um fornecedor cujo trabalho é esse. Pergunte quanto tempo levaram para corrigir desta vez.
  • Atualizações automáticas e backups fora do servidor. Ative as atualizações menores automáticas quando a plataforma permitir e guarde backups regulares fora do servidor.
  • Um responsável. Defina quem acompanha os alertas de segurança da loja: você, um desenvolvedor ou a hospedagem.

Onde o Tellnod entra#

O Tellnod é um conector MCP para escrever, visualizar e enviar e-mail de marketing pelo Claude ou pelo ChatGPT. Ele roda como serviço hospedado na infraestrutura do próprio Tellnod, não no servidor da sua loja, então usá-lo no lugar de um plugin de e-mail marketing significa um plugin a menos para atualizar no servidor e uma credencial de envio a menos guardada no banco de dados da loja.

Isso reduz o que fica no seu servidor; não torna sua loja segura. Você continua precisando atualizar o PHP e o software da loja, e sua lista de clientes passa a ficar também no Tellnod, então é justo perguntar a qualquer fornecedor como ele a protege. A página de segurança explica como o Tellnod cuida dos envios e dos dados. Para testar, conecte o Tellnod ao Claude ou ao ChatGPT; nada é enviado até você tocar em Confirm no cartão de aprovação.

Perguntas frequentes#

O que é PHP2Shell?

PHP2Shell é o nome que pesquisadores usam para CVE-2026-109618 e CVE-2026-109619, duas falhas críticas no PHP que podem permitir executar código em um servidor web sem login. O projeto PHP as corrigiu em 21 de outubro de 2026 S1S6.

Minha loja WooCommerce foi afetada?

O WooCommerce roda no WordPress, que é uma aplicação PHP S7, então ele está no escopo, a menos que o servidor já use PHP 8.5.12, 8.4.27, 8.3.36, 8.2.35 ou um pacote corrigido da hospedagem S1. Na dúvida, pergunte à hospedagem.

Uma loja na Shopify ou na Nuvemshop foi afetada?

Em uma plataforma totalmente hospedada, você não roda PHP no seu próprio servidor, então não há PHP para você atualizar. Qualquer site separado que você mesmo hospeda, como um blog em WordPress, ainda precisa ser verificado.

Um plugin de segurança ou um firewall basta?

Não. O ataque pode começar antes de qualquer código da loja ou plugin rodar, e o projeto PHP diz que atualizar é a única escolha segura S1. A CISA cita o firewall de aplicação web apenas como medida temporária enquanto você corrige S3.

A atualização de 21 de outubro também corrige o CVE-2026-115560?

Não. O CVE-2026-115560 é um problema separado divulgado em 23 de outubro de 2026, com correção prevista para a próxima versão regular. Até lá, o projeto PHP recomenda session.upload_progress.enabled = 0 S2.

Fontes#

  1. [S1] PHP: Security advisory: critical remote code execution vulnerabilities, update now, consultado
  2. [S2] PHP: Informational advisory: session upload progress, consultado
  3. [S3] CISA: Critical vulnerabilities in PHP require immediate patching, consultado
  4. [S4] CISA: Known Exploited Vulnerabilities catalog, consultado
  5. [S5] Rapid7: CVE-2026-109618 and CVE-2026-109619, critical unauthenticated remote code execution in PHP, consultado
  6. [S6] Datadog Security Labs: PHP2Shell, critical vulnerabilities in PHP, consultado
  7. [S7] WordPress.org: Requirements, consultado
  8. [S8] ANPD: Comunicado de incidente de segurança (CIS), consultado