커서, 저장소 여는 순간 악성코드 실행
루트에 심긴 가짜 git.exe가 클릭 없이 실행…신고 7개월째 미수정 상태
AI 코딩 도구 커서(Cursor)에서 저장소를 열기만 해도 공격자의 코드가 실행되는 취약점이 전면 공개됐다. 보안 업체 마인드가드(Mindgard)의 애런 포트노이(Aaron Portnoy)가 2026년 7월 14일 상세 내용을 공개하며 밝힌 사유는 「고칠 의사가 보이지 않아서」다. 최초 신고는 2025년 12월 15일이었고, 그 뒤 197개가 넘는 새 버전이 나왔지만 마인드가드가 마지막으로 시험한 최신 버전에도 문제가 그대로 남아 있다고 한다.
무슨 일인가 / 배경
기술적 내용은 허무할 만큼 단순하다. 윈도우에서 커서가 프로젝트를 로드할 때 깃(Git) 실행 파일을 여러 경로에서 찾는데, 그 탐색 후보에 지금 연 작업 폴더 자체가 포함된다. 그래서 공격자가 저장소 루트에 악성 git.exe를 심어두면, 커서가 경로를 해석하는 과정에서 그 파일을 자동으로 실행해 버린다. 클릭도, 승인 창도, 경고도 없다. 게다가 한 번으로 끝나지 않고 일정 주기로 반복 실행된다.
마인드가드는 안전한 개념검증을 위해 윈도우 계산기를 git.exe로 이름만 바꿔 저장소 루트에 넣었다. 그 저장소를 커서로 여는 것만으로 계산기가 떴다. 프롬프트 인젝션도, 모델 조작도, 탈옥도, 메모리 손상도, 정교한 공격 기법도 필요 없다. 필요한 건 개발자가 저장소를 여는 행위 하나뿐이다.
파장이 작지 않은 건 커서의 규모 때문이다. 마인드가드가 인용한 수치로 활성 사용자 700만 명 이상, 일간 100만 명 이상, 유료 사용자 100만 명 이상, 도입 기업 5만 곳 이상이며, 시장에서 거론되는 몸값은 600억 달러 수준이다.
핵심 짚어보기 — 버그보다 무서운 건 침묵
이 글의 무게 중심은 취약점 자체가 아니라 그 뒤 7개월이다. 마인드가드는 회사가 security.txt에 공개해 둔 보안 신고 주소로 먼저 알렸다. 확인 회신이 없어 후속 연락을 보냈고, 담당자를 찾으려 공개 채널로도 수소문했다. 결국 커서의 최고정보보호책임자(CISO)가 응답해, 내부 자동화가 실패해 해커원(HackerOne) 워크플로가 작동하지 않았다고 인정했다. 마인드가드는 비공개 버그바운티에 초대받아 보고서를 다시 제출했다. 그 보고서는 처음에 「정보성·범위 외」로 종결됐다. 이의를 제기하자 해커원이 보고서를 다시 열어 문제를 재현했고, 내용이 커서 측에 전달됐음을 확인했다.
그리고 모든 것이 멈췄다. 진행 상황 문의도, 추가 후속 연락도, 해커원을 통한 에스컬레이션도, 경영진 직접 접촉도 답을 받지 못했다. 그사이 릴리스는 계속 나왔다. 기능이 실리고 발표가 이어지고 제품은 진화했지만 취약점은 남아 있었다. 마인드가드가 마지막에 던지는 질문은 뼈아프다. 그렇다면 그 보안 프로세스는 대체 무엇을 위해 존재하는가.
1인기업 실전 적용 포인트
- 낯선 저장소를 커서로 바로 열지 마라. 깃허브에서 클론한 남의 코드, 외주로 받은 프로젝트, 채용 과제 제출물이 전부 해당된다. 마인드가드의 권고는 명확하다. 패치 전까지 신뢰할 수 없는 저장소는 격리된 가상머신이나 윈도우 샌드박스 같은 일회용 환경에서만 열 것.
- 「열고 나서 코드를 훑어본다」는 순서는 무의미하다. 여는 순간 실행되기 때문이다. 열기 전에 탐색기에서 루트에 .exe 파일이 있는지 확인하는 게 유일하게 유효한 습관이다. 확장자 숨김 설정은 꺼두는 편이 낫다.
- 관리 대상 윈도우라면 경로 기반 차단 규칙을 걸어라. AppLocker나 윈도우 앱 제어로 작업 폴더 경로(예: %USERPROFILE%\source\repos\*\filename.exe)에서의 실행을 거부하는 방식이다. 해시 기반 차단 목록은 쓰지 말라고 명시돼 있다. 공격자가 바이너리를 조금만 바꿔도 해시가 달라지기 때문이다.
- 클라이언트 코드를 받는 절차에 이 단계를 명문화하라. 1인기업은 보안팀이 없으니 체크리스트가 보안팀이다. 「외부 저장소는 샌드박스에서 1차 확인」 한 줄이면 된다.
전망 / 주의점
윈도우는 특정 부모 프로세스가 띄운 자식 실행 파일만 골라 차단하는 일반 규칙을 기본 제공하지 않는다. 따라서 부모 인식 차단을 원하면 EDR이나 별도 엔드포인트 보안 제품이 필요하다. 1인기업에는 현실적으로 과한 요구이고, 그래서 격리 환경이라는 원시적 해법이 사실상 유일한 방어선이다.
한편 벤더가 침묵하는 상태에서의 전면 공개는 방어자에게 정보를 주는 동시에 공격자에게 완성된 설계도를 건네는 일이기도 하다. 마인드가드는 그 선택을 「남은 유일한 보호 수단」이라 표현했다. 이 사건이 남기는 교훈은 도구 선택 기준에 관한 것이다. 개발 도구의 신뢰도는 기능 목록이 아니라 문제가 터졌을 때의 대응으로 결정된다.
출처: 마인드가드(Mindgard) 블로그 (https://mindgard.ai/blog/cursor-0day-when-full-disclosure-becomes-the-only-protection-left)