CiberSegurançaNews
Tendência

Extensão para Twitch expõe tokens OAuth de mais de 30 mil usuários ao encaminhá-los para infraestrutura ligada a serviço russo de bots

Pesquisadores descobriram que a Twitch Enhanced Viewer | JeetBot enviava tokens de sessão dos usuários para servidores proxy controlados pelo operador da extensão. As credenciais não eram simples tokens de reprodução: poderiam permitir ações vinculadas à conta. Chrome e Firefox somavam cerca de 30,5 mil instalações quando a pesquisa foi divulgada.

Uma extensão criada para melhorar a experiência de assistir à Twitch acabou transformando uma credencial sensível da conta em parte do tráfego enviado para servidores de terceiros.

Pesquisadores da empresa de segurança Socket descobriram que a extensão Twitch Enhanced Viewer | JeetBot capturava tokens OAuth utilizados pela Twitch e os encaminhava para uma infraestrutura de proxy relacionada ao próprio operador da extensão, associado a um serviço comercial russo de bots para plataformas de streaming.

O caso chama atenção não apenas pelo número de instalações, mas pelo tipo de informação transmitida. Segundo os pesquisadores, o valor enviado não era simplesmente uma credencial limitada à reprodução do vídeo: tratava-se de um token OAuth vinculado à conta do usuário, capaz de autorizar determinadas ações sem exigir novamente senha ou autenticação multifator.

No momento da divulgação inicial, a extensão possuía aproximadamente 30 mil usuários no Chrome e mais de 500 no Firefox.

A extensão prometia melhorar a experiência na Twitch

A Twitch Enhanced Viewer | JeetBot era apresentada como uma ferramenta legítima de aprimoramento da plataforma.

Entre suas funções estavam bloqueio de anúncios, reprodução em alta qualidade, contorno de determinadas limitações regionais e coleta automática de recompensas e Channel Points.

A extensão também oferecia integração com o serviço JeetBot.

O problema estava escondido no funcionamento técnico utilizado para entregar parte dessas funcionalidades.

Para manipular determinadas solicitações de reprodução da Twitch, a extensão redirecionava requisições destinadas à infraestrutura da plataforma por meio de servidores proxy operados por terceiros.

Até aí, o uso de um proxy não seria necessariamente malicioso.

O problema era o que seguia junto com a solicitação.

O token OAuth do usuário também era enviado

A análise do código mostrou que um content script da extensão conseguia observar o cabeçalho Authorization utilizado pelo próprio cliente web da Twitch.

Esse valor era encaminhado internamente para o componente responsável pelo funcionamento da extensão.

Depois, o token era extraído e armazenado.

Quando determinadas solicitações de playlist eram redirecionadas para o proxy, a extensão acrescentava o token à própria URL por meio de um parâmetro chamado:

auth

Na prática, uma credencial ativa da sessão saía do ambiente da Twitch e chegava a uma infraestrutura controlada pelo operador da extensão.

O token podia acabar registrado nos logs do servidor

Enviar credenciais em parâmetros de URL é uma prática especialmente problemática.

Servidores web e proxies normalmente registram as URLs solicitadas em seus logs.

Isso significa que um endereço semelhante a:

proxy.exemplo/...&auth=TOKEN

pode fazer com que o token fique registrado automaticamente.

Mesmo que o objetivo principal do servidor fosse apenas processar o streaming, a credencial poderia permanecer armazenada na infraestrutura.

Esse comportamento é diferente de simplesmente usar um token dentro de uma conexão autenticada diretamente com a Twitch.

Não era apenas um token para assistir ao vídeo

Essa é uma das descobertas mais importantes da investigação.

Serviços de streaming utilizam diferentes tipos de tokens para finalidades diferentes.

A reprodução de um vídeo pode utilizar credenciais específicas relacionadas ao acesso à playlist.

Mas o token encontrado pela Socket era diferente.

Os pesquisadores verificaram o valor utilizando o próprio mecanismo de validação da Twitch e concluíram que se tratava de um token OAuth associado à conta.

Isso amplia consideravelmente o risco.

Um token OAuth pode funcionar como uma chave temporária da conta

