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




