CVE-2024-45599

Cursor is an artificial intelligence code editor. Prior to version 0.41.0, if a user on macOS has granted Cursor access to the camera or microphone, any program that is run on the machine is able to access the camera or the microphone without explicitly being granted access, through a DyLib Injection using DYLD_INSERT_LIBRARIES environment variable. The usage of `com.apple.security.cs.allow-dyld-environment-variables` and `com.apple.security.cs.disable-library-validation` allows an external dynamic library to be injected into the application using DYLD_INSERT_LIBRARIES environment variable. Moreover, the entitlement `com.apple.security.device.camera` allows the application to use the host camera and `com.apple.security.device.audio-input` allows the application to use the microphone. This means that untrusted code that is executed on the user's machine can access the camera or the microphone, if the user has already given permission for Cursor to do so. In version 0.41.0, the entitlements have been split by process: the main process gets the camera and microphone entitlements, but not the DyLib entitlements, whereas the extension host process gets the DyLib entitlements but not the camera or microphone entitlements. As a workaround, do not explicitly give Cursor the permission to access the camera or microphone if untrusted users can run arbitrary commands on the affected machine.
Configurations

No configuration.

History

26 Sep 2024, 13:32

Type Values Removed Values Added
Summary
  • (es) Cursor es un editor de código de inteligencia artificial. Antes de la versión 0.41.0, si un usuario en macOS le había otorgado a Cursor acceso a la cámara o al micrófono, cualquier programa que se ejecutara en la máquina podía acceder a la cámara o al micrófono sin que se le otorgara acceso explícito, a través de una inyección DyLib utilizando la variable de entorno DYLD_INSERT_LIBRARIES. El uso de `com.apple.security.cs.allow-dyld-environment-variables` y `com.apple.security.cs.disable-library-validation` permite que se inyecte una librería dinámica externa en la aplicación utilizando la variable de entorno DYLD_INSERT_LIBRARIES. Además, el derecho `com.apple.security.device.camera` permite que la aplicación use la cámara del host y `com.apple.security.device.audio-input` permite que la aplicación use el micrófono. Esto significa que el código no confiable que se ejecuta en la máquina del usuario puede acceder a la cámara o al micrófono, si el usuario ya le dio permiso a Cursor para hacerlo. En la versión 0.41.0, los derechos se han dividido por proceso: el proceso principal obtiene los derechos de la cámara y el micrófono, pero no los derechos de DyLib, mientras que el proceso host de extensión obtiene los derechos de DyLib pero no los derechos de la cámara o el micrófono. Como workaround, no le dé explícitamente a Cursor el permiso para acceder a la cámara o al micrófono si los usuarios no confiables pueden ejecutar comandos arbitrarios en la máquina afectada.

25 Sep 2024, 01:15

Type Values Removed Values Added
New CVE

Information

Published : 2024-09-25 01:15

Updated : 2024-09-26 13:32


NVD link : CVE-2024-45599

Mitre link : CVE-2024-45599

CVE.ORG link : CVE-2024-45599


JSON object : View

Products Affected

No product.

CWE
CWE-277

Insecure Inherited Permissions