AI 코딩 확장 프로그램 공급망 공격, Claude Code 백도어가 남긴 교훈

2026년 10월 공식 Claude Code VS Code 확장 프로그램에 악성 로더가 삽입되어 SSH 백도어를 설치하려 한 공급망 공격을 분석하고, 개발자와 기업이 AI 코딩 확장 프로그램을 검증·격리하는 방법을 정리합니다.

AI 코딩 도구의 확장 프로그램은 이제 공급망 공격의 핵심 통로가 됐습니다. 2026년 10월 29일에는 공식 Claude Code VS Code 확장 프로그램 버전 2.1.313에 악성 로더가 섞여 들어가 개발자 머신에 지속적 SSH 백도어를 설치하는 사건이 확인됐습니다. 따라서 확장 프로그램은 반드시 신뢰할 수 있는 배포 채널에서만 설치하고, 권한을 최소화하며, 격리된 환경에서 실행하는 검증 절차가 필요합니다.

AI 코딩 확장 프로그램이 공급망 공격의 새로운 표적이 된 이유

AI 코딩 도우미는 이제 새 코드의 상당 부분을 생성할 만큼 개발 워크플로우 깊숙이 들어와 있습니다. VS Code나 Cursor 같은 IDE의 확장 프로그램은 소스 코드뿐 아니라 터미널, 파일 시스템, 네트워크, 환경 변수까지 접근할 수 있어 공격자에게는 매우 매력적인 표적입니다. 게다가 이미 AI 브랜드를 내세운 브라우저 확장 프로그램과 플러그인에 자격 증명 탈취나 암호화폐 탈취 멀웨어를 심는 사례가 보고되고 있습니다.

확장 프로그램 공급망 공격이 위험한 이유는 개발자가 직접 악성 코드를 내려받는 것이 아니라, 평소 신뢰하던 공식 확장 프로그램의 업데이트 채널을 통해 감염된다는 점입니다. 자동 업데이트가 켜져 있으면 확인 절차 없이 새 버전이 적용되기 때문에 침해 사실을 알아차리기 어렵습니다. 따라서 확장 프로그램을 단순한 편의 기능이 아니라 개발 환경에 대한 코드 실행 권한을 가진 구성 요소로 취급해야 합니다.

2026년 10월 Claude Code 확장 프로그램 백도어 사건 분석

StepSecurity의 공개 분석에 따르면, 2026년 10월 29일에 배포된 공식 Claude Code VS Code 확장 프로그램 anthropic.claude-code 2.1.313 버전의 extension.js 번들에 악성 로더가 삽입되어 있었습니다. 이 로더는 개발자 머신에 지속적으로 동작하는 SSH 백도어를 설치하려고 시도했습니다. 확장 프로그램 자체가 공식 마켓플레이스에 등록된 정상 패키지였기 때문에 단순히 게시자 이름만 보고 설치한 개발자라면 의심하기 어려운 구조였습니다.

Cursor가 공개한 자체 분석에서는 악성 확장 프로그램이 로컬 SSH 서비스를 켜려면 관리자 권한이 필요한데, macOS와 Windows의 대부분 환경에서는 해당 권한이 없어 백도어 활성화가 제한됐다고 설명했습니다. 그럼에도 불구하고 이 사건은 공식 배포 채널이 침해되면 어떤 일이 벌어지는지 보여 주는 중요한 경고입니다. 공격자가 퍼블리셔 계정이나 빌드 파이프라인을 장악하면, 수많은 개발자가 아무 의심 없이 악성 업데이트를 받게 됩니다.

개발자를 위한 악성 확장 프로그램 식별·검증 체크리스트

