Ataque de um clique no GitHub.dev rouba tokens OAuth com acesso total a repositórios

Pesquisador divulga falha de um clique no GitHub.dev que rouba tokens OAuth com permissão de leitura e escrita sobre todos os repositórios da vítima, públicos e privados. Microsoft já reconheceu o bug.

Pesquisadores divulgaram uma falha de um clique no GitHub.dev capaz de roubar tokens OAuth com acesso total a todos os repositórios da vítima — incluindo privados. O bug, reportado em 2 de junho de 2026, abusa de extensões maliciosas do Visual Studio Code e foi reconhecido pela Microsoft, que afirma estar trabalhando em uma correção.

O que aconteceu

O pesquisador de segurança Ammar Askar tornou pública uma cadeia de ataque que transforma um simples clique em link em comprometimento total da conta GitHub de um desenvolvedor. O alvo é o GitHub.dev, ambiente leve de VS Code rodado dentro do sandbox do navegador para permitir edição rápida de repositórios sem instalar nada localmente.

Para que o GitHub.dev funcione, o github.com envia via POST um token OAuth ao ambiente do navegador, que é usado para interagir com a API em nome do usuário. O problema, segundo o pesquisador, é que esse token não é escopado ao repositório aberto: ele carrega permissão de leitura e escrita sobre todos os repositórios da vítima — públicos e privados.

Askar comunicou o bug ao GitHub em 2 de junho de 2026 e, uma hora depois, divulgou os detalhes publicamente, justificando a decisão pelo histórico da Microsoft em tratar bugs relacionados ao VS Code. A empresa já reconheceu a falha e diz estar preparando a correção.

Como o ataque funciona

A cadeia de exploração combina três elementos: a presença de um token OAuth amplo no ambiente GitHub.dev, a possibilidade de carregar extensões locais sem prompts de confiança e a injeção de comandos via webview não confiável. O exploit roda JavaScript dentro de uma webview, simula teclas (eventos de keydown) na janela principal do editor, abre a Command Palette com Ctrl+Shift+P e instala uma extensão maliciosa controlada pelo atacante.

A extensão extrai o token OAuth enviado ao github.dev e usa a API do GitHub para enumerar todos os repositórios privados aos quais a vítima tem acesso, abrindo caminho para roubo de código-fonte, segredos hardcoded, chaves de CI e até inserção de backdoors. O abuso explora ainda o recurso de local workspace extensions, que permite instalar uma extensão sem diálogo adicional de confiança desde que ela esteja na pasta .vscode/extensions do workspace, contornando o publisher trust check.

“Basta clicar em um link para que um atacante roube um token GitHub capaz de ler e escrever em seus repositórios, inclusive os privados”, afirmou o pesquisador Ammar Askar.

O pesquisador detalha que extensões podem registrar atalhos de teclado próprios via package.json, o que torna trivial encadear keybindings que disparam comandos sensíveis — como o de instalar extensões pulando o check de publisher confiável.

Quem é afetado

Segundo a Microsoft, o problema atinge especificamente o GitHub.dev — o ambiente VS Code rodando dentro do navegador. Alexandru Dima, partner software engineering manager da Microsoft, afirmou que o VS Code Desktop não é impactado por esta cadeia de exploração.

  • Desenvolvedores que abrem repositórios pelo botão “.” (que invoca github.dev) ou pelo subdomínio github.dev;
  • Equipes de engenharia com repositórios privados contendo segredos, infraestrutura como código ou pipelines críticos;
  • Organizações em que o token de um único colaborador dá acesso a vasto inventário de código sob escopo de leitura/escrita global;
  • Projetos open-source mantidos por contribuidores individuais cujo comprometimento abre porta para supply-chain attacks downstream.

Análise

O caso reforça uma tendência preocupante: a fronteira entre IDE e navegador vem se diluindo, e cada nova capacidade colocada no editor web amplia drasticamente a superfície de ataque sobre a identidade do desenvolvedor. Tokens OAuth com escopo amplo demais — apesar de previstos para ergonomia — viram munição quando emparelhados a um vetor de injeção em uma webview que originalmente não deveria ser confiável.

Vale recordar paralelos recentes. Em 2023 e 2024, a comunidade já havia documentado abusos de extensões maliciosas no Marketplace do VS Code, com extensões impersonando ferramentas legítimas para roubar credenciais. Em 2025, vimos campanhas de supply-chain que comprometeram pacotes npm exatamente para alcançar pipelines com tokens persistentes. O ataque agora descrito é uma evolução natural dessa lógica: em vez de atacar a cadeia de pacotes, ataca diretamente o editor onde o token nasce com permissões generosas.

A liberação pública uma hora após o report ao GitHub é incomum para um bug com tamanho potencial de dano. Askar justifica pela morosidade histórica da Microsoft em endereçar vulnerabilidades de VS Code — uma decisão controversa, mas que coloca pressão imediata para uma resposta acelerada e melhora prática do escopo de tokens emitidos pelo github.dev.

Recomendações práticas

  • Evite abrir links desconhecidos que apontem para github.dev e para URLs contendo workspaces VS Code (extensões .vscode/extensions) até que a Microsoft publique a correção;
  • Revise tokens OAuth e PATs ativos em sua conta GitHub e revogue qualquer um com escopo mais amplo do que o necessário;
  • Em ambientes corporativos, aplique GitHub Enterprise SSO, restrinja acesso a repositórios privados por organização e habilite alertas de uso anômalo de tokens;
  • Configure regras de fine-grained personal access tokens em vez de classic tokens, impondo escopo por repositório;
  • Monitore logs de auditoria do GitHub para enumeração massiva de repositórios via API e clones inesperados;
  • Promova hygiene de extensões: instale apenas extensões assinadas por publishers confiáveis e revise periodicamente as instaladas no perfil corporativo do VS Code.

Fonte: The Hacker News

Social Media Auto Publish Powered By : XYZScripts.com