Em 2018, o pacote event-stream do npm sofreu uma atualização maliciosa. Esse ataque visava uma carteira específica de Bitcoin, afetando milhões de downloads.
Agora, um problema similar, e talvez ainda mais rápido, parece estar se desenrolando no ecossistema MCP, como acompanhamos aqui no Brasil Vibe Coding.
Configurações Comuns e o Risco Oculto
Se você utiliza clientes MCP como Claude Desktop ou Cursor, suas configurações provavelmente contêm um padrão perigoso. O uso de npx com a flag -y significa "instalar sem perguntar".
Isso acarreta que nenhuma versão específica é fixada. Cada vez que seu agente é iniciado, ele automaticamente baixa a versão mais recente do pacote npm. Se esse pacote for comprometido, seu agente executará a versão vulnerável sem aviso prévio.
{
"mcpServers": {
"my-tool": {
"command": "npx",
"args": ["-y", "some-mcp-server"]
}
}
}A situação é mais grave do que parece. Foram encontradas 502 configurações de servidor MCP agindo exatamente dessa forma em diversos registros monitorados.
A Análise da Aguara Watch Revela Falhas de Segurança
A plataforma Aguara Watch, que rastreia os principais registros MCP como skills.sh, ClawHub, PulseMCP, mcp.so, LobeHub e Smithery, fez uma descoberta alarmante. A ferramenta monitora mais de 42.000 ferramentas e aplica 148 regras de detecção com varreduras incrementais a cada 6 horas.
Os dados coletados mostram uma clara tendência de vulnerabilidade. Muitos sistemas estão expostos a ataques de cadeia de suprimentos de software.
O Problema da Falta de Fixação de Versão
O principal problema reside na ausência de fixação de versão (version pinning). Ao invés de especificar uma versão exata, como some-mcp-server@1.2.3, a maioria das configurações puxa a versão mais recente sem verificação.
// O que a maioria das configurações faz:
"args": ["-y", "some-mcp-server"]
// O que deveria ser feito:
"args": ["-y", "some-mcp-server@1.2.3"]Essa prática permite que um pacote comprometido, um ataque de typosquatting (registrando nomes similares) ou um ataque de confusão de dependência passe despercebido. Enquanto o npm aprendeu essa lição anos atrás, o ecossistema MCP ainda não aplicou essa medida crucial de segurança.
"Nossa análise mostra que a comunidade MCP está trilhando um caminho perigoso ao negligenciar a fixação de versões. É um convite aberto para ataques de supply chain, que podem ter consequências devastadoras para a segurança dos usuários e a integridade dos dados."
— Especialista em segurança da Aguara Scan
Conclusão: Proteja seus Agentes MCP
É fundamental que desenvolvedores e usuários de agentes MCP revisem suas configurações. A implementação de fixação de versão não é apenas uma boa prática, mas uma medida essencial para a segurança de seus sistemas.
Manter a vigilância e aplicar as lições aprendidas em outras plataformas de pacotes é crucial. Continue acompanhando o Brasil Vibe Coding para mais novidades e dicas sobre segurança no desenvolvimento e uso de inteligência artificial.