Usa o Cursor? Uma chave exposta num fornecedor levou a cópias maliciosas do Claude Code

Usa o Cursor? Uma chave exposta num fornecedor levou a cópias maliciosas do Claude Code

A empresa que desenvolve o editor de código Cursor atribui agora a uma intrusão nos seus próprios sistemas as cópias maliciosas da extensão Claude Code servidas no seu marketplace a 29 de outubro. O relatório de investigação, publicado a 13 de novembro, coloca na origem do caso uma credencial roubada através da Fireworks AI, fornecedor de infraestrutura de IA. O universo potencialmente atingido não ultrapassa os 5.000 utilizadores, na estimativa da empresa.

Resposta rápida: As versões 2.1.312 e 2.1.313 da extensão Anthropic.claude-code, servidas pelo marketplace da Cursor a 29 de outubro de 2026, tentavam instalar um backdoor SSH persistente em Windows e macOS. A Cursor diz que o atacante usou uma credencial roubada dos seus sistemas internos, numa cadeia iniciada com uma chave exposta na Fireworks AI. Quem instalou ou atualizou a extensão nesse dia deve correr os scripts de remediação da Cursor, atualizar para a versão 2.1.314 e rodar credenciais.

Da chave de um fornecedor ao marketplace de extensões

Segundo a atualização publicada pela Cursor, um fornecedor de inferência, a Fireworks, surge como primeiro elo da cadeia: uma chave de acesso que a Cursor lhe tinha confiado ficou exposta e serviu para retirar, de um repositório de armazenamento só de leitura, registos históricos de agentes de programação, na maioria de 2025 e de sessões fora do Privacy Mode. Parte desses registos guardava credenciais por ocultar, que funcionaram como trampolim para algumas ferramentas SaaS usadas pela empresa.

A cache que alimenta o marketplace de extensões da Cursor passou, a 29 de outubro, a servir cópias adulteradas e não autorizadas da extensão Claude Code, ali colocadas com uma credencial retirada dos dados internos expostos. A janela de exposição decorreu entre as 2h27 e as 13h35 (hora do Pacífico), o que corresponde aproximadamente ao período entre as 09h27 e as 20h35 em Lisboa. Foram cerca de 11 horas.

Tanto a extensão legítima da Anthropic como o registo Open VSX, de que o marketplace da Cursor depende, ficaram fora do alcance do ataque. O Open VSX chegou a ser dado como origem do pacote, até a OpenSourceMalware retificar a sua análise depois de contactada pela Cursor: o ficheiro saiu do espelho que a Cursor mantém desse registo.

Cronologia do incidente

DataAcontecimento
Antes de 29 de outubro (data não divulgada)Chave emitida pela Cursor para a Fireworks fica exposta e é usada para copiar registos de agentes
29 de outubro, 09h27 a 20h35 (Lisboa)Versões 2.1.312 e 2.1.313 de Anthropic.claude-code para Windows e macOS disponíveis no marketplace da Cursor
29 de outubroRemoção das versões, encerramento preventivo do marketplace, rotação de chaves e reabertura
30 de outubroAviso da Cursor passa a incluir a versão 2.1.312; a extensão legítima salta para a 2.1.314
1 de novembroÚltima atividade observada do atacante, bloqueada
13 de novembroPublicação do relatório completo da investigação

O que fazia a extensão adulterada

O ficheiro extension.js abria com um carregador JavaScript malicioso, mantendo-se intacto o restante código legítimo, de acordo com as análises da Phorion e da OpenSourceMalware. O simples arranque da extensão bastava para desencadear a execução, sem qualquer interação com o Claude Code.

A máquina da vítima ficava com uma chave Ed25519 identificada como svc-telemetry no ficheiro authorized_keys. Seguia-se um túnel SSH inverso para um servidor externo, com novas tentativas a cada minuto, e a persistência ficava a cargo de um LaunchAgent chamado com.apple.sysmond em macOS e de uma tarefa agendada SysMon em Windows.

Privilégios de administrador, que a extensão raramente tem, eram condição para ativar o serviço SSH local, pelo que o acesso remoto persistente só terá sido viável numa minoria de casos. Informação sobre o sistema saía, ainda assim, da máquina através de pedidos web separados. Os documentos consultados não referem qualquer identificador CVE: a Cursor exclui uma vulnerabilidade no produto da Anthropic e descreve o caso como um comprometimento da cadeia de distribuição.

Indicadores de comprometimento

Os indicadores abaixo foram compilados pela StepSecurity e por outros investigadores a partir do aviso da Cursor.

TipoIndicador
ExtensãoAnthropic.claude-code 2.1.312 e 2.1.313 (Windows e macOS)
Infraestrutura do atacante134.209.82[.]225, porta 22 (túnel SSH inverso)
Chave SSHComentário svc-telemetry; impressão digital SHA256:0Z6R+DF64Do2nwQic8a7kkfDLNNk4IiK+2U2Rci4htk
Ficheiros e persistência~/.config/.smt, ~/.config/.smtk, ~/Library/LaunchAgents/com.apple.sysmond.plist, %USERPROFILE%\.config\smt.cmd, sysmon.cmd na pasta Startup, tarefa agendada SysMon
VSIX 2.1.312 (darwin-arm64), SHA-256fcbb327e38e61c4fec795e0d0591f52cd1014b813d20a5912104953c3a17c364
VSIX 2.1.313 (darwin-arm64), SHA-25680402fdcad8799285fd93044976973ca000da7995fb93363f819bb8e4f84ee6c
VSIX 2.1.313 (win32-x64), SHA-2566786ec90cbd45949695bd7805c9fbb26cfc91bc5fc897de0183d9bcb9cb21731

O que ficou de fora e o que a Cursor mudou

A exposição de registos de agentes toca menos de 0,05% dos utilizadores fora do Privacy Mode, todos já contactados individualmente; quem não recebeu aviso não consta desses registos. As credenciais de API comprometidas dizem respeito a menos de 0,01% dos clientes.

A integridade da aplicação Cursor e das suas atualizações oficiais mantém-se, garante a empresa, por estas dependerem de um alojamento de código separado e de chaves de assinatura que escaparam ao incidente. A lista de exclusões divulgada abrange ainda os dados de utilizadores em Privacy Mode, os repositórios de código dos clientes e os sistemas de produção.

Quanto às medidas tomadas, todo o tráfego de inferência deixou de passar pela Fireworks, cuja chave foi desativada. A rotação abrangeu a totalidade das credenciais internas, mesmo sem indícios de exposição. O marketplace de extensões regressou depois de reconstruído e de validada a autenticidade das restantes extensões, e a infraestrutura de produção passou por uma reimplementação preventiva.

Esta é a versão da Cursor e não foi confirmada de forma independente. Fica por esclarecer qual das duas intrusões reconhecidas pela Fireworks em outubro terá estado na origem da exposição da chave, segundo análises públicas ao boletim daquele fornecedor, que não foi possível consultar diretamente.

Como verificar e limpar uma máquina afetada

O aviso de segurança da Cursor dirige-se a quem instalou ou atualizou a extensão a partir do marketplace da Cursor, em macOS ou Windows, durante a janela de 29 de outubro. Os passos essenciais são:

  • Confirmar a versão instalada: procurar pastas anthropic.claude-code-2.1.312 ou 2.1.313 em ~/.cursor/extensions (ou %USERPROFILE%\.cursor\extensions em Windows).
  • Procurar a chave do atacante: em macOS, uma única linha de terminal indicada pela Cursor dá a resposta: grep -qs svc-telemetry ~/.ssh/authorized_keys.
  • Correr os scripts oficiais: a limpeza da extensão adulterada, dos ficheiros largados, da persistência e da chave SSH cabe aos scripts remediate-macos.sh e remediate-windows.ps1 (este último em PowerShell elevado).
  • Não ficar pela desinstalação: quem se limitar a remover a extensão continua exposto, porque a chave e os mecanismos de arranque permanecem no sistema.
  • Atualizar: a versão 2.1.314 é o destino de atualização indicado pela Cursor para todos os clientes.
  • Rever registos e rodar credenciais: sessões SSH com origem aparente em localhost e autenticadas com a chave svc-telemetry são o rasto a procurar, segundo a Phorion. Por prudência, devem ser substituídos tokens, chaves SSH e segredos guardados na máquina.

Porque importa para as organizações em Portugal

O caso junta dois riscos de cadeia de fornecimento. Uma credencial entregue a um fornecedor deu acesso a dados internos, e uma cache de distribuição foi suficiente para chegar às máquinas de programadores, que guardam chaves, tokens e acesso a repositórios e a ambientes de produção.

Para as entidades abrangidas pelo Regime Jurídico da Cibersegurança (Decreto-Lei n.º 125/2025, que transpõe a NIS2), a segurança da cadeia de abastecimento e das relações com fornecedores faz parte das medidas de gestão de risco exigidas. Os incidentes com impacto significativo devem ser notificados ao CNCS, através do CERT.PT. Se o acesso indevido a uma estação de trabalho envolver dados pessoais, aplica-se também o RGPD, que prevê a notificação à CNPD no prazo de 72 horas quando exista risco para os titulares.

Para PME e equipas de desenvolvimento, o caso recomenda três práticas: inventariar as extensões instaladas nos editores, ponderar a atualização automática em ambientes sensíveis e limitar o âmbito e a validade das chaves entregues a terceiros.

Perguntas frequentes

Que versões da extensão Claude Code foram adulteradas?

As versões 2.1.312 e 2.1.313 de Anthropic.claude-code para Windows e macOS, servidas pelo marketplace de extensões da Cursor a 29 de outubro de 2026. A versão legítima seguinte é a 2.1.314.

A Anthropic ou o Open VSX foram comprometidos?

Segundo a Cursor, não. As cópias entraram na cache do marketplace da própria Cursor através de uma credencial roubada; a extensão legítima da Anthropic e o registo Open VSX não foram comprometidos.

Como posso verificar se o meu computador foi afetado?

Procure a chave com o comentário svc-telemetry no ficheiro authorized_keys, as pastas anthropic.claude-code-2.1.312 ou 2.1.313 nas extensões do Cursor e os artefactos de persistência com.apple.sysmond (macOS) ou SysMon (Windows).

Basta desinstalar a extensão para ficar seguro?

Não. A chave SSH e os mecanismos de persistência podem permanecer no sistema. A Cursor remete para os scripts de remediação do aviso de 29 de outubro e para a atualização para a versão 2.1.314. É também prudente rodar as credenciais guardadas na máquina.

Esta informação tem caráter noticioso e baseia-se em dados divulgados publicamente pela Cursor (atualização de 13 de novembro), pelo aviso de segurança da Cursor, pela OpenSourceMalware e pela StepSecurity.