Uma falha crítica descoberta em julho de 2026 no navegador Opera GX permitia que qualquer site malicioso instalasse automaticamente um mod personalizado que roubava dados sensíveis — como endereços de Gmail — sem nenhum clique ou aprovação do utilizador. O bug foi corrigido na versão 130.0.5847.89, mas qualquer utilizador que não actualizou continua vulnerável a um ataque zero-click que usa apenas CSS para extrair informações de todas as páginas visitadas.

O que aconteceu no Opera GX

Uma falha crítica no Opera GX — navegador voltado para gamers com milhões de utilizadores no Brasil — permitia que sites maliciosos instalassem automaticamente mods personalizados sem qualquer aprovação do utilizador. Pior: uma vez instalado, o mod injectava CSS em todas as páginas visitadas e conseguia reconstruir o endereço de Gmail da vítima com zero cliques. A falha foi corrigida na versão 130.0.5847.89. Quem não actualizou, segue exposto.

A descoberta foi publicada a 6 de julho de 2026 pelos pesquisadores da zhero_web_security e classificada como P1 — severidade máxima — pelo próprio programa de bug bounty da Opera, que pagou o prémio máximo de US$ 5.000.

Como funcionava o ataque

Os GX Mods são uma funcionalidade popular do Opera GX que permite personalizar temas, wallpapers, sons e até o CSS dos sites que o utilizador visita. Eles são distribuídos como ficheiros .crx — o mesmo formato de extensões do Chrome — mas, teoricamente, sem permissões para executar JavaScript.

O problema estava no pipeline de instalação. O Opera GX descarregava e activava mods automaticamente, sem qualquer diálogo de confirmação. Um site malicioso bastava carregar um iframe invisível apontando para um ficheiro .crx hospedado em servidor controlado pelo atacante. O único sinal era uma pequena notificação abaixo da barra de endereços — geralmente ignorada antes de a vítima perceber.

Essa falha de design já tinha sido identificada em 2023 pelo pesquisador Renwa, que demonstrou como um mod poderia ser escalado para uma extensão completa e usada para falsificar a barra de endereços. A Opera corrigiu aquele ataque específico, mas manteve o mecanismo de auto-instalação intacto. A nova pesquisa explora exactamente esse caminho que ficou aberto.

Exfiltração de dados por CSS

A parte mais sofisticada do ataque não precisava de JavaScript. Mods do Opera GX aplicam CSS em cada página que o navegador abre — não apenas num site. Os pesquisadores chamaram isso de injecção CSS universal.

Com CSS puro é impossível ler directamente o conteúdo de uma página e enviá-lo para fora. Mas é possível extrair dados letra a letra usando um técnica conhecida como XS-Leak (cross-site leak). Para quem quer entender a fundo como essas técnicas de exploração funcionam em aplicações web, vale revisar os mecanismos clássicos de XSS e CSRF. O truque do XS-Leak funciona assim:

  1. O mod carrega regras CSS que testam se um atributo HTML (como um e-mail escondido num campo) começa com determinada letra
  2. Quando o teste é verdadeiro, a regra faz o navegador carregar uma imagem de fundo do servidor do atacante
  3. Centenas de milhares de regras cobrem todas as combinações possíveis
  4. O servidor do atacante reconstrói o valor completo com base nas requests recebidas

No proof-of-concept, os pesquisadores visaram a página myaccount.google.com/contactemail, que carrega o endereço de Gmail em atributos HTML. Foram necessárias cerca de 150 mil regras CSS (para fragmentos de três letras) para reconstruir o endereço completo. A primeira tentativa com fragmentos de quatro letras exigiria 5,6 milhões de regras e 880 MB de CSS — o navegador não aguentou.

A cadeia completa acontecia em segundos: a vítima acede a um site malicioso, o mod instala-se automaticamente, um redirecionamento leva o navegador à página do Google e o CSS já está lá a vazar dados enquanto a página renderiza.

Crash no modo Incognito

Os mesmos pesquisadores documentaram um segundo problema: carregar um ficheiro .crx manipulado enquanto se navega em modo anónimo (Incognito) causava o crash imediato do browser, eliminando todas as tabs abertas. Esse bug afectava tanto o Opera GX como o Opera tradicional. A Opera não mencionou este crash no seu advisory oficial.

Dimensão real do risco

A Opera afirma ter encontrado nenhuma evidência de exploração activa. Mas isso é pouco reconfortante. Trata-se de um ataque zero-click: basta visitar uma página. Não requer phishing, não requer clique em download, não requer permissões. Em targeting — quando o atacante sabe que a vítima usa Opera GX — a probabilidade de sucesso era alta.

Segundo a análise da Threat Modeling, a combinação de auto-instalação silenciosa com XSS universal via CSS cria um vector de exfiltração que foge dos modelos tradicionais de detecção. Ferramentas de segurança monitoram JavaScript e pedidos de rede suspeitas — não regras CSS em formato .crx instalado nativamente pelo browser.

Ainda assim, há um factor limitante: o ataque é complexo e demorado de montar para cada alvo específico. Diferente de um exploit genérico, o mod malicioso precisa ser calibrado para a estrutura HTML da página que se quer atacar. Isso reduz o interesse para campanhas massivas, mas não para ataques direccionados.

O que fazer agora

A actualização é directa e obrigatória para qualquer utilizador de Opera GX:

  • Actualize para a versão 130.0.5847.89 ou superior
  • Verifique a versão em opera://about
  • Revise os mods instalados e remova qualquer que não reconheça

Não há workaround possível antes do patch — a falha não exigia interacção do utilizador, então nenhuma mudança de configuração a impediria. Quem ainda está numa versão anterior está completamente vulnerável a qualquer site que carregue um iframe apontando para um mod malicioso.

Este caso também levanta questões mais amplas sobre o modelo de confiança em recursos personalizados de navegadores. Recentemente, o BioShocking demonstrou como o próprio navegador pode ser explorado para roubar credenciais sem que o utilizador perceba. As GX Mods foram desenhadas como ferramentas cosméticas, mas o pipeline de distribuição tratou-as com menos rigor do que extensões convencionais. Quando uma funcionalidade popular dispensa confirmação de instalação, ela é um backdoor à espera de descoberta.

Referências