El blog de seguridad de FireAI

Por FireAI Security & Research Team · Publicado

Monitorizar las conexiones de red de Cursor en Mac: seguridad de agentes de IA

Monitorizar las conexiones de red de Cursor en Mac: seguridad de agentes de IA

Cursor es un editor de código con IA desarrollado por Anysphere, Inc. Además de completar código, su agente puede ejecutar comandos de shell en una terminal, y el editor mantiene conexiones abiertas con el backend de Cursor para solicitudes, actualizaciones y su marketplace de extensiones. Este artículo resume lo que Cursor documenta sobre sus modos de ejecución, su sandbox en macOS y los hosts que usa, y muestra después cómo vigilar las conexiones del editor con FireAI.

Qué es Cursor

La página de seguridad de Cursor describe el producto como un editor de código basado en IA e indica que la aplicación realiza solicitudes a dominios del backend de Cursor para ofrecer funciones de API, actualizaciones y marketplace. También documenta un Privacy Mode que impide entrenar modelos con tus datos y está disponible en los planes gratuitos y de pago. Privacy Mode es una política sobre cómo trata Cursor los datos que recibe. No cambia a qué hosts se conecta el editor.

Qué puede hacer el agente y cómo se controla

La documentación de Cursor indica que el agente ejecuta comandos de shell en la terminal, con un comportamiento controlado por los ajustes de Run Mode. Hay tres modos:

  • Auto-review ejecuta las llamadas que se saben seguras, aplica sandbox a los comandos de shell cuando puede y pide a un clasificador que revise todo lo demás.
  • Allowlist solo ejecuta acciones de confianza aprobadas previamente.
  • Run Everything ejecuta todos los comandos sin preguntar, lo que la documentación trata como la opción de mayor riesgo.

En macOS, la documentación indica que Cursor aplica sandbox a los comandos con Seatbelt y sandbox-exec, restringiendo el acceso a archivos, la conectividad de red y el comportamiento de los procesos en todo el árbol de subprocesos. Requiere Cursor v2.0 o posterior y no necesita configuración adicional en las instalaciones de escritorio. La red dentro del sandbox se limita a los dominios de una lista de permitidos sandbox.json cuando ese archivo se usa solo, y por defecto la lista se combina con los dominios integrados de Cursor para gestores de paquetes y herramientas de desarrollo.

Un sandbox de este tipo restringe los comandos que inicia el agente. El propio editor, que se comunica con los servidores de Cursor, se ejecuta fuera de ese límite, así que sus conexiones solo son visibles a nivel de red.

Los hosts que documenta Cursor

La página de configuración de red de Cursor enumera los dominios que usa el editor. Los documentados por el proveedor son:

Fuente: documentación de Cursor, configuración de red. Cursor afirma que usa por defecto streaming bidireccional HTTP/2, con Server-Sent Events sobre HTTP/1.1 como alternativa, y TLS 1.2 o superior en todas las conexiones.
HostFinalidad documentada
api2.cursor.shLa mayoría de las solicitudes a la API
api5.cursor.sh y subdominios del agente como agent.api5.cursor.shSolicitudes del agente de Cursor
Pasarelas api3.cursor.sh, api4.cursor.sh y *.gcpp.cursor.shSolicitudes de Cursor Tab (solo HTTP/2)
repo42.cursor.shBúsqueda en la base de código (solo HTTP/2)
authenticate.cursor.sh, authenticator.cursor.shEndpoint de autorización y webview de inicio de sesión
marketplace.cursorapi.com, cursor-cdn.com, downloads.cursor.comMarketplace y actualizaciones

Como Cursor documenta un conjunto estable de dominios propios, una conexión del editor a un host fuera de ese conjunto, y fuera de los gestores de paquetes y sitios con los que trabajas, es el tipo de suceso que merece una segunda mirada. No es por sí misma prueba de un problema: las extensiones, los servidores MCP y los comandos que apruebas tienen destinos propios.

Por qué sigue siendo útil una vista de red

Los modos de ejecución deciden qué puede hacer el agente. No te dan un registro de a dónde se conectó la máquina después. Con Run Everything seleccionado, por ejemplo, no hay ningún aviso, y la red es entonces el lugar donde mirar. Consulta también los artículos complementarios sobre Claude Code y Windsurf, que tratan herramientas similares.

Vigilar Cursor con FireAI

FireAI es un cortafuegos para macOS desarrollado por HisnLabs y, desde la versión 1.0.2, cuenta con una función llamada Perfil de agente. Reconoce 19 agentes de IA, aprende a dónde se conecta normalmente cada uno y señala los comportamientos inusuales para que los revises. Cursor se reconoce por su firma de código.

Cursor es uno de los tres agentes que FireAI comprueba con la firma de código de su desarrollador, así que una coincidencia es algo más que un nombre.

