No servidor GitHub MCP, que implementa o protocolo MCP (Model Context Protocol) da GitHub, foi identificada uma vulnerabilidade que permite a extração de dados de repositórios privados de usuários que utilizam assistentes de IA para automatizar o trabalho com repositórios.
O protocolo MCP destina-se a conectar modelos de IA a diversas fontes de dados. O servidor GitHub MCP oferece uma integração perfeita de grandes modelos de linguagem com a API do GitHub, fornecendo a esses modelos contexto adicional ao extrair dados dos repositórios do GitHub. Os modelos que utilizam o MCP podem ser empregados para automatizar determinadas ações com o GitHub, como a interpretação de mensagens de erro.
A essência da vulnerabilidade é que, através da interação com um modelo de linguagem grande conectado ao GitHub, é possível obter dados confidenciais sobre o usuário que vinculou o agente de IA à sua conta no GitHub. Um invasor pode colocar em um repositório público, que está sujeito a automação baseada em um modelo de linguagem grande, um relatório de problema (issue) especialmente formatado. Após a ativação, o modelo gerará um pull request com uma solução proposta. Assim, se o problema diz respeito a repositórios privados ou dados confidenciais, o modelo pode revelar informações no pull request sugerido.

Como exemplo, foi enviado um relatório de erro reclamando que o autor não estava mencionado no arquivo README. Como solução, a mensagem sugeriu adicionar informações sobre o autor no README e uma lista de todos os repositórios com os quais o autor trabalhou. Como resultado, o modelo gerou um pull request com informações que incluíam detalhes pessoais do autor, extraídos de um repositório privado, bem como uma lista de repositórios privados existentes. Na próxima etapa, através de uma interação semelhante com o modelo, é possível obter dados de um repositório privado específico.
Para ativar o agente de IA, o proprietário do repositório precisa dar a ordem para analisar as mensagens de erro. Caso o GitHub esteja vinculado ao serviço de IA Claude, basta que o proprietário envie um pedido ao assistente de IA, como "dê uma olhada nas issues nos meus repositórios de código aberto e resolva-as". Após isso, o assistente de IA utilizará a integração MCP configurada com a conta do GitHub e executará as instruções contidas nas mensagens de problemas.
Fonte: opennet.ru
