Um pesquisador de segurança divulgou o código de exploit de uma vulnerabilidade zero-day no Visual Studio Code (VS Code) que permite a invasores roubar tokens de autenticação do GitHub ao induzir usuários a clicar em um link.
A Microsoft classifica uma falha de software como zero-day quando ela é divulgada publicamente e/ou explorada ativamente sem que exista, no momento, um patch oficial disponível.
Segundo o pesquisador Ammar Askar, em uma publicação feita na terça-feira, essa vulnerabilidade no VS Code permite que invasores instalem extensões maliciosas capazes de roubar tokens OAuth do GitHub quando eles são enviados ao github.dev, a versão baseada em navegador do Visual Studio Code usada para trabalhar em repositórios do GitHub.
O ataque explora o sistema de passagem de mensagens do webview em sandbox do VS Code.
O exploit de prova de conceito que ele também publicou na terça-feira abusa desse mecanismo ao executar JavaScript malicioso dentro de um webview para simular pressionamentos de tecla no editor principal e instalar uma extensão que extrai o token OAuth do GitHub enviado ao github.dev.
Em seguida, a extensão consulta a API do GitHub para listar todos os repositórios privados aos quais a vítima tem acesso.
“Essa funcionalidade é obtida porque o github.com envia por POST um token OAuth para o github.dev, o que permite que ele interaja com o GitHub em seu nome”, disse Askar.
“O token não é limitado ao repositório específico com o qual você interagiu, o que significa que ele tem acesso total a qualquer outro repositório ao qual você também tenha acesso.”
Embora a vulnerabilidade ainda não tenha sido corrigida e também não tenha recebido um identificador CVE, usuários do VS Code podem se proteger apagando os cookies e os dados locais do site do github.dev no navegador.
Para isso, basta clicar no ícone de Configurações na barra de endereços e, depois, acessar Cookies e dados do site > Gerenciar dados do site no dispositivo.
Com isso, ao clicar em links que tentem explorar a falha, o usuário passará a ver o aviso: “A extensão ‘GitHub Repositories’ quer entrar usando o GitHub.”
Askar disse que notificou o GitHub uma hora antes de revelar publicamente a falha e afirmou ter optado pela divulgação imediata por causa de uma experiência negativa anterior com o processo de resposta de segurança da Microsoft, no qual uma falha do VS Code relatada por ele foi corrigida silenciosamente, sem crédito ou reconhecimento do impacto em segurança.
“Isso foi, em grande parte, uma cortesia ao GitHub.
A intenção aqui era a divulgação pública total.
Na minha experiência anterior ao relatar falhas do github.dev, eles dizem que isso está fora do escopo e pedem para reportar ao MSRC.
E, como expliquei no artigo, eu realmente não quero lidar com o MSRC em falhas do VS Code”, acrescentou.
“Para resumir a última vez em que interagi com o MSRC ao relatar uma falha do VS Code, foi uma experiência horrível, na qual eles corrigiram silenciosamente a falha que eu havia apontado, sem qualquer crédito.
Também classificaram o problema como algo sem impacto em segurança.
Como mencionei na publicação, daqui para frente farei divulgação pública completa de qualquer falha de segurança que eu encontrar no VS Code.”
O caso surge na esteira de outra série de zero-days em diferentes produtos da Microsoft divulgados por um pesquisador anônimo que usa o pseudônimo online “Nightmare Eclipse” e que também demonstrou insatisfação com a forma como o Microsoft Security Response Center (MSRC) conduz o processo de divulgação.
Nos últimos meses, Nightmare Eclipse divulgou as falhas zero-day de escalonamento de privilégios BlueHammer, RedSun, GreenPlasma e MiniPlasma, sendo que as duas primeiras já estão sendo exploradas em ataques, além de YellowKey, uma zero-day no Windows BitLocker que permite acesso a unidades protegidas, e UnDefend, outra zero-day que pode ser explorada para bloquear atualizações de definições do Microsoft Defender.
Inicialmente, a Microsoft reagiu às divulgações de Nightmare Eclipse com ameaças de ação legal.
Depois, publicou um post no X informando que trabalharia “com as autoridades policiais, conforme apropriado”, quando “um indivíduo viola a lei e se envolve em atividade maliciosa que causa dano real aos nossos clientes”.
Publicidade
Nossa audiência é formada por analistas, pentesters, decisores e entusiastas que consomem nossas notícias todo dia pelo Site, Newsletter e Instagram. Fale com quem realmente importa para o seu negócio. Anuncie aqui. Saiba mais...