FireAI también reconoce los procesos hijo del agente, como un shell, git o curl que el agente ejecute, recorriendo los procesos padre hasta llegar al agente. Por tanto, esas conexiones se cuentan como propias del agente.

Qué señala FireAI

  1. Durante los 3 primeros días, FireAI aprende los destinos con los que el agente contacta normalmente, agrupados por dominio. Durante este periodo de aprendizaje no se señala nada.
  2. A partir de ahí, un destino nunca visto fuera de la línea base aprendida se señala para su revisión.
  3. También se señala un pico de subida: una hora en la que el agente haya enviado al menos 4 veces lo de su hora de mayor actividad hasta entonces, y nunca menos de 25 MB.

Perfil de agente solo usa metadatos, es decir, nombres de host y recuentos de bytes. FireAI nunca lee el contenido de una conexión y no puede leer dentro de una conexión cifrada.

Configurarlo para Cursor

  1. Instala FireAI y completa la configuración; después sigue usando Cursor como de costumbre. El periodo de aprendizaje de 3 días parte de lo que FireAI observa.
  2. Abre Sugerencias y mira la tarjeta Agentes de IA. Muestra los agentes que FireAI ha reconocido y lo que ha aprendido de cada uno.
  3. Cuando Cursor llega a un destino con el que nunca ha contactado, la señal aparece en la tarjeta Agentes de IA y en Revisión rápida. Desliza a la izquierda para bloquear o a la derecha para «Está bien».
  4. Bloquear crea una regla para el proceso que se conectó. «Está bien» añade el destino a la línea base del agente para que no vuelva a señalarse.
  5. Si quieres mantener el agente en los lugares que ya usa, elige Perfil de agente en el menú de modos de seguridad, junto a Casa, Cafetería, Paranoico y Bajo ataque. Cuando el agente ha terminado de aprender, una conexión a un destino fuera de su línea base se bloquea en lugar de señalarse.
  6. Un destino bloqueado aparece en la tarjeta Agentes de IA con Permitir y Mantener bloqueado. Permitir lo añade a la línea base y el agente puede alcanzarlo de inmediato. Mantener bloqueado crea una regla de bloqueo, de modo que el destino sigue bloqueado en todos los modos.

Límites

  • FireAI no impide la inyección de prompts. Un prompt oculto en una página web o en un archivo puede seguir dirigiendo a un agente. Lo que FireAI puede hacer es señalar, y permitirte bloquear, el camino que seguirían los datos para salir de tu Mac.
  • FireAI no puede ver los prompts, el contenido de las herramientas MCP ni qué archivos lee Cursor, como ~/.ssh. TLS oculta el contenido, y FireAI no está dentro del agente.
  • Los procesos hijo que terminan muy deprisa pueden pasar inadvertidos, y los procesos hijo se identifican por su ruta, no por su firma.
  • Durante el periodo de aprendizaje de 3 días no se señala nada.
  • En el modo Perfil de agente, una conexión a una dirección IP directa sin nombre de host se identifica por su dirección. Si un servicio que el agente usa normalmente responde desde una dirección nueva, queda bloqueado hasta que lo permitas.
  • La explicación en lenguaje sencillo que FireAI da de una señal se redacta a partir de datos que ha medido. Nunca dice que un destino sea seguro o peligroso. La decisión es tuya.

Guías relacionadas

El mismo enfoque se aplica a los demás agentes que reconoce FireAI: Claude Code, la app de escritorio de Claude, la app de ChatGPT para Mac, Codex CLI, OpenClaw, Hermes Agent, Gemini CLI, GitHub Copilot CLI, Amp, Qwen Code, opencode, Aider, Goose, Crush, Windsurf, Kiro, Trae, Muse de Meta, cualquier otro agente de IA ejecutado con Python o Node. La descripción completa de la función está en la documentación de Perfil de agente.

El papel de FireAI y de HisnLabs

El agente de Cursor puede ejecutar comandos. FireAI muestra a dónde se conecta tu Mac mientras trabaja.

FireAI es el propio producto de HisnLabs: un cortafuegos con IA integrada para Mac. Muestra, en lenguaje claro, cada conexión que hacen tus aplicaciones y te deja decidir qué sale de tu Mac; su IA funciona en el propio equipo, así que tu tráfico nunca se envía a HisnLabs ni a nadie más. El equipo de investigación en seguridad de HisnLabs es quien mantiene esas decisiones fiables: cataloga qué dominios son simple telemetría frente a un servicio real, sigue el país y la red detrás de una conexión, y entrena el modelo local (la función FireAI Pilot) con tráfico real, sin que nada salga de tu Mac.

Puedes leer las decisiones técnicas detrás de esto, o probar FireAI durante 17 días, en FireAI, de HisnLabs.

Fuentes