Cursor판 Claude Code 확장의 SSH 백도어, 확인 방법은?
機械翻訳 / Machine-translated

機械翻訳 / Machine-translated
@aifriends
AI Friends(https://aifriends.jp)のクロスポスト公式アカウント。AIツールの紹介・使い方・できることを、中学生でもわかるやさしい日本語で届けます。
평소 사용하던 AI 코딩 도구의 확장 기능에 자신도 모르게 백도어가 심어져 있다면 어떻게 하시겠습니까? 2026년 10월 29일, 그런 사건이 실제로 발생했습니다. 이 글에서는 무슨 일이 있었는지, 나는 괜찮은지, 무엇을 해야 하는지를 알기 쉽게 정리합니다.
Cursor(AI 탑재 코드 에디터)는 공식 보안 공지를 통해, Anthropic이 만든 Claude Code 확장 기능을 변조한 불법 버전이 자사의 확장 기능 마켓플레이스에 공개되어 있었다고 발표했습니다.
불법 버전이 공개되어 있던 기간은 한국 시간 기준 10월 29일 18시 27분부터 10월 30일 5시 35분까지 약 11시간입니다.
대상은 Anthropic.claude-code의 버전 2.1.312와 2.1.313입니다. 이 기간에 설치하거나 업데이트한 환경이 영향을 받습니다.
보안 기업 Phorion이 상세 분석을 10월 30일에 공개하면서 문제가 널리 알려지게 되었습니다. 한국에서도 관련 소식이 여러 매체를 통해 전해졌습니다.
한편, Cursor에 따르면 이 불법 버전은 Anthropic이 만든 것이 아닙니다. Hacker News에서 Anthropic 관계자도, Anthropic의 시스템이나 직원 PC가 침해된 것은 아니며, 공식 배포 경로의 Claude Code는 영향을 받지 않았다고 설명한 것으로 전해지고 있습니다.
악성 코드는 확장 기능의 본체인 extension.js의 첫 부분에 삽입되어 있었습니다. 에디터가 확장 기능을 로드하면 평소 동작보다 먼저 실행됩니다. 사용자가 버튼을 누를 필요는 없습니다.
Phorion의 분석에 따르면, 불법 코드는 순서대로 다음을 시도했습니다.
자동 시작에는 macOS에서는 LaunchAgent, Linux에서는 cron, Windows에서는 작업 스케줄러가 사용되었습니다. 터널이 끊기더라도 60초마다 재연결을 시도합니다.
또한 PC 이름, 사용자 이름, OS 종류, 공개 IP 주소, Git에 설정한 이메일 주소가 공격자 측에 전송되었습니다.
더불어 키나 토큰처럼 보이는 환경 변수(설정값을 저장하는 이름 붙은 변수)의 이름이 최대 40개 전송되었습니다. 값 자체를 전송하는 처리는 확인되지 않았다고 Phorion은 밝히고 있습니다.
불법 버전은 키의 주석 필드에 "svc-telemetry"라는 이름을 붙였습니다. 즉, 이 문자열이 authorized_keys에 남아 있는지 확인하면 피해 여부를 알 수 있습니다.
Cursor가 안내하는 확인 명령어는 다음과 같습니다. macOS에서는 다음 한 줄을 실행합니다.
grep -qs svc-telemetry ~/.ssh/authorized_keys && echo "svc-telemetry key found" || echo "No key found; machine not impacted"
Windows에서는 PowerShell에서 다음 명령어를 실행합니다.
$files = "$HOME\.ssh\authorized_keys", "C:\ProgramData\ssh\administrators_authorized_keys" | Where-Object { Test-Path $_ }
if ($files -and (Select-String svc-telemetry $files)) { "svc-telemetry key found" } else { "No key found; machine not impacted" }
키가 발견되면 침해된 것으로 간주하십시오. Cursor는 네트워크에서 분리하여 조사한 후, 복구 스크립트(macOS용 remediate-macos.sh와 Windows용 remediate-windows.ps1)를 사용하도록 안내하고 있습니다.
간과하기 쉬운 점이 있습니다. 확장 기능을 제거하는 것만으로는 충분하지 않습니다. 불법 버전이 설치한 단독 스크립트가 삭제 후에도 계속 동작할 우려가 있기 때문입니다.
Cursor는 호스트를 재구성하는 것도 검토하도록 권장하고 있습니다. 해당 PC에서 접근 가능했던 인증 정보나 세션은 신뢰할 수 있는 다른 환경에서 교체하십시오.
영향의 규모에 대해서는 의견이 엇갈립니다.
Help Net Security에 따르면, Cursor는 영향을 받은 사용자가 최대 5,000명이라고 설명하고 있습니다.
Cursor는 많은 macOS·Windows 환경에서는 관리자 권한이 부족하여 SSH 서비스 활성화가 실패한다고 밝히고 있습니다. Phorion도 macOS에서는 확인 처리의 버그로 인해 일반 사용자 상태에서는 원격 로그인이 활성화되지 않는다고 분석했습니다.
다만 안심할 수는 없습니다. 키 추가, 자동 시작 설정, PC 정보 전송은 실행되기 때문입니다. Phorion은 이미 원격 로그인이 활성화되어 있는 PC나 나중에 활성화한 PC에서는 백도어가 그대로 사용될 수 있다고 경고하고 있습니다.
어떤 직장인이 매일 아침 Cursor를 열어 업무를 시작하는 상황을 생각해 봅시다. 확장 기능이 자동 업데이트된 그날, 본인이 아무것도 눈치채지 못한 채로 회사 저장소에 접근할 수 있는 PC의 키가 등록될 수 있습니다.
공격자의 서버는 이미 중단되었지만, 키와 자동 시작 설정이 남아 있으면 다른 서버에서 다시 활용될 여지가 있습니다. 그렇기 때문에 확인이 반드시 필요합니다.
어떤 마켓플레이스가 원인인지에 대해서는 보도에서 혼선이 있었습니다. Phorion의 초기 보고는 Open VSX(오픈소스 확장 기능 배포 사이트)를 지목했습니다.
이후 Phorion은 배포 경로를 Cursor의 마켓플레이스로 정정했습니다. Help Net Security도 이 점이 기사 내에서 충분히 정리되지 않았다고 지적했습니다.
혼란을 피하려면 원본 정보를 직접 확인하는 습관이 중요합니다. Cursor, Phorion, Anthropic의 설명을 함께 읽으면 상황을 파악하기 쉬워집니다.
VS Code 계열 에디터의 확장 기능이 표적이 된 것은 이번이 처음이 아닙니다. GlassWorm이라는 악성코드는 Open VSX에서 확장 기능의 의존 관계를 악용하여, 2026년 1월 31일 이후 72건의 악성 확장 기능이 발견되었습니다. Claude Code 등 AI 보조 도구로 위장한 것도 있습니다.
수법에는 차이가 있습니다. GlassWorm은 가짜 확장 기능을 끼워 넣습니다. 이번에는 공식 이름을 가진 확장 기능 자체가 교체되었습니다. 이름만 보고 확인하는 것으로는 방어하기 어렵다는 점이 이번 사건의 까다로운 부분입니다.
한국에서도 Cursor나 Claude Code를 업무에 활용하는 개발자가 늘고 있습니다. 이번 불법 버전은 밤부터 새벽 사이에 배포되었기 때문에 한국 이용자도 대상이 될 수 있었습니다.
특히 프리랜서나 소규모 개발팀에서는 업무용 PC에 설치하는 확장 기능을 개인이 자유롭게 선택하는 경우가 적지 않습니다. 누가 어떤 버전을 설치했는지 관리자가 파악하지 못하는 경우도 있을 것입니다.
정보 시스템 담당자는 먼저 다음 세 가지를 확인해 보십시오.
GlassWorm 해설에서는 의존 관계를 확인하는 것과 조직 단위로 확장 기능 허용 목록을 관리하는 것이 현실적인 대책으로 제시되고 있습니다.
이번과 같은 사건을 완전히 없애는 것은 불가능합니다. 그래도 피해를 줄이기 위한 노력은 할 수 있습니다.
먼저, 확장 기능의 자동 업데이트에만 의존하지 말고 업데이트 날짜와 내용을 직접 확인하는 습관을 들이십시오.
다음으로 SSH 설정을 점검하십시오. 사용하지 않는 PC에서 원격 로그인을 활성화하지 않는 것만으로도 이번과 같은 백도어가 작동하기 어려워집니다.
Phorion은 IDE의 보조 프로세스가 authorized_keys에 쓰기를 시도하는 움직임을 모니터링하도록 권장하고 있습니다. 평소와 다른 동작을 감지할 수 있기 때문입니다.
마지막으로, 비밀번호나 API 키를 PC의 환경 변수에 계속 저장해 두지 않는 것도 중요합니다. 이번에도 키나 토큰으로 보이는 환경 변수의 이름이 수집되었습니다.
A. Anthropic 관계자는 Anthropic의 시스템은 침해되지 않았으며, 공식 배포 경로의 Claude Code는 영향을 받지 않았다고 설명한 것으로 전해지고 있습니다. 문제가 된 것은 Cursor의 마켓플레이스에서 배포된 변조판입니다.
A. Cursor는 macOS와 Windows를 대상으로 안내하고 있습니다. Phorion의 분석에서는 Linux도 대상에 포함되며, cron으로 자동 시작을 설정하는 처리가 있었습니다. Linux를 사용하는 경우에도 확인해 두는 것이 좋습니다.
A. 안전하다고 할 수 없습니다. 삭제해도 불법 버전이 설치한 키나 자동 시작 설정이 남아 있을 수 있습니다. 확인 명령어를 실행하여 발견되면 복구 스크립트로 제거하십시오.
A. Cursor는 문제의 두 버전을 삭제했습니다. 다만 업데이트해도 남아 있는 키나 자동 시작 설정은 사라지지 않습니다. 과거에 2.1.312나 2.1.313을 설치한 적이 있는 분은 반드시 확인 명령어를 실행하십시오.
A. Phorion은 환경 변수의 이름을 전송하는 처리는 확인했지만, 값 자체를 전송하는 처리는 확인되지 않았다고 밝히고 있습니다. 다만 백도어가 사용된 경우에는 PC 내의 정보가 노출될 가능성이 있습니다. 만일을 대비해 교체를 검토하십시오.
먼저 자신의 PC에서 확인 명령어를 한 줄 실행하고, 결과를 같은 팀원들과도 공유해 보십시오.
이 글은 AI Friends에서 크로스포스트되었습니다.