Duas RCE 9.8 no Cursor mostram como prompt injection virou vetor de execução remota em IDE de IA

Cato AI Labs divulgou nesta quarta o DuneSlide, par de vulnerabilidades zero-click em Cursor 3.0 que quebra sandbox por instrução plantada em MCP ou página web carregada pelo agente.
A Cato AI Labs divulgou nesta quarta-feira, 1º de julho, duas vulnerabilidades críticas no Cursor, IDE de código movida a IA usada por mais da metade da Fortune 500, segundo a própria fabricante. As falhas, rastreadas como CVE-2026-50548 e CVE-2026-50549 e ambas com CVSS 9.8, permitem execução remota de código no host do desenvolvedor a partir de conteúdo malicioso plantado num serviço conectado por Model Context Protocol (MCP) ou numa página que o agente do Cursor carrega durante uma busca na web. O ataque é zero-click: o desenvolvedor não digita nada, o agente lê a instrução envenenada e executa.
A Anysphere, fabricante do Cursor, corrigiu os dois bugs na versão 3.0, publicada em 2 de abril. A janela entre o patch e a divulgação pública é típica de disclosure coordenado, mas atinge toda a base instalada anterior a 3.0. Esse universo, segundo a Cursor, inclui equipes de engenharia em consultorias e bancos que padronizaram a ferramenta em pipelines de agentes de código nos últimos doze meses.
Como o sandbox foi quebrado
O CVE-2026-50548 explora um comportamento do sandbox. Quando o agente executa a ferramenta run_terminal_cmd, o Cursor permite escrita no diretório de trabalho declarado. O parâmetro working_directory é opcional e controlado pelo próprio modelo de linguagem. Uma prompt injection que consegue setar esse parâmetro para um caminho fora do projeto, apontando para o binário cursorsandbox ou para o instalador do Cursor, transforma um comando sandboxado em escrita arbitrária, e uma escrita arbitrária no helper do sandbox vira RCE completo no ciclo seguinte.
O CVE-2026-50549 quebra a resolução de caminhos. O Cursor cria um symlink dentro do diretório do projeto, tenta canonicalizar o alvo e, quando a canonicalização falha, faz fallback para o caminho original do symlink sem validá-lo. Uma prompt injection que consegue plantar o symlink apontando para fora do projeto derruba a mesma trava. As duas cadeias entregam o mesmo desfecho: comprometimento total da máquina e do workspace SaaS conectado.
Prompt injection deixa de ser problema de LLM
O ponto que o time da Cato levanta no relatório reformata a discussão sobre segurança de agentes. Prompt injection deixou de ser um problema do modelo de linguagem, contido no papo entre usuário e chatbot, e passou a alcançar bugs clássicos no código auxiliar da IDE: sandbox, canonicalização, manejo de working_directory. Nenhum desses pedaços foi projetado supondo que o parâmetro chegaria de um MCP externo carregado durante execução autônoma. O agente é o intermediário que legitima o input hostil.
Uma pesquisa da Pillar Security publicada esta semana sobre uma cadeia paralela, apelidada NomShub, explora a função de Remote Tunnel do Cursor no mesmo espírito. Segundo os pesquisadores, o pipeline de agentes virou o novo perímetro de segurança da estação de desenvolvedor. As equipes de segurança de aplicações que passaram anos escrevendo regras para detectar dependências vulneráveis em CI agora precisam rever quais MCPs os desenvolvedores conectam nas próprias workstations e sob que política de aprovação.
O que muda para consultorias e bancos
Para operações de engenharia distribuída, o problema é de geometria. Equipes de delivery em Bangalore, Cracóvia e São Paulo rodam Cursor em cima do mesmo backlog de tickets, com MCPs que puxam contexto de Jira, Slack e Confluence do cliente. Uma instrução envenenada dentro de um ticket, plantada por insider malicioso ou por atacante com credenciais roubadas, se propaga para qualquer estação com versão pre-3.0. Consultorias com centros de desenvolvimento em terceiros países são as que carregam maior blast radius, porque padronizaram Cursor sem inventariar quantos desenvolvedores atualizaram para 3.0 nos últimos três meses.
Bancos que integraram Cursor a pipelines internos de code review têm outra pergunta a fazer, na linha do compliance regulatório. Se o Cursor executa código dentro do sandbox sob orientação de um LLM que responde a um MCP externo, e se esse MCP externo é aprovado pelo próprio developer sem ticket de mudança formal, a operação é uma alteração de superfície de ataque que exigiria aprovação de mudança sob DORA na Europa e sob a Rule 15c3-5 da SEC nos EUA. Nenhum desses regimes foi escrito para agentes autônomos. O DuneSlide é o tipo de incidente que força a leitura conservadora dos dois.