확장 프로그램을 설치하기 전에는 다음 사항을 확인하는 습관이 필요합니다.

  • 게시자와 배포 채널: 확장 프로그램 ID와 게시자 이름이 공식 도메인·문서와 일치하는지 확인하고, 공식 마켓플레이스 외에 서드파티 사이트에서 직접 VSIX 파일을 받지 않습니다.
  • 요청 권한 검토: 파일 시스템 읽기·쓰기, 셸 실행, 네트워크 접근, 환경 변수 접근, 클립보드 접근 등을 요구하는지 확인합니다. 기능에 비해 과도한 권한을 요구하면 설치하지 않는 것이 안전합니다.
  • 버전 이력과 평판: 릴리스 노트가 불분명하거나 갑자기 버전이 올라갔는지, 커뮤니티 평판과 설치 수가 비정상적으로 급증했는지 살펴봅니다. 리뷰 수가 적거나 최근에만 급증한 경우 주의가 필요합니다.
  • 코드 검증: 가능하다면 확장 프로그램 소스 저장소를 직접 확인하거나, 배포된 패키지의 해시·서명을 공식 발표와 대조합니다. 오픈소스라면 extension.js 번들에 낯선 난독화 코드가 없는지 정적 분석 도구로 훑어보는 것도 도움이 됩니다.

설치 후에는 확장 프로그램이 백그라운드에서 새 프로세스를 띄우거나 SSH 서비스 같은 시스템 설정을 변경하지 않는지 주기적으로 점검합니다. 자동 업데이트를 끄고 특정 버전으로 고정한 뒤, 변경 사항을 확인하고 나서 업데이트하는 방식이 공급망 공격 노출을 줄여 줍니다.

격리 실행 환경과 최소 권한 원칙의 실제 적용

AI 코딩 확장 프로그램은 IDE의 확장 호스트 안에서 임의의 코드를 실행할 수 있기 때문에, 기본적으로 신뢰하지 않는 프로세스로 다뤄야 합니다. 가장 현실적인 방법은 개발용 가상머신이나 컨테이너, Dev Container처럼 격리된 환경에서 확장 프로그램을 실행하는 것입니다. 중요한 소스 코드와 자격 증명은 별도 볼륨이나 전용 개발 계정으로 분리하고, 격리 환경에는 읽기 전용 마운트를 사용해 확장 프로그램이 소스 전체를 외부로 유출하지 못하게 제한합니다.

최소 권한 원칙도 함께 적용합니다. 확장 프로그램이 셸 명령을 실행하거나 네트워크로 데이터를 보내는 기능이 꼭 필요한 경우에만 해당 권한을 부여하고, 불필요한 SSH 서비스나 원격 접근 기능은 비활성화합니다. 아웃바운드 네트워크도 허용 목록 기반으로 제한하면 백도어가 외부 명령 제어 서버와 통신하는 경로를 차단할 수 있습니다. 특히 바이브 코딩처럼 AI와 대화하며 빠르게 코드를 생성하는 워크플로우에서는 확장 프로그램 여러 개를 동시에 설치하는 경우가 많아, 하나라도 뚫리면 전체 개발 환경이 위험해질 수 있습니다.

기업 차원의 AI 코딩 도구 보안 정책

기업에서는 개인 개발자의 주의만으로 공급망 공격을 막기 어렵기 때문에 정책과 기술 통제를 함께 도입해야 합니다. 우선 사내에서 허용하는 확장 프로그램 목록을 만들고, 그 외 확장 프로그램은 설치하지 못하도록 관리합니다. 확장 프로그램과 그 의존성은 버전을 고정하고, 사내 레지스트리나 프록시를 통해서만 배포해 외부 변조 가능성을 줄입니다. 확장 프로그램 패키지의 서명 검증과 취약점 스캔을 자동화하고, 확장 프로그램이 실행하는 프로세스와 네트워크 연결을 EDR이나 로깅 시스템으로 모니터링해 이상 징후를 조기에 탐지해야 합니다.

또한 공급망 사고가 발생했을 때를 대비해 어떤 확장 프로그램과 버전을 사용했는지, 누가 설치했는지, 언제 업데이트됐는지 기록을 남기는 것이 중요합니다. Claude Code 백도어 사건은 공식 채널도 완전히 안전하지 않을 수 있다는 점을 보여 줬기 때문에, 신뢰할 수 있는 소스에서만 설치하더라도 지속적인 검증과 변경 이력 관리가 필요합니다.