Quando um usuário faz login em um serviço, ele não envia sua senha a cada clique.

Depois da autenticação, o sistema normalmente cria tokens que representam aquela sessão.

Enquanto forem válidos, esses tokens podem permitir que aplicativos ou sessões autorizadas realizem determinadas ações em nome do usuário.

Dependendo do escopo concedido, isso pode incluir acesso a funcionalidades como:

chat;

whispers;

configurações da conta;

recursos relacionados à sessão.

Portanto, roubar um token pode permitir determinadas ações sem conhecer a senha original do usuário.

MFA não resolve necessariamente uma sessão já autenticada

Esse detalhe também é importante.

A autenticação multifator protege principalmente o processo de autenticação.

Mas, depois que uma sessão já foi estabelecida, o serviço precisa reconhecer o usuário sem pedir um novo código MFA constantemente.

É aí que entram tokens e cookies de sessão.

Se um atacante consegue obter uma credencial válida já autenticada, em determinadas situações pode reutilizá-la sem passar novamente pelo processo normal de login.

É o motivo pelo qual ataques contra:

cookies;

tokens OAuth;

session tokens

se tornaram tão relevantes.

A extensão enviava o token para infraestrutura relacionada ao JeetBot

A Socket vinculou a extensão ao JeetBot, serviço comercial voltado à automação e bots para plataformas como Twitch, Kick e VK Live.

A infraestrutura analisada incluía domínios utilizados para proxy e outros componentes necessários ao funcionamento da extensão.

Isso significa que o caso não envolve simplesmente uma credencial enviada acidentalmente a um serviço neutro da internet.

O token era encaminhado para infraestrutura relacionada ao próprio ecossistema operacional da extensão.

Versões antigas eram ainda mais explícitas

A análise histórica do código revelou algo ainda mais preocupante.

Versões anteriores da extensão, incluindo builds da série 4.x distribuídas no início de 2026, utilizavam outro mecanismo.

Em vez de anexar o token apenas às solicitações de proxy, o código realizava uma requisição específica para um endpoint:

set-token

O token era enviado diretamente por POST.

Também existiam endpoints alternativos hospedados em infraestrutura da Deno.

Posteriormente, o comportamento foi modificado.

Nas versões mais recentes analisadas, o token passou a viajar como parâmetro nas URLs encaminhadas pelo proxy.

O comportamento não surgiu apenas na versão atual

Isso aumenta a janela potencial de exposição.

A pesquisa indica que o tratamento inadequado das credenciais não estava restrito a uma atualização isolada publicada poucos dias antes da descoberta.

Existiam mecanismos de transmissão do token em versões anteriores.

Por isso, simplesmente olhar para o código mais recente não conta toda a história.

Em investigações de extensões, o histórico de versões pode ser tão importante quanto a versão instalada atualmente.

Dez canais russos recebiam tratamento diferente

Os pesquisadores também encontraram uma característica bastante incomum no código.

A extensão possuía uma lista codificada de dez canais russos da Twitch para os quais o token era removido antes do encaminhamento.

Para esses canais específicos, a requisição passava pelo proxy sem incluir a credencial.

Para outros canais, o token poderia ser enviado normalmente.

A razão técnica ou operacional para essa exceção não ficou totalmente esclarecida publicamente.

Mas a existência da lista reforçou o interesse dos pesquisadores sobre o funcionamento interno da extensão.

Aproximadamente 30,5 mil instalações estavam potencialmente expostas

Quando a pesquisa foi publicada, a extensão possuía cerca de:

30.000 usuários no Chrome.

No Firefox, havia aproximadamente:

550 usuários.

Isso coloca o total em torno de 30,5 mil instalações.

Por isso, afirmar “quase 31 mil usuários” é razoável como arredondamento.

Mas existe uma distinção essencial:

30,5 mil instalações não significam 30,5 mil contas comprovadamente comprometidas.

O número representa a base potencialmente exposta ao comportamento identificado.

Não existe evidência pública de que todas essas contas tenham sido efetivamente acessadas por terceiros.

“Tokens expostos” é diferente de “30 mil contas invadidas”

Essa diferença precisa aparecer com clareza.

