Agentjacking: ataque transforma Claude Code e Cursor em vetores de execução remota via Sentry MCP
Pesquisadores da Tenet Security divulgam ataque que injeta payload em eventos do Sentry e leva agentes de IA como Claude Code e Cursor a executar código arbitrário no terminal do desenvolvedor. 2.388 organizações expostas e 85% de sucesso nos testes.
Pesquisadores da Tenet Security divulgaram uma nova classe de ataque chamada “Agentjacking”, capaz de transformar agentes de IA para desenvolvimento, como Claude Code e Cursor, em vetores de execução remota de código. A técnica abusa de uma falha arquitetural na integração entre o Sentry e seu servidor MCP, e em testes controlados atingiu taxa de sucesso de 85% contra mais de 100 organizações. Outras 2.388 organizações foram identificadas com DSNs do Sentry expostos e potencialmente injetáveis.
O que aconteceu
O Agentjacking não explora uma vulnerabilidade clássica de software. Em vez disso, abusa de uma característica de design: o Sentry, plataforma open source de monitoramento de erros, aceita por padrão qualquer payload enviado por quem conhecer a DSN (Data Source Name) de um projeto. Esse comportamento é necessário para capturar erros não previstos em produção, mas se torna perigoso quando aliado ao Sentry MCP Server, componente que entrega os mesmos eventos a agentes de IA como contexto “confiável” de diagnóstico.
Na prática, um atacante envia ao Sentry um relatório de erro forjado contendo instruções em markdown disfarçadas de orientações de resolução. Quando o desenvolvedor pede ao agente para “ajudar a corrigir o último erro reportado”, o modelo consome o conteúdo malicioso como se fosse uma sugestão legítima do próprio Sentry e executa as ações solicitadas no terminal local, com os privilégios do usuário.
A descoberta é assinada pelos pesquisadores Ron Bobrov, Barak Sternberg e Nevo Poran, da Tenet Security, e foi tornada pública nesta semana, ampliando o debate sobre supply chain de prompts e a superfície de ataque inerente aos agentes de codificação assistida por IA.
Como o ataque funciona
A cadeia de ataque tem três elos. Primeiro, o atacante descobre uma DSN do Sentry exposta — algo trivial, já que essas credenciais ficam embutidas em código frontend, repositórios públicos do GitHub e bundles JavaScript servidos diretamente do navegador. Segundo, envia ao endpoint de ingestão um evento de erro fabricado, com payload markdown que contém instruções para o agente. Por fim, espera que algum desenvolvedor da organização acione o agente de IA, integrado ao Sentry via MCP, para investigar o erro recém-criado.
O ponto crítico é que o agente não distingue conteúdo originado de telemetria legítima daquilo que é injetado pelo atacante: tudo chega via servidor MCP do Sentry com o mesmo nível de confiança. A renderização em markdown também esconde a manipulação de chamadas de função, fazendo a instrução parecer um trecho técnico de “como corrigir esse stack trace”.
“O ataque explora uma falha arquitetural crítica na interseção entre a ingestão de eventos do Sentry, que aceita payloads arbitrários de qualquer um que possua a DSN, e o servidor MCP do Sentry, que devolve esses dados aos agentes de IA como saída confiável do sistema.” — Ron Bobrov, Barak Sternberg e Nevo Poran, Tenet Security
Quem é afetado
A Tenet mapeou 2.388 organizações com DSNs válidas e injetáveis. Ao executar a prova de conceito de forma controlada contra mais de 100 alvos, observou 85% de taxa de exploração bem-sucedida em diferentes combinações de agentes e ambientes. Entre os principais riscos:
- Exfiltração de variáveis de ambiente, tokens de acesso, chaves de API e credenciais cloud carregadas no terminal do desenvolvedor
- Persistência local por meio de modificações em arquivos de configuração de shell, hooks de git ou scripts de inicialização
- Pivot para repositórios privados e pipelines de CI/CD aos quais a estação de trabalho tem acesso
- Comprometimento silencioso de pull requests, com inserção de backdoors em código revisado
- Movimentação lateral em ambientes de SaaS via tokens longos do desenvolvedor
De acordo com os pesquisadores, o ataque “ignora EDR, WAF, IAM, VPN, Cloudflare e firewalls — porque não há nada malicioso a ser detectado. Toda ação na cadeia está autorizada”. O agente apenas faz aquilo que foi instruído a fazer pelo usuário; o problema é que o usuário, na prática, está repassando instruções vindas de um atacante.
Resposta do Sentry
Procurada pelos pesquisadores, a Sentry reconheceu o problema, mas afirmou que ele é “tecnicamente indefensável” sem quebrar o caso de uso central da plataforma. A empresa ativou um filtro global de conteúdo que bloqueia uma string específica usada na prova de conceito original — uma mitigação que reduz a janela imediata, mas não elimina a classe de ataque, já que variantes de payload são triviais de produzir.
Análise
Agentjacking ilustra uma transição importante: durante anos, o discurso de segurança em IA girou em torno de prompt injection clássico, em que um conteúdo malicioso é colado por um usuário desavisado em um chatbot. O ataque de agora elimina essa interação humana e usa a própria infraestrutura corporativa — o coletor de telemetria — como canal de injeção. É o mesmo padrão que vimos com servidores de log envenenados, gateways de e-mail abusados ou web hooks expostos: tudo que entrega dado “estruturado” ao agente vira candidato a vetor.
Não por acaso, casos como o ToolPoisoning em servidores MCP públicos e o EchoLeak em copilots empresariais reforçam a tese de que o perímetro de segurança de IA passou a ser composto por todas as fontes de contexto que alimentam um agente — não apenas pelo texto digitado pelo humano. Isso muda a postura defensiva: monitorar prompts não basta; é preciso governar quais MCPs estão conectados, quais escopos cada um expõe e como dados de terceiros chegam até o modelo.
Para times no Brasil que adotam Claude Code, Cursor, Windsurf e ferramentas equivalentes em sprints reais, a recomendação prática é mapear urgentemente o catálogo de MCPs conectados, separar ambientes de desenvolvimento de produção e tratar qualquer entrada de telemetria como dado não confiável até prova em contrário.
Recomendações práticas
- Audite quais DSNs do Sentry estão publicamente acessíveis e rotacione as expostas em código frontend ou repositórios open
- Desabilite o servidor MCP do Sentry em ambientes de desenvolvimento até ter um filtro de saída confiável
- Rode agentes de IA em containers ou sandboxes sem acesso direto a variáveis de ambiente do desenvolvedor
- Adote prompts de sistema explícitos que instruam o agente a tratar eventos de telemetria como dados, nunca como instruções executáveis
- Habilite confirmação humana obrigatória para execução de shell, modificações em arquivos sensíveis e chamadas de rede iniciadas pelo agente
- Monitore comandos executados pelo agente com logging fora de banda (EDR no host ou auditd) — o que o agente fez deve ser auditável depois do fato
- Segmente credenciais: tokens de produção não devem viver na máquina do desenvolvedor durante sessões com agentes
Fonte: The Hacker News




