Cursor 마켓의 Claude Code VS Code 2.1.313, SSH 백도어 심은 채 배포됨
- Phorion이 Cursor 마켓에 올라간 Claude Code for VS Code 2.1.313 번들에서 macOS, Linux, Windows에 상시 SSH 접속을 여는 백도어를 발견함. 주입된 IIFE는 Node가 extension.js를 로드하는 즉시, 확장의 activate 콜백 전에 실행돼 사용자 조작 없이 페이로드가 발동함
- 백도어는 ~/.ssh/authorized_keys에 svc-telemetry 주석이 붙은 Ed25519 공개키를 덧붙이고 디렉터리 0700, 파일 0600 권한을 설정함. 중복 확인을 키가 아니라 주석 문자열로 하므로 탐지할 때는 공개키 지문을 확인해야 함
- macOS에서는 sudo 없이 systemsetup -getremotelogin을 돌리면 관리자 권한 오류를 출력하면서 종료 코드 0을 반환해 /Off/i 매칭에 실패하고, SSH 활성화 단계를 통째로 건너뛰는 버그가 있음. 그래도 키와 지속성은 그대로 남음
- Windows 경로도 /bin/sh를 하드코딩한 det() 헬퍼로 PowerShell 서비스 설치 명령을 넘기는 버그가 있고, 권한 상승 익스플로이트는 없어 sudo -n은 실패함
- Cursor는 해당 릴리스를 마켓에서 제거하고 2.1.313의 NPM, VS Code 배포본도 회수함. Anthropic의 Dworken은 Cursor 마켓 호스팅분만 영향을 받았고 공식 VS Code 마켓과 OpenVSX는 무관하다고 밝힘
Hacker News opinions
확장 설치 수가 2,700만이 넘는다니 아찔하네. 개발자 생태계 대부분이 깔고 쓴다는 뜻 아님?
문제 버전은 마켓에서 내렸다지만 이미 감염된 기계는 그대로야. 정리 작업을 할 생각은 있는지 모르겠음.
글은 Cursor 마켓만 언급하는데 공식 VS Code 마켓에서도 2.1.313이 사라졌길래 혹시 그쪽도 털린 건지 궁금함.
세부가 너무 없어서 얼마나 심각한지 감이 안 잡힘. 우리 조직 사람들 대부분 VS Code 확장 쓰는데 얼마나 걱정해야 하나.
그거 공식 확장 아니었음. Open VSX에 10월 30일 올라간 2.1.313이 악성이라고 보안 연구자 Paul McCarty가 확인했대. 공식 빌드만 쓰는 게 답임.
일단 쓰는 사람은 자기 개발 환경부터 점검해보는 게 좋겠음.
Anthropic이 뚫린 게 아니라 Cursor 마켓 쪽 사고 아닌가. Cursor는 OpenVSX를 쓰니까.
OpenVSX 확장 소유자는 Anthropic 직원 Igor Kofman이라 배포 권한은 Anthropic 쪽에 있었음. 공식 VS Code 마켓에서도 2.1.313이 안 보이고 GitHub CHANGELOG에도 태그가 2.1.312, 2.1.314만 있는 걸 보면 Anthropic 쪽 문제 같음.
Anthropic의 Dworken이 직접 나와서 Cursor 마켓에 호스팅된 확장만 영향받았고 공식 VS Code 마켓과 OpenVSX는 아니라고 못 박았더라.
VS Code 확장은 보안 관점에서 늘 위험했음. Anthropic 코드라서 안전한 게 아니라 아무나 올릴 수 있는 구조가 문제임. SolarWinds가 떠오름.
나는 작업 디렉터리를 컨테이너에 마운트하고 하네스 설정은 named volume으로 빼서 씀. 다만 Docker 작업을 시키면 소켓이 필요해서 그 순간 격리가 뚫림.
매일 업데이트를 푸시하는 것 같던데, 6개월 전에 설치하고 안 건드렸으면 괜찮은 건가?
그건 그냥 추측이고 포스트모템이 나와야 백도어가 언제 들어갔는지 알 수 있음. 운이 좋았거나 이미 털렸거나 둘 중 하나임. VS Code 확장은 기본이 자동 업데이트라 안 건드린다는 선택지도 없고.
프론티어 개발 도구를 그렇게 갖고도 100배 속도로 안전하게 못 내는 게 말이 안 됨. 결국 사고 났잖아.