Os pesquisadores demonstraram que a extensão transmitia credenciais para infraestrutura externa.

Isso cria a possibilidade de reutilização dessas credenciais.

Mas não foi apresentada evidência de que o operador tenha utilizado todos os tokens para assumir o controle das contas.

Portanto, uma manchete como:

“Hackers invadiram 30 mil contas da Twitch”

seria incorreta com as informações disponíveis.

O problema comprovado está na exposição e transmissão indevida das credenciais.

A extensão estava nas lojas oficiais

Outro aspecto preocupante é o canal de distribuição.

A Twitch Enhanced Viewer | JeetBot não precisava ser instalada manualmente através de um arquivo encontrado em fórum obscuro.

Ela estava disponível nas lojas oficiais dos navegadores.

A versão para Chrome estava publicada na Chrome Web Store, enquanto uma versão equivalente estava disponível no catálogo de complementos do Firefox.

No momento em que a investigação foi divulgada, ambas ainda podiam ser encontradas nas respectivas lojas.

Isso ajuda a explicar como a extensão alcançou dezenas de milhares de instalações.

Estar na loja oficial não transforma uma extensão em software completamente seguro

Google e Mozilla possuem processos de análise e mecanismos para detectar comportamento malicioso.

Mas extensões são programas relativamente complexos.

Elas podem:

ler páginas;

interceptar requisições;

modificar conteúdo;

acessar determinados domínios;

redirecionar tráfego.

Além disso, uma extensão legítima pode mudar de comportamento após uma atualização.

Por isso, a presença em uma loja oficial reduz alguns riscos de distribuição, mas não funciona como garantia absoluta de segurança.

As permissões concedidas às extensões são extremamente poderosas

Esse episódio ilustra um problema estrutural dos navegadores modernos.

Extensões podem receber acesso profundo à navegação.

Dependendo das permissões concedidas, conseguem observar ou modificar informações dentro das páginas e controlar solicitações de rede.

Para um bloqueador de anúncios ou ferramenta de streaming, algumas dessas permissões podem parecer justificáveis.

Mas a mesma capacidade necessária para oferecer uma função legítima também pode permitir:

coleta de informações;

redirecionamento de tráfego;

captura de tokens;

manipulação de páginas.

A fronteira entre funcionalidade e abuso depende do que o código faz com esse acesso.

A extensão aparentemente fazia aquilo que prometia — e isso torna o caso mais perigoso

Muitas extensões maliciosas são simples disfarces.

Prometem uma calculadora, VPN ou ferramenta de produtividade, mas praticamente não oferecem a função anunciada.

Esse caso é diferente.

A Twitch Enhanced Viewer oferecia recursos reais.

Isso aumenta a confiança do usuário.

Uma pessoa instala.

A função funciona.

Ela continua usando.

E não possui razão óbvia para suspeitar de algo acontecendo em segundo plano.

Essa é uma das razões pelas quais extensões funcionais podem permanecer instaladas durante muito tempo.

O navegador está virando um dos principais alvos para roubo de sessões

Durante anos, o foco da segurança de endpoints esteve principalmente em arquivos executáveis.

Hoje, grande parte da vida digital acontece dentro do navegador.

E-mail.

Banco.

Cloud.

Redes sociais.

Sistemas empresariais.

Ferramentas de inteligência artificial.

Quando um usuário autentica nesses serviços, o navegador passa a carregar uma coleção extremamente valiosa de:

cookies;

tokens;

sessões;

credenciais.

Para um atacante, comprometer o navegador pode ser mais eficiente do que instalar malware tradicional no sistema operacional.

Extensões ocupam uma posição privilegiada nesse cenário

Uma extensão instalada voluntariamente pode estar exatamente onde o atacante gostaria de estar:

dentro do navegador autenticado.

Ela não precisa necessariamente roubar a senha.

Pode observar o que acontece depois que o usuário já fez login.

É justamente por isso que permissões de extensões merecem ser tratadas com o mesmo cuidado concedido a aplicativos instalados no computador.

A recomendação mais importante é invalidar as sessões

Remover a extensão interrompe o comportamento futuro.

Mas existe um detalhe fundamental:

