Duas falhas zero-days no GitHub Copilot
2 de Agosto de 2024

O hacker conhecido pelo nick Astrounder, cujo nome real é Marlon Fabiano, descobriu recentemente duas vulnerabilidades de zero-day no GitHub Copilot.

Essas falhas não somente possibilitavam a alteração no comportamento deste modelo de IA, como também expunham dados sensíveis dos desenvolvedores, incluindo a possibilidade de injeção de prompts mal-intencionados que podiam alterar as respostas geradas pela ferramenta.

Criado a partir de uma colaboração entre GitHub e OpenAI, o GitHub Copilot é projetado para ser uma ferramenta de assistência aos usuários de ambientes de desenvolvimento integrados (IDEs) como Visual Studio Code, Visual Studio, Neovim e JetBrains, fornecendo sugestões de código para facilitar o preenchimento automático.

Astrounder destacou que os dois zero-days encontrados permitiam a exfiltração do código fonte do desenvolvedor.

Uma das vulnerabilidades estava relacionada com a injeção direta de prompt, possibilitando a inserção de prompts com intenções maliciosas capazes de modificar as respostas do Copilot e vazar o código-fonte em que o desenvolvedor estivesse trabalhando.

Detalhando a primeira vulnerabilidade, Astrounder explicou que, por meio da utilização de técnicas de ocultação no chat do Copilot, dentro do Visual Studio Code, essa falha explorava a ausência de validação segura nas respostas do modelo.

Através do uso de tags HTML ocultas, era possível fazer com que o Copilot executasse comandos maliciosos sem o conhecimento do usuário, levando ao vazamento de informações confidenciais.

A segunda vulnerabilidade descoberta envolvia a injeção via plugin “@workspace”.

Segundo Astrounder, esse plugin podia ser comandado para ler arquivos dentro do repositório, seguindo instruções ocultas para executar ações não autorizadas.

Uma possível consequência disso seria atacantes apresentando mensagens enganosas aos usuários.

As vulnerabilidades, conforme apontado pelo pesquisador, representavam riscos significativos, permitindo que o GitHub Copilot fosse manipulado para revelar o código-fonte ou o conteúdo de arquivos abertos no VSCode, prejudicando diretamente a confidencialidade dos projetos dos desenvolvedores.

Após a descoberta, Astrounder entrou em contato com o GitHub, que prontamente investigou e corrigiu as vulnerabilidades.

Contudo, segundo as políticas internas do GitHub, não foi registrado um CVE para essas falhas, já que elas foram resolvidas.

Astrounder concluiu enfatizando a importância de não depositarmos confiança cega em serviços baseados em IA, alertando que, em muitos casos, pode haver elementos manipuláveis maliciosamente inseridos nos processos, além do próprio modelo de linguagem.

Publicidade

Não compre curso de Pentest

Em 14 de janeiro a Solyd irá revolucionar a forma como pentest e hacking deve ser ensinado. Se inscreva para ser o primeiro a saber das novidades. Saiba mais...