마무리: 신뢰보다 검증이 기본이 되는 개발 환경으로

AI 코딩 확장 프로그램은 생산성을 크게 높여 주지만, 동시에 개발 환경 전체에 대한 강력한 접근 권한을 가진 공격 표면이기도 합니다. 이번 Claude Code 확장 프로그램 백도어 사건은 공식 마켓플레이스와 업데이트 채널을 맹신해서는 안 된다는 점을 분명히 보여 줬습니다. 개발자 개인은 설치 전 권한 검토와 게시자 확인, 버전 고정, 격리 실행을 습관화하고, 기업은 허용 목록·최소 권한·모니터링을 정책으로 뒷받침해야 합니다.

팀 차원에서는 확장 프로그램 검토와 보안 점검 결과를 남기고, 변경 이력을 불변 기록으로 쌓아 두면 사고 원인을 빠르게 추적하고 같은 실수를 반복하지 않는 데 도움이 됩니다. 이럴 때 md-log처럼 AI가 작성한 분석과 작업을 사람이 검토하고 저장할 때마다 이전 버전과 비교 가능한 형태로 아카이브하는 휴먼 인 더 루프 리뷰 도구를 활용하는 방법도 고려할 만합니다.

참고 자료

자주 묻는 질문

이번 Claude Code 확장 프로그램 백도어 사건은 정확히 무엇인가요?
2026년 10월 29일 공식 VS Code 확장 프로그램 `anthropic.claude-code` 2.1.313 버전에 악성 로더가 포함되어 배포됐고, 이 로더가 개발자 머신에 지속적으로 동작하는 SSH 백도어를 설치하려고 시도했다고 StepSecurity가 밝혔습니다. 다만 Cursor 분석에 따르면 로컬 SSH 서비스를 켜려면 관리자 권한이 필요한데, macOS와 Windows 대부분 환경에는 해당 권한이 없어 백도어 활성화가 제한됐습니다.
개발자가 악성 AI 코딩 확장 프로그램을 가장 빠르게 걸러내는 방법은 무엇인가요?
설치 전에 게시자의 공식 여부와 확장 프로그램 ID, 요청 권한을 확인하고, 가능하면 소스 코드나 릴리스 해시를 검증합니다. 자동 업데이트보다는 특정 버전을 고정하고, 불필요한 파일 시스템·셸·네트워크 권한을 요구하는 확장 프로그램은 피하는 것이 좋습니다.
AI 코딩 도구를 격리된 환경에서 실행하려면 어떻게 해야 하나요?
개발용 가상머신이나 컨테이너, Dev Container에서 확장 프로그램을 실행하고, 중요한 소스 코드와 자격 증명은 별도 볼륨이나 전용 계정으로 분리합니다. 확장 프로그램에는 최소 권한만 부여하고, 가능하면 아웃바운드 네트워크 접근도 제한해야 합니다.
기업에서 AI 코딩 확장 프로그램 보안 정책을 수립할 때 가장 중요한 요소는 무엇인가요?
허용된 확장 프로그램 목록을 만들고, 설치 전 코드 서명과 평판을 검증하는 절차를 도입해야 합니다. 아울러 확장 프로그램과 의존성 버전을 잠그고, 사내 레지스트리나 프록시를 통해 배포하며, 이상 행위를 탐지하는 로깅과 모니터링을 켜 두는 것이 중요합니다.
바이브 코딩 워크플로우에서 공급망 공격 위험을 줄이려면 어떤 습관이 필요한가요?
확장 프로그램을 최소한으로 유지하고, 신뢰할 수 있는 소스에서만 설치하며, 설치 후에는 권한 변경이나 백그라운드 프로세스 같은 이상 신호를 주기적으로 점검해야 합니다. 코드 생성 결과뿐 아니라 개발 환경 자체의 변경 이력도 함께 검토하는 습관이 필요합니다.

관련 글

← 모든 글 보기