Cursor는 10월 29일 보안 공지를 내고, 자사 VS Code 확장 마켓에 변조된 Anthropic.claude-code 2.1.313 버전이 나타났다고 밝혔다. 이 버전은 Anthropic이 만든 것이 아니며, 최대 약 5천 명의 사용자가 내려받았다. Cursor는 해당 버전을 내리고 확장 마켓 전체를 한때 닫았으며, 자체 키를 교체한 뒤 마켓을 재구축해 다시 열었다. 영향을 받은 사용자에게는 개별적으로 연락하겠다고 했다.
공지에 적힌 시간에 따르면 악성 버전은 태평양 시간 당일 새벽 2시 27분경부터 내려받을 수 있었고, 오후 1시 35분에야 철회됐다. 노출 시간은 약 11시간이다. Cursor는 공식 버전과 마켓의 다른 확장 프로그램에서 변조 흔적은 현재 발견되지 않았다고 밝혔다.
설치된 뒤 무엇을 했나
이 확장 프로그램은 먼저 호스트 이름, 사용자 이름, 운영체제와 아키텍처, 홈 디렉터리 경로, 환경 변수 이름, 현재 작업 디렉터리, Git 이메일, 공인 IP 등 호스트 정보를 수집한다. 그런 다음 공격자 서버 8099번 포트의 /beacon 엔드포인트로 HTTP POST 전송한다.
이어서 장기 백도어를 남기려 했다. authorized_keys에 공격자의 SSH 공개 키를 써 넣고, 로컬 SSH 서비스를 켠 뒤, 공격자 쪽으로 연결되는 리버스 SSH 터널을 만든다. macOS에서는 LaunchAgent로 지속성을 확보하고, Windows에서는 SYSTEM 권한으로 작업 스케줄러 등록을 시도하다 실패하면 시작 스크립트로 대체한다. 백그라운드 스크립트는 약 60초마다 터널 연결을 재시도한다.
공격자의 코드에는 결함이 있었다. Cursor가 관리자 권한으로 실행된 경우가 아니라면 터널 생성 단계는 대부분 실패한다. 공격자 서버도 이미 호스팅 업체에 의해 내려가, 터널과 정보 전송 모두 현재는 연결되지 않는다. 그럼에도 Cursor는 터널이 만들어지지 않았다고 안전한 것은 아니라고 경고한다. 공개 키, 지속성 스크립트, 이미 전송된 호스트 정보는 모두 남아 있을 수 있다.
“Uninstalling the extension may not be sufficient — the payload drops standalone persistence scripts that keep running.”(확장 프로그램을 삭제하는 것만으로는 부족할 수 있다. 페이로드가 독립적으로 계속 실행되는 지속성 스크립트를 남긴다.)
사용자가 확인할 것
공지가 안내하는 점검 방법은 비교적 직접적이다. SSH 인증 키 목록에 svc-telemetry라는 이름의 공개 키가 있는지 확인한다. 터미널, 네트워크, 확장 설치 로그에서 공지에 나열된 IP, 포트, 두 개의 VSIX 파일 해시(macOS arm64용과 Windows x64용 두 패키지)를 검색한다. 실행 흔적이 발견된 기기는 먼저 격리하고, 공식 스크립트로 키, 지속성 항목, 터널 프로세스를 제거하며, 필요하면 재설치한다.
마지막 단계는 놓치기 쉽다. 그 기기에서 접근할 수 있던 자격 증명과 세션을 모두 교체해야 하며, 반드시 깨끗한 컴퓨터에서 해야 한다. Cursor는 확장 프로그램이 환경 변수의 이름만 읽었을 뿐 값은 읽지 않았다고 설명하지만, 백도어가 한번 열리면 공격자가 나중에 다시 가져갈 수 있다.
코딩 도구가 공급망 공격의 표적이 됐다
지난 1년을 돌아보면 AI 코딩 도구 주변의 공급망 사고는 끊이지 않았다. 본 매체는 AI 서비스 키를 훔치기 위해 LiteLLM 1.107.0에 악성 코드가 심긴 사건과, VS Code 확장 프로그램 취약점으로 GitHub 저장소 3800개가 유출된 사건을 보도한 바 있다. 이번에 공격자가 고른 것은 Claude Code라는 이름이다. 설치 규모가 크고, 사용자도 터미널과 파일 권한을 내주는 데 익숙하기 때문에 사칭의 이득이 크다.
Cursor, Windsurf처럼 VS Code를 기반으로 만든 에디터는 Microsoft 공식 확장 마켓을 직접 쓸 수 없다. Open VSX에 연결하거나 자체 배포 채널을 구축해야 하며, 심사와 서명 체계는 업체마다 다르다. Anthropic은 이 사안에 대해 공식 입장을 내지 않았고, 사칭 버전이 어떻게 공식 게시자 명의로 올라갔는지도 Cursor는 설명하지 않았다. 이 고리가 막히기 전까지는 다른 인기 확장 프로그램도 같은 방식으로 사칭될 수 있다.
중국 개발자에게도 남의 일이 아니다. Cursor 사용자가 많고, 사내망 PC에 이런 에디터를 설치해 둔 경우도 흔하다. 10월 29일 전후로 Claude Code 확장을 업데이트했다면 위 절차대로 점검하는 데 드는 비용은 매우 작다.
참고 출처: Cursor 보안 공지(영향받은 버전 번호, 다운로드 시간대, 5천 명 상한 확인), CocoLoop, Cursor 공지에 첨부된 침해 지표 목록(포트, 재시도 간격, 두 VSIX 해시 확인).