Pesquisadores de segurança descobriram uma vulnerabilidade crítica no Cursor, o editor de código baseado em inteligência artificial, que permite que atacantes injetem código malicioso por meio de servidores desonestos do Protocolo de Contexto de Modelo (MCP, na sigla em inglês).
Diferentemente do VS Code, o Cursor não realiza verificações de integridade em seus componentes de tempo de execução, tornando-se vulnerável a adulterações por meio do registro de servidores MCP.
O ataque funciona ao registrar um servidor MCP local que contorna completamente os controles de segurança integrados do Cursor. Quando um desenvolvedor desavisado habilita um servidor MCP malicioso e reinicia o Cursor, o navegador é comprometido.
Os atacantes podem injetar código JavaScript arbitrário que sequestra o navegador interno, substituindo páginas de login legítimas por versões falsas projetadas para coletar credenciais, enviando os dados roubados para servidores remotos.
Como o ataque funciona
A vulnerabilidade se origina da falha do Cursor em verificar a integridade de seus recursos específicos durante o tempo de execução.
Os pesquisadores criaram uma prova de conceito ao modificar códigos internos não verificados durante o registro do servidor MCP.
Essa modificação injeta código malicioso no navegador do Cursor sem exigir permissões especiais ou recálculo de somas de verificação (checksums).
O ataque é executado ao atribuir document.body.innerHTML com HTML controlado pelo atacante, reescrevendo efetivamente todo o corpo da página e apagando o estado anterior do DOM (Modelo de Objeto de Documentos).
Essa técnica contorna completamente as verificações de segurança em nível de interface. Uma vez ativo, cada aba aberta pelo navegador do Cursor executa o código injetado, criando uma superfície de ataque persistente.
O processo requer três etapas: habilitar o servidor MCP, reiniciar o Cursor para aplicar as alterações e executar o JavaScript malicioso no navegador integrado.
Isso representa um ataque de dupla camada do tipo eval (execução dinâmica de código), que fornece aos atacantes capacidades extensivas.
Essa vulnerabilidade demonstra um cenário de ameaças mais amplo, no qual agentes de codificação introduzem superfícies de ataque em constante expansão.
Os servidores MCP exigem permissões amplas para funcionar, o que significa que servidores comprometidos podem se modificar, escalar privilégios e obter novas capacidades sem visibilidade do usuário.
Os atacantes podem realizar qualquer ação que o usuário comprometido possa executar, com controles mínimos para mitigar os riscos.
Os riscos emergentes na cadeia de suprimentos associados a agentes de inteligência artificial são significativos. No entanto, as organizações mantêm visibilidade mínima sobre seu déploiement e uso.
Servidores MCP, extensões e até mesmo comandos simples podem executar códigos em ambientes de usuários e redes corporativas sem serem detectados.
Os desenvolvedores devem verificar cuidadosamente qualquer servidor MCP ou extensão antes de utilizá-los. É preciso confirmar o repositório do projeto no GitHub e revisar minuciosamente o código-fonte antes da instalação.
Nunca habilite funcionalidades de forma incondicional, especialmente recursos do MCP, e evite usar modos de execução automática que contornam a supervisão do usuário.
Além disso, os desenvolvedores devem revisar manualmente o código gerado por agentes de inteligência artificial antes de executar ações em navegadores integrados.
As consequências de uma confiança mal depositada em ferramentas de desenvolvimento podem se estender além de máquinas individuais, comprometendo redes corporativas inteiras.
Embora o Cursor tenha sido notificado antes da publicação, essa descoberta reforça que a máquina do desenvolvedor se tornou o novo perímetro de defesa cibernética.
As organizações devem implementar medidas abrangentes de segurança da cadeia de suprimentos, incluindo sistemas de reputação para ingestão segura e capacidades de gerenciamento de postura, a fim de se proteger contra ameaças em evolução que visam ambientes de desenvolvimento baseados em inteligência artificial.