Claude Code VS Code 확장에 SSH 백도어 발견
원제: Backdoor in Claude Code for VS Code extension on the Cursor Marketplace
왜 중요한가
공식 검증 채널을 통해 배포된 개발 도구 확장이 공급망 공격 경로로 활용됐다는 점에서 개발자 환경 전반의 신뢰 체계가 흔들릴 수 있다.
보안업체 Phorion이 2026년 10월 30일, Cursor Marketplace에 등록된 공식 Claude Code for VS Code 확장(버전 2.1.313)에서 지속형 SSH 백도어를 발견했다. 해당 백도어는 macOS, Linux, Windows 전 플랫폼을 대상으로 하며, Cursor는 즉시 해당 버전을 마켓플레이스와 NPM, VSCode 레지스트리에서 삭제했다.
Phorion의 분석에 따르면, 악성 코드는 공식 확장 파일 `extension.js`의 정상 번들 앞에 즉시 실행 함수 표현식(IIFE)을 삽입하는 방식으로 은폐됐다. Node.js가 파일을 로드하는 순간 자동 실행되며, 사용자의 별도 상호작용이 없어도 페이로드가 즉시 동작한다.
공격 체인은 크게 두 단계로 구성된다. 1단계에서는 `~/.ssh` 디렉터리를 생성하고 공격자가 제어하는 Ed25519 공개키를 `~/.ssh/authorized_keys`에 추가해 SSH 접근 경로를 확보한다. 해당 키는 `svc-telemetry`라는 주석을 사용한다. IDE 확장은 실행 중인 사용자 권한 그대로 동작하기 때문에, 백도어는 로컬 파일, 소스코드, 개발자 툴체인에 곧바로 접근할 수 있다.
Phorion은 macOS에서 악성코드의 설계 결함도 확인했다. 페이로드가 `systemsetup -getremotelogin` 명령으로 원격 로그인(SSH) 상태를 확인하는데, 이 명령은 루트 권한 없이 실행 시 오류 메시지를 출력하고 상태 코드 0으로 종료된다. 스크립트는 출력값이 `Off`일 때만 SSH를 활성화하도록 설계됐기 때문에, 일반 사용자로 실행되면 SSH 활성화 단계 자체가 생략된다. SSH가 꺼진 Mac에서는 실질적인 인바운드 접근이 차단되는 셈이다. 그러나 SSH 키와 지속성 메커니즘 자체는 여전히 설치되며, 호스트 정보를 공격자 서버로 전송하는 비콘 기능은 정상 작동한다.
Cursor는 해당 버전을 마켓플레이스, NPM, VSCode 레지스트리에서 모두 제거했다. Phorion은 Claude Code for VSCode 2.1.313 사용 여부를 즉시 점검하고, 사용 흔적이 확인될 경우 인시던트 대응 절차를 가동할 것을 권고했다.