동찰 Beating AI 속보, Cursor가 이전 Claude Code 플러그인 악성코드 주입 사건의 조사 결과를 발표했습니다. 2주간의 조사 끝에 회사는 공격의 근원이 자사의 AI 서비스 제공업체인 Fireworks임을 발견했습니다.
Cursor에 따르면, Fireworks가 Cursor로부터 부여받은 액세스 키 하나를 유출했습니다. 해커는 이 키를 이용해 Cursor가 공유 스토리지 공간에 보관 중이던 과거 Coding Agent 실행 기록을 복제했습니다. 이 데이터는 주로 2025년에 프라이버시 모드를 활성화하지 않은 사용자 세션에서 나온 것으로, 원래 모델 학습용이었습니다.
더 심각한 것은 일부 기록에 포함된 API 키가 비식별화 처리되지 않았다는 점입니다. 해커는 이 자격 증명을 이용해 Cursor가 사용하는 일부 내부 소프트웨어 서비스에 추가로 침입하여, 아카이브된 비프로덕션 코드, 고객 지원 이메일, 제품 사용 데이터, 일부 AI 대화 요약, 그리고 사용자가 고객 지원에 제출했던 자격 증명을 획득했습니다.
10월 29일, 해커는 다시 Cursor 내부에서 탈취한 자격 증명을 이용해 확장 스토어의 캐시를 직접 변조하여, SSH 백도어가 심어진 Claude Code 2.1.312 및 2.1.313 버전을 사용자에게 제공했습니다. 악성 버전은 약 11시간 동안 존재했으며, 최대 5000명의 사용자가 다운로드했을 가능성이 있습니다. 업스트림 플러그인 마켓인 Open VSX는 변조되지 않았으며, Anthropic 공식 버전도 영향을 받지 않았습니다.
Cursor는 이번에 유출된 Coding Agent 실행 기록이 0.05% 미만의 사용자와 관련되며, 그중 0.01% 미만의 사용자가 API 자격 증명을 노출했다고 밝혔습니다. 프라이버시 모드가 활성화된 세션, 고객 코드 저장소 및 프로덕션 시스템은 이번 공격의 영향을 받지 않았습니다.
Cursor는 해커 활동이 마지막으로 발견된 것은 11월 1일이며, 당시 성공적으로 차단했다고 밝혔습니다. 현재 회사는 영향을 받은 사용자에게 통보했고, Fireworks를 통한 추론 요청 처리를 전면 중단하고, 해당 업체의 데이터 접근 권한을 취소했으며, 내부 자격 증명을 교체하고 프로덕션 인프라를 재배포했습니다.