
PHP-ocalipse: Como dois graves bugs da web quase queparam a internet
Na quarta-feira, uma tecnologia web de código aberto com décadas de existência chamada PHP quase quebrou a internet, devido a duas vulnerabilidades que permaneceram latentes por anos até que pesquisadores recentemente descobriram uma forma de explorá-las.
As falhas foram batizadas de PHP2Shell, oficialmente designadas como CVE-2026-109618 e CVE-2026-109619. Em termos simples, as falhas permitem que qualquer pessoa que saiba como explorá-las invada um sistema online que execute PHP, como um site ou um servidor voltado para a internet, sem precisar de senha para acessar ou modificar seus dados.
Tratando-se de situações, esta foi bastante considerável, forçando milhões de pessoas ao redor do mundo a correrem para aplicar patches em seus sistemas antes que hackers mal-intencionados pudessem explorá-los.
A PHP Foundation, que mantém o software web PHP, lançou publicamente na quarta-feira patches que corrigiram as falhas, os quais, quando instalados, evitam que servidores voltados para a web sejam atacados. A fundação já havia dado a algumas das maiores empresas de internet e provedores de hospedagem web que dependem do PHP uma vantagem inicial para a aplicação dos patches.
Graças a semanas de conversas de bastidores e coordenação cuidadosa em toda a indústria, o mundo — até agora — evitou amplamente a exploração em massa na internet. A partir de quarta-feira, governos começaram a instar cidadãos e empresas com sites a tomarem medidas para mitigar os riscos de sua parte. Uma ampla gama de indústrias fechou seus sites e tirou serviços do ar para corrigir seus sistemas. Bancos, varejistas, sites de jogos, lojas online, hospitais e algumas agências governamentais desligaram seus servidores para evitar ataques.
Mas pesquisadores de segurança alertam que a situação ainda não terminou e que um grande número de sistemas ao redor do mundo permanece sem correção e vulnerável a invasões e roubo de dados.
Também é improvável que este seja o último grande susto com softwares de internet, com alguns esperando que o advento da inteligência artificial descubra rapidamente vulnerabilidades até então desconhecidas que estão à espera de serem encontradas e exploradas.
Pesquisadores de segurança da Calif encontraram duas falhas no PHP, uma linguagem de programação amplamente utilizada em todo o mundo para a criação de sites e aplicativos web, tanto na internet quanto hospedados localmente em redes corporativas, como intranets e sites internos.
O PHP é de código aberto, o que significa que é gratuito e está disponível para ser usado por qualquer pessoa por quase qualquer motivo. Como tal, tornou-se uma das linguagens de programação web mais populares e amplamente utilizadas na internet hoje em dia.
As duas falhas foram descobertas pela primeira vez em 2024, mas não foram consideradas exploráveis na época e não receberam patches. Pesquisadores de segurança recentemente encontraram uma maneira de explorá-las, o que os levou a alertar os criadores do software para que fossem corrigidas.
A Calif alertou a PHP Foundation, que iniciou um período de correção das falhas e divulgação coordenada. A fundação fez isso oferecendo as informações e os patches sobre os problemas de segurança sob um embargo rigidamente guardado — mantido essencialmente em sigilo até um prazo específico — para dar às grandes empresas a oportunidade de se anteciparem na instalação das correções.
O PHP2Shell é bastante sério porque pode ser explorado remotamente pela internet e sem que a vítima precise clicar em um link ou abrir um arquivo. Isso é conhecido como execução remota de código, e é um dos tipos de falha mais prejudiciais de explorar, pois pode conceder a um hacker em qualquer lugar do mundo controle efetivamente total sobre um sistema afetado e sem patches.
Pior ainda, essas falhas específicas do PHP tornam possível invadir qualquer sistema sem patches na internet sem precisar de senha ou de qualquer outra credencial pela internet, o que é conhecido como acesso não autenticado.
Isso permitiria que um hacker mal-intencionado instalasse malware no computador, como para roubar dados ou simplesmente para manter uma presença de longo prazo à qual possa retornar mais tarde.
As falhas são particularmente arriscadas porque o PHP é um software extremamente popular, em parte porque é gratuito e relativamente fácil de usar, mas também porque existe há décadas. Cerca de 70% da internet voltada para a web depende do PHP, embora seu uso venha diminuindo lentamente ao longo dos anos em favor de linguagens de programação mais novas e seguras.
Dada a sua popularidade, alguns dos sites mais populares do mundo são executados em softwares web que dependem de PHP, como o WordPress (que hospeda o TechCrunch!), bem como Drupal, Joomla e MediaWiki, que alimenta a gigante enciclopédia online Wikipedia.
O PHP é apenas uma entre muitas tecnologias antigas, mas funcionais, que sobreviveram a ondas da internet e gerações e que hoje são tão onipresentes que se parecem com a cola que mantém grande parte da internet unida. Muitas vezes, essas ferramentas são desenvolvidas por mantenedores de código aberto, que não são pagos pelo trabalho que realizam e, portanto, não podem pagar por auditorias de segurança de terceiros — mas ainda assim são amplamente utilizadas por empresas que não contribuem financeiramente para os projetos.
Pesquisadores de segurança da Calif receberam o crédito por descobrir as falhas no início deste ano como parte de uma auditoria de segurança do código do PHP. A Calif estava participando da iniciativa Hack the Planet da criadora de modelos de IA OpenAI e da gigante de segurança em nuvem Wiz, que subsequentemente verificou as explorações de prova de conceito que a Calif criou.
No relatório da Calif (que inclui quadrinhos — é ótimo, confira), os pesquisadores explicaram que a IA foi usada para auxiliar na exploração da falha, mas que a maior parte do trabalho dependeu do conhecimento que os pesquisadores já possuíam e de que conheciam bem a base de código e o histórico de exploração do PHP.
“Nenhum modelo é simplesmente capaz de desenterrar ‘todas as falhas’ com simples comandos. Pelo menos por enquanto”, escreveu a Calif.
Apesar dos esforços para manter os detalhes das falhas em sigilo até quarta-feira, parece que houve alguma exploração do PHP2Shell antes do lançamento dos patches.
A Amazon, que tem enorme visibilidade sobre ameaças online devido ao seu tamanho e escala, disse em uma postagem no blog que detectou a exploração do PHP2Shell cerca de uma semana antes de os patches do PHP estarem disponíveis, sugerindo que alguém, em algum lugar, sabia como explorar as falhas antes que seus detalhes estivessem amplamente disponíveis. A Amazon afirmou que não estava claro como o hacker tomou conhecimento das vulnerabilidades, mas que os defensores deveriam procurar evidências de exploração desde o dia 17 de outubro.
Existem algumas teorias sobre o que aconteceu. Uma vez que uma falha recebe um patch, os detalhes da correção podem se tornar imediatamente evidentes, especialmente se o código — como no caso do PHP — for de código aberto, tornando-o público e inspecionável. Explorar as falhas pode não ser fácil, mas saber onde a falha está e como ela foi corrigida pode permitir que hackers mal-intencionados entendam onde mirar e como desenvolver suas explorações.
É possível que tenha ocorrido um vazamento ou uma falha na comunicação em algum lugar durante o embargo. A comunidade de código aberto é enorme e o controle de informações dessa maneira depende da boa-fé.
Também é possível que hackers tenham descoberto as falhas com antecedência, seja de forma independente ou por meio de espionagem.
A PHP Foundation culpou uma empresa por colocar os patches no ar horas antes do término do período de embargo, o que pode ter dado a alguns invasores uma vantagem inicial caso tenham obtido os detalhes do patch antes dos outros. No entanto, isso não explica a atividade de uma semana detectada pela Amazon.
Pesquisadores dizem que as falhas exigem muito trabalho para se tornarem exploráveis e transformar a falha em uma arma tem sido um desafio — mas não impossível —, o que explica por que ainda não vimos uma escala de exploração em massa.
Mas, no final da sexta-feira, há comprometimentos confirmados e atividade pós-exploração relacionados à falha do PHP, de acordo com as gigantes de segurança Palo Alto Networks e Trail of Bits. Isso significa que a falha foi detectada sendo abusada para invasões e atividade mal-intencionada ativa em um alvo ainda desconhecido.
Ainda é cedo, mas é um sinal encorajador o fato de não ter havido nenhum sinal de exploração em massa — embora ainda não estejamos fora da zona de perigo.
Matthew Prince, executivo-chefe da gigante de segurança e monitoramento de rede Cloudflare, que também possui telemetria sobre uma vasta parcela da internet, disse esta semana que observou um número exponencial de tentativas de explorar as falhas após a divulgação delas. Isso dá uma perspectiva de quão rapidamente atores mal-intencionados buscam abusar das falhas para seus próprios ganhos.
O PHP não é encontrado apenas em servidores web, mas também é usado em ferramentas de desenvolvedor, pacotes de linha de comando e terminal e outros componentes de software usados por roteadores, dispositivos de armazenamento e dispositivos de segurança empresarial, como firewalls e VPNs.
Devemos esperar ver a exploração do PHP2Shell no futuro, à medida que equipes de TI menores e desenvolvedores solos possam ser mais lentos para atualizar. Haverá também um período em que várias empresas que dependem do PHP e o integram em seus próprios produtos e softwares também precisarão atualizá-los.
À medida que mais dispositivos e sistemas forem atualizados, a superfície de ataque diminuirá com o tempo. Mas os efeitos cascata dessas falhas ainda poderão ser sentidos por anos, particularmente em sistemas legados que não têm meios de serem atualizados.
Este foi um daqueles raros dias de paralisação da internet que vi durante meu período como repórter de segurança. Em 2016, uma botnet massiva inundou o registro de internet Dyn com tráfego de lixo, fazendo com que muitos dos principais serviços da web chegassem a uma quase paralisação. Em 2017, a Coreia do Norte usou ferramentas de invasão vazadas do governo dos EUA para infectar o sistema de saúde do Reino Unido com ransomware. E em 2024, uma atualização defeituosa da CrowdStrike desencadeou uma interrupção global massiva, fazendo com que a maioria dos computadores Windows do mundo travasse de uma só vez.
Em todos os aspectos com o PHP2Shell, a internet escapou do que poderia ter sido um dia extremamente doloroso e prejudicial. Mas é improvável que este seja o último grande incidente a atingir a web, e este pode ser o primeiro em uma tendência de incidentes que exploram fragilidades em tecnologias legadas. Muito disso se deve a falhas inerentes em softwares antigos, mas onipresentes, que ainda não foram descobertas, juntamente com ferramentas de IA que estão facilitando a localização de falhas.
O PHP, assim como outras linguagens de programação web e tecnologias de décadas atrás, é “inseguro em termos de memória”, o que significa que ele pode ser atacado por meio de toda uma classe de vulnerabilidades que podem forçar o software a vazar ou expor dados sensíveis do armazenamento de memória do software. A Agência de Segurança Nacional dos EUA afirma que cerca de 75% de todas as vulnerabilidades ativamente exploradas abusam de falhas relacionadas à memória, o que quer dizer que os hackers as utilizam bastante.
Isso tem ajudado a impulsionar uma migração para o uso de linguagens seguras em termos de memória, como Python, Rust e Swift, que não podem ser exploradas da mesma forma que as vulnerabilidades de memória. Como tal, essas linguagens as tornam amplamente imunes a uma ampla faixa de vulnerabilidades que ainda afetam seus predecessores.
Mas isso ainda deixa um pedaço inteiro da internet executando um conjunto de tecnologias, como PHP, codecs de mídia e vídeo, bibliotecas de compactação e outros softwares de décadas atrás — que, quando quebrarem, terão implicações massivas para o resto da web.