108 extensões maliciosas no Chrome roubam sessões do Telegram e identidades Google

Pesquisadores da Socket identificaram 108 extensões maliciosas na Chrome Web Store conectadas a uma infraestrutura de comando e controle (C2) compartilhada, hospedada no domínio cloudapi[.]stream. As extensões acumulam mais de 20 mil instalações e seguem ativas.

As 108 extensões estão publicadas sob cinco identidades de desenvolvedores distintas e enviam credenciais roubadas, identidades de usuários e dados de navegação para servidores controlados pelo mesmo operador. A campanha cobre categorias diversas, como clientes do Telegram, jogos de slot machine e keno, ferramentas para YouTube e TikTok, tradutor de texto e extensões de utilidade de página.

A fachada legítima é parte do esquema. Quem instala um cliente Telegram vê uma interface de chat funcional. Quem instala um jogo consegue jogar. O código malicioso roda em segundo plano, conectado ao C2.

Quatro das 108 extensões maliciosas na Chrome Web Store: Telegram Multi-account, Black Beard Slot Machine, Page Locker e InterAlt, todas publicadas sob identidades distintas mas conectadas à mesma infraestrutura. Imagem: Socket.

Extensão rouba sessão ativa do Telegram a cada 15 segundos

A ameaça mais grave da campanha é a extensão Telegram Multi-account (ID: obifanppcpchlehkjipahhphbcbjekfa). Ela injeta um script na página web.telegram.org antes de qualquer interação do usuário e extrai o token de autenticação da sessão ativa diretamente do localStorage do navegador.

Esse token é enviado imediatamente ao C2 e reenviado a cada 15 segundos enquanto a aba estiver aberta. Os dados chegam ao endpoint tg[.]cloudapi[.]stream/save_session.php via requisição POST.

A extensão também aceita um comando remoto que apaga o localStorage da vítima, substitui pelo conteúdo enviado pelo servidor do atacante e força o recarregamento do Telegram. O operador consegue trocar a conta ativa no navegador por qualquer outra sessão sem que o usuário perceba, sem exigir senha ou código de autenticação em dois fatores.

Registro no Shodan mostra o IP 144.126.135.238, servidor da Contabo GmbH que hospeda o backend compartilhado por todas as 108 extensões. O hostname 100ballov.com.ua aponta para origem ucraniana. Imagem: Socket.

54 extensões capturam identidade Google via OAuth2

Cinquenta e quatro das 108 extensões capturam a identidade Google do usuário no primeiro clique no botão de login. O código é idêntico em todas elas. A extensão usa a API chrome.identity para obter um token OAuth2 válido, o que gera uma janela de login padrão do Google, sem nenhum sinal de alerta visível.

A extensão então usa esse token para consultar o endpoint oficial de perfil do Google. O que chega ao servidor do atacante é um registro permanente com e-mail, nome completo, URL da foto de perfil e o campo sub, basicamente um identificador estável de conta que não muda quando o usuário altera senha ou endereço de e-mail.

Backdoor abre URLs arbitrárias a cada inicialização do Chrome

Quarenta e cinco extensões incluem uma função chamada loadInfo() que roda automaticamente toda vez que o Chrome é iniciado. Ela envia o ID da extensão ao C2 e abre o endereço retornado em uma nova aba caso a resposta inclua um campo infoURL. 

A página do Rodeo Games Studio, um dos cinco publicadores identificados pela Socket, usa e-mail do Gmail como contato de suporte. Imagem: Socket.

Sem interação do usuário e sem restrição sobre qual URL pode ser carregada. Esse canal funciona independentemente de o usuário ter aberto a extensão alguma vez.

Em duas delas, Page Locker e Page Auto Refresh, a função usa sintaxe diferente do restante do código minificado. A Socket avalia que o loadInfo() foi injetado posteriormente, em extensões já existentes que foram adquiridas ou reaproveitadas pelo operador.

YouSide, TikTok e Telegram têm proteções de segurança removidas

Cinco extensões usam a API declarativeNetRequest do Chrome para remover cabeçalhos de segurança antes que as páginas terminem de carregar, incluindo Content-Security-Policy e X-Frame-Options, que impedem conteúdo externo de ser embutido ou manipulado. As extensões YouSide e SideYou fazem isso com o YouTube.

Todas as 108 extensões compartilham a mesma infraestrutura de comando e controle, hospedada em um único servidor.

A Web Client for TikTok aplica o mesmo procedimento com o TikTok e injeta conteúdo do domínio multiaccount[.]cloudapi[.]stream diretamente em todas as páginas visitadas. Tanto a Teleside quanto a YouSide exibem um banner de apostas por cima da interface prometida ao usuário.

Infraestrutura e comentários em russo apontam para operação unificada

Todas as 108 extensões compartilham o mesmo backend, hospedado no IP 144[.]126[.]135[.]238, um VPS da Contabo GmbH. O domínio cloudapi[.]stream foi registrado em abril de 2022 pela Hosting Ukraine LLC.

A evidência mais forte de autoria unificada vem dos projetos do Google Cloud. Os cinco nomes de publicadores na Chrome Web Store, Yana Project, GameGen, SideGames, Rodeo Games e InterAlt, usam apenas dois projetos, identificados pelos IDs 1096126762051 e 170835003632. Os 56 client IDs OAuth2 únicos das 54 extensões de roubo de identidade apontam todos para esses dois projetos.

Extensões maliciosas conseguem roubar sessões ativas sem exigir senha ou autenticação em dois fatores.

Comentários em russo aparecem no código de autenticação e de roubo de sessão. Três dos sete e-mails registrados contêm variantes do mesmo nome, nadejdinv, viktornadiezhdin e slava.nadejdin.kiev, associados a 30 extensões.

O portal topup[.]cloudapi[.]stream descreve um negócio de monetização de extensões Chrome. A existência de um portal de pagamento e de um sistema de ID por vítima aponta para o modelo de Malware-as-a-Service. Identidades e sessões roubadas estão acessíveis a compradores com acesso ao backend.

O que fazer se você tem alguma dessas extensões instalada

Usuários do Telegram Multi-account que acessaram o Telegram Web com a extensão ativa devem encerrar todas as sessões remotas pelo aplicativo móvel, em Configurações > Dispositivos > Encerrar todas as outras sessões. Quem fez login com conta Google em qualquer extensão de jogos ou sidebar deve revisar acessos de terceiros em myaccount.google.com/permissions e revogar entradas desconhecidas.

A Socket enviou pedidos de remoção à equipe de segurança da Chrome Web Store e ao Google Safe Browsing. As extensões seguiam ativas no momento da publicação do relatório.

Acompanhe o TecMundo nas redes sociais. Para mais notícias de segurança e tecnologia, inscreva-se em nossa newsletter e canal do YouTube.