Alerta de segurança: três falhas críticas em mcp-server-git poderiam permitir leitura, remoção e execução de código via prompt injection

Publicada 4 min de lectura 130 leituras

Pesquisadores em segurança destaparam três falhas críticas em mcp-server-git, a implementação oficial do servidor Git para o Model Context Protocol (MCP) mantida dentro do ecossistema de Anthropic. De acordo com o relatório da assinatura Cyata, estas vulnerabilidades permitem de ler e apagar arquivos arbitrários até, em certas combinações, executar código no sistema afetado — e o mais preocupante: podem ser ativados através de prompt injection Ou seja, manipulando o que um assistente de IA chega a “leer”. Você pode consultar a explicação completa dos pesquisadores em seu comunicado técnico em no blog Cyata.

O mcp-server-git é uma biblioteca em Python que oferece ferramentas integradas para que modelos de linguagem interactuem com repositórios Git: ler, procurar e executar operações sobre código de forma programática. É pensada como referência dentro do conjunto de servidores MCP e, portanto, costuma servir como modelo a seguir por desenvolvedores que implementam agentes que manejam repositórios. A própria colecção de servidores está disponível em o repositório MCP.

Alerta de segurança: três falhas críticas em mcp-server-git poderiam permitir leitura, remoção e execução de código via prompt injection
Imagem gerada com IA.

As três vulnerabilidades receberam identificadores CVE e já têm correções publicadas nos ramos do projeto. O primeiro erro, registrado como CVE-2025-68143, permitia uma travessia de rotas (path traversal) durante a criação de repositórios porque a ferramenta git_init aceitava rotas de sistema sem validação adequada; a correção chegou na versão 2025.9.25. O segundo, CVE-2025-68144, consiste na injeção de argumentos quando funções como git_diff e git_checkout passavam parâmetros controlados pelo usuário diretamente à CLI de Git; isto foi resolvido em 2025.12.18. O terceiro, CVE-2025-68145, é outra variante de path traversal ligada ao manejo do flag --repository e também foi resolvida na mesma série de adesivos.

O alcance destas falhas não é meramente teórico. Os pesquisadores mostram como, se um atacante consegue influenciar o texto que uma IA processa, por exemplo com um README malicioso, a descrição de um issue ou uma página comprometida, pode encadear as vulnerabilidades com o servidor de arquivos do MCP para manipular o conteúdo de um repositório. No seu cenário, o adversário converte uma pasta qualquer num repositório Git, escreve uma configuração .git/config com um filtro “clean” malicioso, cria uma .gitattributes que aplique esse filtro a certos ficheiros, introduz um programa com a carga útil e um ficheiro que active o filtro, e eventualmente executa o git_ add: ao fazê-lo, o filtro “clean” é executado e com ele o código do atacante. A técnica apoia-se em características legítimas de Git, como os filtros definidos em .gitattributes, o que complica a sua detecção se não houver medidas de segurança adicionais.

O repositório do componente de sistema de ficheiros usado na demonstração também é público e faz parte do conjunto de servidores MCP: Filesystem MCP server. Essa integração entre capacidades para operar sobre o sistema de arquivos e a facilidade de orquestrar ações por prompts é precisamente o que torna especialmente delicada a vulnerabilidade: o vetor de ataque pode ser remoto e não requer acesso prévio ao host vulnerável.

Em resposta aos testes, os mantenedores tomaram ações concretas: entre outras medidas, a ferramenta git_init foi eliminada e reforçada as validações para impedir primitivas básicas de traversal. A recomendação para qualquer usuário da livraria é atualizar quanto antes às versões contendo as correções e rever a implantação em que agentes baseados em MCP tenham permissões de escrita ou capacidade de executar comandos do sistema.

Alerta de segurança: três falhas críticas em mcp-server-git poderiam permitir leitura, remoção e execução de código via prompt injection
Imagem gerada com IA.

Além do adesivo, as observações de Cyata são uma chamada de atenção para todo o ecossistema. Como Shahar Tal, co-fundador e CEO da empresa referiu, que a implementação de referência presente falhas deste tipo sugere que as bibliotecas de referência e os padrões de integração comuns entre LLMs e recursos do sistema devem ser mais abrangentes. O risco não é apenas que uma referência contenha uma falha, mas que muitas implementações derivadas possam arrastá-lo sem responsabilidade ou adesivos adequados.

Para desenvolvedores e responsáveis pela segurança, a lição prática é clara: as interfaces que expõem operações sobre o sistema de arquivos ou que invocam ferramentas nativas precisam de validação estrita de entradas, políticas de privilégios mínimos e isolamento de execução. Em ambientes onde modelos de linguagem processam conteúdo externo ou interagem com recursos do sistema, convém acrescentar barreiras adicionais — por exemplo, contentores com permissões limitadas, análises prévias de prompts potencialmente perigosos e revisões de código automatizadas — para mitigar o risco de uma cadeia de comandos legítima se tornar exploração.

Se você quiser aprofundar as correções e os avisos oficiais, você pode consultar as páginas de segurança publicadas no repositório: CVE-2025-68143, CVE-2025-68144 e CVE-2025-68145. Para pesquisa técnica e exemplos de exploração, a análise de Cyata está disponível em seu blog em cyata.ai, e a implementação de referência do MCP pode ser revista em GitHub. Manter dependências atualizadas e auditar integrações entre agentes IA e recursos do sistema é, hoje mais do que nunca, uma prática imprescindível.

Cobertura

Relacionadas

Mas notícias do mesmo assunto.