읽는 데 6분
Cursor에서 받은 Claude Code 확장, 삭제만으로 끝나지 않는 보안 사고
코딩 도구의 확장을 업데이트했을 뿐인데, 확장을 지워도 남는 원격 접속 장치가 설치될 수 있었어요. Cursor는 자사 VS Code Extension Marketplace에서 변조된 Claude Code 확장이 배포됐다고 공지했어요. 확장 이름은 Anthropic.claude-code이지만, Cursor는 문제의 악성 버전은 Anthropic이 개발한 것이 아니라고 밝혔어요.
이번 사고는 어디에서 어떤 버전을 받았는지를 함께 확인해야 해요. 아래 범위는 11월 1일 읽은 Cursor 공식 공지의 10월 30일 갱신 내용을 기준으로 정리했어요.
어떤 설치가 점검 대상인가요
| 항목 | 공식 공지가 지정한 범위 |
|---|---|
| 배포 경로 | Cursor VS Code Extension Marketplace |
| 확장 | Anthropic.claude-code |
| 버전 | 2.1.312, 2.1.313 |
| 운영체제 | Windows, macOS |
| 설치 또는 업데이트 시간 | 한국 시간 2026년 10월 29일 18:27경부터 10월 30일 05:35경까지 |
초기 보도만 읽었다면 버전 범위를 다시 확인할 필요가 있어요. Ars Technica 기사는 주로 2.1.313을 다뤘지만, 갱신된 공식 공지는 2.1.312도 명시해요. 공식 문서는 다른 버전이나 공식 배포본이 영향을 받았다는 증거는 없다고 설명해요. Claude Code의 모든 설치 경로가 같은 사고에 해당한다고 넓혀 읽으면 안 돼요.
원격 접속이 실패해도 확인해야 하는 이유
악성 코드는 호스트 이름, 사용자 이름, 운영체제, 홈 디렉터리, 환경변수 이름과 Git 이메일 같은 정보를 수집해 전송해요. 여기서 공지가 명시한 것은 환경변수의 이름이에요. 모든 환경변수의 값이나 비밀키가 이 단계에서 유출됐다고 발표한 것은 아니에요.
동시에 공격자의 SSH 공개키를 원격 로그인 허용 목록에 추가하고, 로컬 SSH 서비스를 켠 뒤 바깥 서버로 연결을 시도해요. SSH는 원격에서 컴퓨터에 접속할 때 쓰는 통로예요. 다시 로그인하거나 컴퓨터를 켠 뒤에도 연결을 재시도하도록 자동 실행 설정과 스크립트를 남기려 했어요.
Cursor에 따르면 일반적인 Windows와 macOS 환경에서는 관리자 권한 부족과 악성 코드의 오류 때문에 SSH 서비스를 켜는 단계가 실패해요. 하지만 키 추가, 자동 실행 설정과 스크립트 설치, 호스트 정보 전송은 별도로 남을 수 있으니 대응 절차를 따르라고 안내해요. “원격 접속이 실패했다”와 “아무 변화도 없었다”는 다른 이야기예요.
확장 삭제 다음에 해야 할 일
Cursor는 악성 버전을 제거하고 추가 배포를 차단했어요. 마켓플레이스를 잠시 닫은 뒤 접근을 감사하고 키를 교체해 다시 열었으며, 호스팅 제공업체와 협력해 공격 서버도 중단시켰다고 밝혔어요.
영향 범위에 들어가는 설치가 있었다면 공식 공지의 점검 및 복구 절차를 확인하세요. 공지는 다음 조치를 안내해요.
- 확장 설치 이력과 기기 및 네트워크 기록을 공지의 침해 지표와 대조해요. 침해 지표는 악성 파일이나 연결 흔적을 찾기 위한 단서예요.
- 악성 코드 실행이나 원격 접속 장치 설치 흔적이 있는 기기는 격리해요.
- 무단 SSH 키, 자동 실행 설정과 스크립트, 연결 프로세스를 제거하고, 운영체제 재설치 등으로 기기 환경을 새로 구축해야 할지도 검토해요.
- 영향받은 기기에서 접근할 수 있었던 인증정보와 세션은 신뢰할 수 있는 다른 기기에서 교체하거나 폐기해요.
공식 공지에는 운영체제별 복구 스크립트도 있어요. 조직의 개발 장비라면 보안 담당자에게 설치 버전과 시간을 전달하는 편이 좋아요.
확장 제거만으로 충분하지 않을 수 있다는 게 공식 대응의 핵심이에요. 확장 바깥에 별도의 지속 실행 스크립트를 남기기 때문이에요. 공격 서버가 중단됐다는 발표도 이미 남은 흔적을 제거하는 절차를 대신하지 않아요.
확인한 범위
- 기준일: 2026-11-01.
- 읽은 것: Cursor 공식 보안 공지와 10월 30일 갱신 내용, Ars Technica 보도를 대조했어요. 영향 버전은 갱신된 공식 공지를 우선했어요.
- 시간 확인: 공식 공지의 10월 29일 02:27~13:35 PT를 당시 오프셋인 UTC-7 기준으로 한국 시간으로 변환했어요.
- 읽지 못한 것: 공격자가 배포 경로를 장악한 최초 원인과 개별 사용자 기기의 실제 피해는 확인하지 못했어요.
- 직접 해보지 못한 것: 악성 확장과 공격 코드를 실행하지 않았고, 복구 스크립트의 동작도 시험하지 않았어요.
출처



