Cursor IDE 임의 코드 실행 취약점

Cursor IDE 임의 코드 실행 취약점

악성 Git 바이너리를 통한 임의 코드 실행

Cursor IDE에는 사용자 상호 작용 없이 Windows 시스템에서 임의 코드 실행(ACE)을 가능하게 하는 취약점이 존재합니다. Cursor가 프로젝트를 로드할 때, 경로 해석 로직이 현재 작업 공간 루트를 포함한 여러 위치에서 Git 바이너리를 검색합니다. 공격자가 저장소 루트에 git.exe라는 악성 실행 파일을 배치하면, Cursor는 정상적인 동작 중에 이를 자동으로 실행합니다.

이 취약점은 일회성 이벤트가 아니라, 프로젝트가 열려 있는 동안 Cursor가 주기적으로 바이너리를 호출하므로, 공격자는 프롬프트, 승인 대화 상자 또는 경고 없이 지속성을 유지하거나 명령을 여러 번 실행할 수 있습니다.

기술적 근본 원인 및 개념 증명

취약점은 Cursor의 Git 바이너리 조회 과정에서 비롯됩니다. IDE는 버전 관리 작업을 수행하기 위해 git 명령을 찾으려고 시도합니다. 검색 경로에 작업 공간 디렉터리를 포함시키기 때문에, 시스템 전체에 설치된 Git보다 로컬 git.exe를 우선시합니다.

Mindgard는 무해한 개념 증명을 통해 이 취약점을 보여주었습니다: Windows 계산기 애플리케이션의 이름을 git.exe로 바꾸고 저장소 루트에 배치한 것입니다. Cursor에서 프로젝트를 열면 IDE가 자동으로 계산기 앱을 여러 인스턴스 실행했습니다. Sysinternals Process Monitor 로그는 Cursor.exegit rev-parse --show-toplevel 명령줄을 사용해 로컬 git.exe 프로세스 생성을 시작했음을 확인합니다.

완화 및 보호 전략

Cursor에서 공식 패치가 배포될 때까지 사용자와 관리자는 다음과 같은 보호 조치를 적용해야 합니다:

기업 및 관리형 Windows 시스템용

관리자는 AppLocker 또는 Windows App Control 정책을 사용해 개발자 작업 공간 디렉터리에서 바이너리 실행을 차단해야 합니다. 해시 기반 규칙보다 경로 기반 차단 규칙을 권장하여 다양한 공격자 바이너리에 대응합니다. 권장 규칙 범위 예시: %USERPROFILE%\source\repos\*\filename.exe.

개인 개발자용

신뢰할 수 없는 저장소를 호스트 머신에서 직접 열지 말고, 다음과 같은 격리된 환경을 사용하십시오:

  • Windows Sandbox
  • 격리된 가상 머신(VM)
  • 일회성 개발 컨테이너

공개 일정 및 공급업체 대응

Mindgard는 2025년 12월 15일 이 취약점을 최초 식별하고 보고했습니다. 7개월에 걸친 조정 시도에도 불구하고, 2026년 4월 30일(버전 3.2.16)까지 테스트된 버전에서는 여전히 패치되지 않았습니다.

공개 일정에 따르면 보고 과정에서 여러 차례 실패가 발생했습니다:

  • 초기 보고: 2025년 12월 15일 공식 security.txt 이메일을 통해 전송.
  • 분류: LinkedIn을 통한 공개 outreach 후, Cursor CISO가 HackerOne 워크플로우의 자동화 오류를 인정하고 2026년 1월 15일 연구자들을 버그 바운티 프로그램에 수동으로 초대.
  • 확인: HackerOne이 문제를 재현하고 2026년 1월 20일 Cursor에 전달을 확인.
  • 침묵: 2026년 2월부터 6월까지 HackerOne 및 직접적인 리더십 outreach에 대한 업데이트 요청이 무응답.

커뮤니티 관점 및 반론

공개 이후 개발자 커뮤니티는 취약점의 심각성과 성격에 대해 여러 의견을 제시했습니다:

높은 심각도에 반대하는 주장

일부 사용자는 공격자가 이미 사용자의 파일 시스템에 파일을 보유해야 한다는 점에서 취약점이 덜 중요하다고 주장합니다. 한 댓글은 다음과 같이 적었습니다:

"공격자는 사용자의 코드 폴더에 악성 .exe 파일을 git.exe라는 이름으로 배치해야 합니다... 이미 파일 시스템에 그런 것이 있다면 이미 침해당한 것입니다."

다른 의견은 Windows 접근 제어 목록(ACL)이나 서명되지 않은 애플리케이션 경고가 보안 기능이 비활성화되지 않은 경우 영향을 완화할 수 있다고 제시했습니다.

높은 심각도를 지지하는 주장

다른 기여자들은 공개 소스에서 손상된 저장소를 복제하는 사용자가 흔히 겪는 벡터라고 지적했습니다. IDE는 신뢰되지 않은 코드를 다루는 도구이므로, 사용자가 IDE 작업 공간 신뢰 대화 상에서 "이 폴더를 신뢰"를 클릭했는지 여부와 관계없이 명시적 사용자 동의 없이 바이너리를 자동 실행해서는 안 된다고 강조했습니다.

시스템적 우려

논의는 AI 기반 개발 도구의 광범위한 함의까지 확장되었습니다. 일부는 왜 이러한 기능이 존재하는지 의문을 제기하고, AI 분야의 급속한 성장과 높은 평가액이 기업이 기본 보안 위생 및 신속한 취약점 공개 프로세스를 소홀히 하게 만들고 있다고 우려했습니다.

요약:

Cursor IDE의 중요한 취약점은 프로젝트 루트 디렉터리에 배치된 악성 git.exe 파일을 자동으로 실행함으로써 Windows에서 임의 코드 실행을 가능하게 합니다.

제목:

Cursor IDE 임의 코드 실행 취약점

Sources