본문으로 건너뛰기
NEW · Blast Radius: 유출된 API 키 대응 플레이북 (AWS·GCP·Azure)
블로그로 돌아가기

Bitwarden CLI npm 악성 패키지: 영향 범위와 대응

2026년 4월 22일 npm에서 악성 CLI 패키지가 93분간 배포됐습니다. 설치 여부와 조사 결과, Bitwarden의 공식 대응 권고를 확인합니다.

김동현
작성자
김동현
발행
4 분333 어절
Share:
Bitwarden CLI npm 사고의 해당 버전, 설치 여부, 접근 가능했던 키, 조치 순서

2026년 4월 22일 미국 동부시간 오후 5시 57분부터 7시 30분까지 npm에서 악성 @bitwarden/cli@2026.4.0 패키지가 배포됐습니다. Bitwarden에 따르면 이 시간에 npm으로 해당 CLI 버전을 설치한 사용자와 시스템이 점검 대상입니다. 회사는 일반 사용자의 vault 데이터, 자사 프로덕션 시스템과 데이터가 침해됐다는 증거를 찾지 못했다고 밝혔습니다.

침해된 범위

문제가 된 경로는 Bitwarden CLI의 npm 패키지 배포였습니다. Bitwarden은 정상 CLI 소스 코드와 다른 제품은 영향을 받지 않았다고 설명합니다. 일반 Bitwarden 계정이나 저장된 비밀번호가 유출됐다는 뜻은 아닙니다.

Socket 연구진은 패키지에 들어 있던 악성 파일 bw1.js를 분석했습니다. 코드가 환경 변수, 클라우드 설정 파일, npm 설정, SSH 키, GitHub Actions 러너에서 토큰과 자격증명을 찾도록 만들어졌다고 보고했습니다. 또 Checkmarx 공급망 공격과의 연관성 및 릴리스 경로의 GitHub Action 악용 정황을 제시했습니다. 이는 악성 코드의 동작과 추정 침투 경로에 관한 분석입니다. 실제로 몇 대의 고객 시스템에 설치됐고 각 시스템에서 무엇이 반출됐는지는 별도로 확인해야 합니다.

누가 확인해야 하나

해당 시간에 개발자 PC, 빌드 러너, 컨테이너가 npm을 통해 @bitwarden/cli@2026.4.0을 설치했는지 확인하세요. 설치 기록과 CI 로그, 프로젝트 의존성의 lockfile, 패키지 캐시를 살펴볼 수 있습니다. 프로젝트 lockfile은 npm ci에서 설치 버전을 고정하지만, 별도로 실행한 npm install -g @bitwarden/cli까지 제어하지는 않습니다.

해당 시간에 npm에서 문제 버전을 설치하지 않았다면 Bitwarden은 이 사고의 영향 대상이 아니라고 안내합니다. 설치했다면 그 시스템이나 러너에서 접근할 수 있었던 자격증명을 잠재적 노출 대상으로 다뤄야 합니다. 모든 자격증명이 실제로 반출됐다고 단정하지 말고, 접근 범위와 로그를 확인해 교체 우선순위를 정하세요.

Bitwarden의 대응 권고

Bitwarden은 영향을 받은 사용자에게 CLI 2026.4.0 제거, npm 캐시 삭제, 정리 중 설치 스크립트의 일시적 비활성화, 공개된 침해 지표 확인, 노출 가능성이 있는 API 토큰과 SSH 키의 교체, GitHub 및 CI의 무단 변경 점검, CLI 2026.4.1 설치를 권고했습니다. 일회용 빌드 러너라면 해당 작업에 제공된 비밀값과 로그, 러너를 다시 만드는 이미지나 템플릿도 함께 확인해야 합니다.

신뢰하던 패키지 이름과 성공한 빌드만으로 다운로드한 배포물이 안전하다고 판단할 수는 없습니다. 프로젝트 의존성 버전 고정, 빌드 단계에 제공하는 자격증명 제한, 릴리스 워크플로 변경 점검은 유사 사고의 영향 범위를 줄이는 데 도움이 됩니다. 어느 한 조치만으로 예방을 보장할 수는 없습니다.

근거 자료

Bitwarden: 공식 사고 발표

Socket: 악성 패키지 기술 분석

CVE-2026-42994: npm 배포 영향 시간

npm: lockfile과 npm ci의 버전 선택

네트워크에 공유해보세요LinkedInX

이어서 읽기

다음 글을 메일로 받아보세요

Cremit의 월간 자격증명 보안 브리프. 한 통에 핵심만 담습니다.

이메일을 판매하거나 외부에 넘기지 않으며, 언제든 수신거부할 수 있습니다.

Bitwarden CLI npm 사고: 영향 범위와 대응 | Cremit