북한 연계 npm 패키지, 롤업 폴리필 사칭으로 개발자 비밀 탈취 시도

소프트웨어 공급망을 겨냥한 국가 기반 위협 행위자의 시도가 npm 생태계로 확산되고 있다. 2026년 7월 기준으로 공개된 The Hacker News 보도와 JFrog 보안 분석에 따르면, 북한 연계 위협 행위자는 정상적인 빌드 도구인 롤업(rollup)의 폴리필을 모방한 악성 npm 패키지를 등록한 것으로 확인된다. 본 기사는 사건의 기술적 배경과 개발자 환경이 직면한 위험을 정리하고, 실무에서 즉시 적용 가능한 대응 절차를 제시한다.

  • 북한 연계 위협 행위자가 rollup-packages-polyfill-core, rollup-runtime-polyfill-core 등 롤업 폴리필을 사칭한 악성 npm 패키지를 배포해 개발자 원격 접근 및 비밀 탈취를 시도했다.
  • 공격은 정상 오픈소스 빌드 도구를 모방하는 정교한 타이포스쿼팅과 위장 기법을 활용해 소프트웨어 공급망의 신뢰를 악용한 것으로 분석된다.
  • 개발자 시스템 침투 시 비밀 키, 토큰, 소스 코드 등 핵심 자산 유출이 가능해 빌드 파이프라인과 CI/CD 환경 전반의 보안 강화가 요구된다.

npm 생태계의 국가 기반 공급망 공격은 단일 패키지 침해가 아니라 빌드 신뢰 체계 전반의 약점을 드러낸다는 점에서 개발자 보안 거버넌스의 전환점을 보여준다.

공격 개요: 북한 연계 npm 공급망 침투 사건

탐지 시점 및 보고 기관

이번 사건은 2026년 7월 3일 16시 07분 15초(UTC) 기준 The Hacker News에 Ravie Lakshmanan 기자 명의로 보도됐다. 분석은 JFrog 보안팀이 제공했으며, JFrog는 오픈소스 패키지 저장소의 악성 행위 모니터링을 지속해온 연구 조직이다. 해당 보고서는 단순한 의심 사례가 아니라 패키지 메타데이터, 설치 후 실행 흐름, 네트워크 행위까지 결합한 분석 결과를 포함하고 있다.

악성 패키지 명칭 및 위장 방식

공격자는 rollup-packages-polyfill-core와 rollup-runtime-polyfill-core라는 패키지 명칭을 사용했다. 명칭만 보면 정상적인 롤업 생태계의 보조 라이브러리처럼 보이지만, npm 공식 저장소에서의 실제 존재 여부와 등록 정보는 별도 확인이 필요하다. 개발자가 검색 또는 자동완성 결과에서 이름만으로 신뢰할 가능성을 노린 것이다.

오픈소스 생태계 신뢰 악용 흐름

공격은 크게 등록, 유포, 침투의 3단계로 구성된 것으로 분석된다. 첫 단계는 가짜 작성자 계정으로 패키지를 npm에 등록하는 것이고, 두 번째 단계는 인기 프로젝트의 종속성 그래프에 자연스럽게 끼어들도록 명칭과 README를 정교하게 꾸미는 과정이다. 세 번째 단계는 설치된 개발자 머신에서 추가 페이로드를 실행해 자격 증명을 수집하는 흐름으로 진행된다.

공격 기법 분석: 롤업 폴리필 사칭의 정교함

정상 빌드 도구 모방 전략

롤업은 자바스크립트 번들러 중 하나로, 다양한 환경에서 동작하도록 폴리필 관련 패키지를 활용해왔다. 공격자는 이 영역을 집중적으로 모방한 것으로 보고됐다. 빌드 산출물의 호환성을 책임지는 영역은 개발자에게 유용한 추가 기능처럼 인식될 수 있어 의심 없이 설치될 가능성이 있다.

타이포스쿼팅과 패키지 명칭 혼동 유도

패키지 명칭은 기존 정상 패키지와 철자, 하이픈, 접두사 차이만으로 구분되는 경우가 많다. 단순 오타에 의존하는 전통적 타이포스쿼팅에서 한 단계 발전한 형태로, 키워드와 카테고리를 함께 모방해 자동 추천 결과에 자연스럽게 노출되도록 설계된 것으로 분석된다.

원격 접근 및 정보 탈취 흐름

패키지 설치 시 postinstall 단계에서 외부 인프라로 정보를 송신하는 행위가 포함된 것으로 분석된다. 전송 대상은 환경 변수, .npmrc, .ssh 디렉터리, 그리고 클라우드 자격 증명이 포함된 토큰 파일 등으로 추정된다. 이후 동일 인프라를 통해 장기 원격 접근이 유지될 가능성도 거론된다.

개발자 환경에 미치는 영향과 위험도

자격 증명 및 비밀 키 유출 위험

개발자 시스템은 일반적으로 사인 키, 배포 토큰, 데이터베이스 접속 정보 등 고가치 자격 증명을 보유한다. 단일 머신 침투가 빌드 키 탈취로 이어질 경우 공격자가 정식 배포 권한을 확보해 프로덕션 환경에 영향을 줄 가능성이 있다.

소스 코드 및 토큰 유출 가능성

사설 저장소 토큰이 유출되면 공격자는 동일 자격으로 코드를 내려받고 변조까지 시도할 수 있다. 결과적으로 제품 자체의 신뢰성과 사용자 데이터 보호 수준이 동시에 훼손될 수 있는 것이다.

빌드 파이프라인과 CI/CD 침투 시나리오

CI/CD 러너는 외부 패키지 설치 권한과 함께 시크릿 접근 권한을 갖는 경우가 많아, 빌드 단계에서 악성 패키지가 실행되면 파이프라인 변수, 컨테이너 레지스트리 자격 증명, 클라우드 서비스 키 등이 노출될 가능성이 있다.

영향 영역 주요 유출 자산 잠재적 피해
로컬 개발 환경 환경 변수, .npmrc, SSH 키 계정 침해 및 내부망 진입
CI/CD 러너 파이프라인 시크릿, 배포 토큰 정식 배포 권한 탈취
사설 저장소 소스 코드, 패키지 토큰 코드 변조 및 백도어 삽입
클라우드 인프라 서비스 계정 키 리소스 남용 및 데이터 유출

대응 및 예방 가이드

패키지 검증 및 종속성 잠금 정책

package-lock.json 또는 npm shrinkwrap을 통해 종속성을 고정하고, 신규 패키지는 작성자 정보, 다운로드 추이, 의존성 그래프를 함께 검토하는 절차가 권장된다. 자동화 도구를 활용해 신규 패키지 도입 시 보안 점수를 검증하는 절차가 효과적인 것으로 분석된다.

npm 토큰과 비밀 정보 분리 관리

발행 토큰은 쓰기 권한이 필요한 시점에만 한시적으로 사용하고, CI 환경에서는 read 전용 토큰을 별도로 운용한다. 시크릿은 환경 변수보다 시크릿 매니저에 저장하고, 파일 기반 자격 증명은 사용 후 즉시 폐기하는 것이 권장된다.

공급망 보안 거버넌스 강화 방향

SBOM을 정기적으로 생성하고, 빌드 단계에서 패키지 서명과 해시 검증이 가능한 체계를 도입해야 한다. 내부 보안팀과 개발팀이 함께 참여하는 공급망 보안 거버넌스를 통해 신규 패키지 승인 절차, 사고 대응 절차, 토큰 회전 정책을 표준화할 필요가 있다.

핵심 정리

  • 북한 연계 위협 행위자는 정상 빌드 도구를 사칭한 npm 패키지로 개발자 자산을 노린다.
  • 공격은 등록, 유포, 침투의 3단계로 구성된 정교한 공급망 침투 시나리오로 분석된다.
  • 자격 증명, 토큰, 시크릿 유출은 빌드 파이프라인과 프로덕션 환경 전반의 침해로 이어질 수 있다.
  • 패키지 검증, 종속성 잠금, 시크릿 분리, SBOM 도입이 핵심 대응 절차다.

관련 키워드: npm공급망공격, 북한APT, 롤업폴리필악성패키지, 소프트웨어공급망보안, 개발자비밀정보탈취, JFrog분석, 타이포스쿼팅, CICD보안, 악성패키지탐지, 개발자환경보안, 오픈소스보안, 빌드파이프라인보안

참고 자료

댓글 남기기