isso não invalida automaticamente um token que já saiu do navegador.

Por isso, usuários que utilizaram a Twitch Enhanced Viewer | JeetBot devem considerar o token potencialmente exposto.

A resposta mais segura é remover a extensão e encerrar as sessões existentes da Twitch, fazendo posteriormente um novo login.

Quando as sessões anteriores são invalidadas, os tokens associados deixam de funcionar.

Apenas trocar a senha pode não ser suficiente em todos os cenários

O objetivo principal é invalidar as credenciais de sessão já emitidas.

Por isso, o usuário deve utilizar as opções da Twitch para desconectar sessões e dispositivos existentes, além de revisar aplicativos conectados à conta.

Depois:

realizar novo login;

manter MFA habilitado;

revisar atividade suspeita.

Isso cria novos tokens e reduz a possibilidade de reutilização das credenciais anteriormente transmitidas.

É importante verificar whispers e alterações na conta

Como o token poderia fornecer acesso a recursos vinculados à conta, usuários afetados também devem observar atividades que não reconheçam.

Isso inclui mensagens enviadas sem autorização, alterações de configurações e outras ações inesperadas.

Não significa que essas ações necessariamente aconteceram.

É uma medida de precaução diante de uma credencial que saiu do ambiente esperado.

Não há indicação de que a Twitch tenha sido invadida

Esse é outro ponto fundamental.

A investigação não descreve uma invasão à infraestrutura central da Twitch.

O problema estava em:

uma extensão de terceiros instalada no navegador do usuário.

A Twitch continuava emitindo e utilizando seus tokens normalmente.

A extensão tinha acesso suficiente ao navegador para capturar uma credencial utilizada pela sessão e transmiti-la para outro servidor.

Portanto, não se trata de um vazamento dos servidores da Twitch.

Também não significa que Chrome ou Firefox foram hackeados

Da mesma maneira, o problema não representa uma vulnerabilidade no navegador.

A extensão recebeu permissões e utilizou APIs disponíveis para executar suas funções.

A questão está no comportamento do complemento.

Chrome e Firefox foram os canais nos quais ele estava disponível.

Isso é diferente de uma falha no código dos próprios navegadores.

O caso expõe uma fraqueza do modelo de confiança das extensões

O usuário normalmente pensa:

“se está na loja oficial, deve ser seguro.”

Depois observa:

“possui milhares de usuários.”

Em seguida:

“funciona como prometido.”

Esses três elementos produzem confiança.

Mas nenhum deles permite ao usuário comum saber se um token está sendo silenciosamente adicionado a uma solicitação enviada para um servidor externo.

Para descobrir isso, é necessário analisar:

código;

requisições;

permissões;

infraestrutura.

É exatamente o trabalho realizado pelos pesquisadores.

Empresas também precisam prestar atenção

O risco não é limitado a contas pessoais da Twitch.

O mesmo modelo pode aparecer em extensões utilizadas dentro de ambientes corporativos.

Uma extensão com acesso ao navegador pode potencialmente observar sessões autenticadas em:

Microsoft 365;

Google Workspace;

GitHub;

Salesforce;

Slack;

painéis administrativos;

sistemas internos.

Por isso, organizações estão começando a tratar extensões como parte da superfície de ataque dos endpoints.

Não basta gerenciar quais programas estão instalados no Windows.

É necessário saber:

quais extensões estão instaladas no navegador.

O caso JeetBot resume o novo risco do navegador

O usuário não instalou um “ladrão de senhas”.

Instalou uma ferramenta para melhorar a Twitch.

Ela realmente oferecia recursos para melhorar a Twitch.

Mas, ao mesmo tempo, uma credencial capaz de representar a sessão autenticada era enviada para infraestrutura externa.

Essa combinação é precisamente o que torna o episódio relevante.

A segurança digital não depende apenas de evitar arquivos suspeitos enviados por e-mail.

Às vezes, o risco pode estar em um pequeno ícone instalado ao lado da barra de endereços — funcionando normalmente todos os dias enquanto possui acesso privilegiado às sessões mais importantes do usuário.

Artigos relacionados

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Botão Voltar ao topo