O hacker Astrounder, nick do pesquisador de segurança Marlon Fabiano, encontrou duas vulnerabilidades de dia zero no GitHub Copilot. As falhas, além de permitirem a alteração no comportamento do modelo Copilot, entregam dados de desenvolvedores.
Permitia a injeção de prompts maliciosos que poderiam modificar as respostas
Desenvolvido entre GitHub e OpenAI, o GitHub Copilot serve para auxiliar usuários de ambientes de desenvolvimento integrados (Visual Studio Code, Visual Studio, Neovim e JetBrains, por exemplo) por meio de sugestão de código para preenchimento automático.
“Os dois zerodays permitiam a exfiltração do código do desenvolvedor”, comenta Astrounder. A primeira vulnerabilidade envolve injeção direta de prompt: ela permitia a injeção de prompts maliciosos que poderiam modificar as respostas do Copilot e vazar o código-fonte no qual o desenvolvedor estava trabalhando.
GitHub Copilot
“Utilizando técnicas de ocultação no chat do Copilot no Visual Studio Code, essa vulnerabilidade explorou a falta de validação segura nas respostas do modelo. Por meio do uso de tags HTML ocultas, os invasores podem fazer com que o Copilot execute comandos maliciosos sem o conhecimento do usuário, resultando no vazamento de informações confidenciais”, explica.
A segunda vulnerabilidade envolve a injeção via plugin “@workspace”. De acordo com Astrounder, o plugin era instruído a ler arquivos dentro do repositório e poderia seguir instruções ocultas para realizar ações não-autorizadas. Em um dos possíveis casos, atacantes poderiam exibir mensagens enganosas para usuários.
GitHub Copilot
O pesquisador comenta que ambas as vulnerabilidades traziam riscos significativos para que o Copilot fosse manipulado para vazar o código-fonte ou o conteúdo de arquivos abertos no VSCode, afetando diretamente a confidencialidade dos projetos dos desenvolvedores.
O GitHub foi contatado por Astrounder, que investigou e realizou as correções necessárias. Devido às políticas internas do Github não houve registro CVE, mas as vulnerabilidades já foram corrigidas.
GitHub Copilot
“É importante não confiarmos cegamente em serviços com IA. Às vezes, quem está interagindo com você não é apenas um modelo de linguagem, mas também há uma série de fluxos que ainda podem ser manipulados maliciosamente”, finalizou Astrounder.
Denuncie ao TecMundo
O TecMundo apoia o trabalho de hackers éticos. Faça sua denúncia nos seguintes canais: