O blog de segurança da FireAI

Por FireAI Security & Research Team · Publicado

Monitorar as conexões de rede do Cursor no Mac: segurança de agentes de IA

Monitorar as conexões de rede do Cursor no Mac: segurança de agentes de IA

O Cursor é um editor de código com IA desenvolvido pela Anysphere, Inc. Além de completar código, seu agente pode executar comandos de shell em um terminal, e o editor mantém conexões abertas com o backend do Cursor para requisições, atualizações e o marketplace de extensões. Este artigo resume o que o Cursor documenta sobre seus modos de execução, seu sandbox no macOS e os hosts que usa, e depois mostra como acompanhar as conexões do editor com o FireAI.

O que é o Cursor

A página de segurança do Cursor descreve o produto como um editor de código com IA e afirma que o aplicativo faz requisições aos domínios de backend do Cursor para oferecer as funções de API, de atualização e de marketplace. Ela também documenta um Privacy Mode que impede o treinamento de modelos com os seus dados e está disponível nos planos gratuito e pagos. O Privacy Mode é uma política sobre como o Cursor trata os dados que recebe. Ele não muda os hosts aos quais o editor se conecta.

O que o agente pode fazer e como é controlado

A documentação do Cursor diz que o agente executa comandos de shell no terminal, com o comportamento controlado pelos ajustes de Run Mode. Há três modos:

  • Auto-review executa chamadas reconhecidamente seguras, coloca comandos de shell em sandbox quando consegue e pede a um classificador que revise o resto.
  • Allowlist executa apenas ações confiáveis e pré-aprovadas.
  • Run Everything executa todos os comandos sem perguntar, o que a documentação trata como a opção de maior risco.

No macOS, a documentação diz que o Cursor coloca comandos em sandbox com o Seatbelt e o sandbox-exec, restringindo o acesso a arquivos, a conectividade de rede e o comportamento dos processos em toda a árvore de subprocessos. Isso exige o Cursor v2.0 ou posterior e não precisa de configuração extra em instalações de desktop. A rede dentro do sandbox fica limitada aos domínios de uma lista de permissões sandbox.json quando esse arquivo é usado sozinho e, por padrão, a lista é combinada com os domínios integrados do Cursor para gerenciadores de pacotes e ferramentas de desenvolvimento.

Um sandbox desse tipo restringe os comandos que o agente inicia. O próprio editor, que se comunica com os servidores do Cursor, roda fora desse limite, então as conexões dele continuam visíveis apenas no nível da rede.

Os hosts que o Cursor documenta

A página de configuração de rede do Cursor lista os domínios que o editor usa. Os documentados pelo fornecedor são:

Fonte: documentação do Cursor, configuração de rede. O Cursor afirma que usa streaming bidirecional HTTP/2 por padrão, com fallback para Server-Sent Events em HTTP/1.1, e TLS 1.2 ou superior em todas as conexões.
HostFinalidade documentada
api2.cursor.shA maioria das requisições de API
api5.cursor.sh e subdomínios de agente como agent.api5.cursor.shRequisições do agente do Cursor
Gateways api3.cursor.sh, api4.cursor.sh e *.gcpp.cursor.shRequisições do Cursor Tab (somente HTTP/2)
repo42.cursor.shBusca na base de código (somente HTTP/2)
authenticate.cursor.sh, authenticator.cursor.shEndpoint de autorização e webview de login
marketplace.cursorapi.com, cursor-cdn.com, downloads.cursor.comMarketplace e atualizações

Como o Cursor documenta um conjunto estável de domínios próprios, uma conexão do editor a um host fora desse conjunto, e fora dos gerenciadores de pacotes e dos sites com que você trabalha, é o tipo de evento que merece uma segunda olhada. Isso, por si só, não é prova de um problema: extensões, servidores MCP e os comandos que você aprova têm destinos próprios.

Por que uma visão de rede ainda ajuda

Os modos de execução decidem o que o agente pode fazer. Eles não dão a você um registro de para onde a máquina se conectou depois. Com Run Everything selecionado, por exemplo, não há pedido algum, e a rede passa a ser o lugar onde olhar. Veja também os artigos complementares sobre o Claude Code e o Windsurf, que tratam de ferramentas semelhantes.

Acompanhar o Cursor com o FireAI

O FireAI é um firewall para macOS feito pela HisnLabs e, desde a versão 1.0.2, tem um recurso chamado Agent profile. Ele reconhece 19 agentes de IA, aprende para onde cada um normalmente se conecta e sinaliza comportamentos incomuns para você revisar. O Cursor é reconhecido pela assinatura de código.

O Cursor é um dos três agentes que o FireAI confere pela assinatura de código do desenvolvedor, então uma correspondência é mais do que um nome.

O FireAI também reconhece os processos filhos do agente, como um shell, git ou curl que o agente executa, subindo pelos processos pais até chegar ao agente. Essas conexões, portanto, contam como do próprio agente.

O que o FireAI sinaliza

  1. Nos primeiros 3 dias, o FireAI aprende os destinos que o agente normalmente contata, agrupados por domínio. Nada é sinalizado durante esse período de aprendizado.
  2. Depois disso, um destino inédito fora da referência aprendida é sinalizado para revisão.
  3. Um pico de envio também é sinalizado: uma hora em que o agente enviou pelo menos 4 vezes o volume da sua hora mais intensa até então, e nunca menos de 25 MB.

O Agent profile usa apenas metadados, ou seja, nomes de host e contagens de bytes. O FireAI nunca lê o conteúdo de uma conexão e não consegue ler dentro de uma conexão criptografada.

Configurar para o Cursor

  1. Instale o FireAI e conclua a configuração, depois continue usando o Cursor como de costume. O período de aprendizado de 3 dias parte do que o FireAI observa.
  2. Abra Sugestões e veja o cartão Agentes de IA. Ele lista os agentes que o FireAI reconheceu e o que aprendeu sobre cada um.
  3. Quando o Cursor alcança um destino que nunca contatou, o alerta aparece no cartão Agentes de IA e na Revisão rápida. Deslize para a esquerda para bloquear ou para a direita para “Está tudo bem”.
  4. Bloquear cria uma regra para o processo que se conectou. “Está tudo bem” adiciona o destino à referência do agente, para que ele não seja sinalizado de novo.
  5. Se você quer que o agente fique nos lugares que já usa, escolha Perfil de agente no menu de modo de segurança, ao lado de Casa, Cafeteria, Paranoico e Sob ataque. Quando o agente termina o aprendizado, uma conexão a um destino fora da referência dele é bloqueada em vez de sinalizada.
  6. Um destino bloqueado aparece no cartão Agentes de IA com Permitir e Manter bloqueado. Permitir o adiciona à referência, e o agente pode alcançá-lo na hora. Manter bloqueado cria uma regra de bloqueio, então o destino continua bloqueado em todos os modos.

Limites

  • O FireAI não impede a injeção de prompt. Um prompt escondido em uma página web ou em um arquivo ainda pode conduzir um agente. O que o FireAI pode fazer é sinalizar, e deixar você bloquear, o caminho que os dados tomariam para sair do seu Mac.
  • O FireAI não vê prompts, o conteúdo de ferramentas MCP nem quais arquivos o Cursor lê, como ~/.ssh. O TLS oculta o conteúdo, e o FireAI não está dentro do agente.
  • Processos filhos que terminam muito rápido podem passar despercebidos, e os processos filhos são associados pelo caminho, não pela assinatura.
  • Durante o período de aprendizado de 3 dias, nada é sinalizado.
  • No modo Perfil de agente, uma conexão a um endereço IP puro, sem nome de host, é associada pelo endereço. Se um serviço que o agente normalmente usa responder de um novo endereço, ele fica bloqueado até você permiti-lo.
  • A explicação em palavras simples que o FireAI dá para um alerta é escrita a partir de fatos que ele mediu. Ela nunca diz que um destino é seguro ou perigoso. A decisão é sua.

Guias relacionados

A mesma abordagem vale para os outros agentes que o FireAI reconhece: Claude Code, o app Claude para desktop, o app ChatGPT para Mac, Codex CLI, OpenClaw, Hermes Agent, Gemini CLI, GitHub Copilot CLI, Amp, Qwen Code, opencode, Aider, Goose, Crush, Windsurf, Kiro, Trae, Muse da Meta, qualquer outro agente de IA executado por Python ou Node. A descrição completa do recurso está na documentação do Agent profile.

Onde FireAI e HisnLabs entram nessa história

O agente do Cursor pode executar comandos. O FireAI mostra para onde o seu Mac se conecta enquanto ele trabalha.

O FireAI é o produto da HisnLabs: um firewall com IA que roda direto no seu Mac. Ele mostra, em linguagem simples, cada conexão que seus aplicativos fazem e deixa você decidir o que sai do seu Mac — a IA roda localmente, então seu tráfego nunca é enviado para nós nem para ninguém. A equipe de pesquisa em segurança da HisnLabs é quem mantém essas decisões confiáveis: cataloga quais domínios são telemetria comum e quais são um serviço de verdade, rastreia o país e a rede por trás de uma conexão e treina o modelo local (o recurso FireAI Pilot) com padrões reais de tráfego, sem que nada disso saia do seu Mac.

Você pode ler as decisões técnicas por trás dele, ou testar o FireAI por 17 dias, em FireAI, da HisnLabs.

Fontes