3줄 요약
1. npm 리포지터리에서 인기 높은 패키지 세 개가 침해된 채 퍼지고 있었음.
2. 문제의 패키지는 @rspack/core, @rspack/cli, vant였음.
3. 심긴 악성 코드는 암호화폐 채굴 코드와 트로이목마.
[보안뉴스 문가용 기자] 인기 높은 npm 패키지 두 개가 탈취되는 일이 발생했다. 문제의 패키지는 @rspack/core와 @rspack/cli였다. 공격자들은 유출된 npm 토큰을 이용해 이 두 가지 프로젝트들에 접근할 수 있었고, 이를 통해 악성 코드를 주입했으며, 그렇게 완성된 악성 버전(1.1.7)을 배포했다. 다행히 보안 업체 소나타입(Sonatype)이 이 악성 버전을 탐지해 차단시킬 수 있었다고 한다.
[이미지 = gettyimagesbank]
그런데 사건은 거기서 끝나지 않았다. 소나타입은 위 두 가지 패키지와 비슷한 위협 시도가 또 있지 않았을까 생각하며 심층 바이너리 분석을 진행했고, 그 결과 또 다른 npm 패키지인 vant에서도 동일한 흔적이 있었다는 걸 발견해냈다. 공격자들이 바꿔놓은 악성 vant는 심지어 여러 개 버전으로 존재하고 있었다. 소나타입은 이 두 가지 공격이 같은 날 일어났다는 점에서 배후에 동일한 세력이 있을 것으로 보고 있다.
어떤 악성 기능이 심겼나?
Rspack 1.1.7 버전에는 암호화폐인 모네로를 채굴하는 XM리그(XMRig)가 심겨져 있었다. 거기에 더해 특정 주로소의 연결을 시도하기도 하는 것으로 분석됐다. 즉 자바스크립트 개발자가 npm을 통해 이 악성 라이브러리를 다운로드 받아 활용할 경우, 자기도 모르게 암호화폐 채굴기를 퍼트리게 되는 것이다. 다만 소나타입 측에서는 악성 버전에 삽입된 주소가 어떤 식으로 악용되는지는 알아낼 수 없었다고 한다.
암호화폐 채굴 코드를 심는 공격은 Rspack과 Vant 모두에서 발견됐으며, 동일한 방식으로 작동하고 있었다. 소나타입은 이러한 사실을 알아내고 각 프로젝트의 메인테이너에게 알려 안전한 버전이 나오도록 했다고 한다. “Rspack의 경우 1.1.8 버전이 나왔고, Vant의 경우 4.9.15 버전이 나왔습니다. 이 두 라이브러리의 사용자라면 이 두 가지 버전을 사용하는 게 안전합니다.”
두 프로젝트에서의 릴리즈 노트
다음은 Rspack 측에서 발표한 릴리즈 노트다.
“Rspack은 2024년 12월 19일에 npm 패키지 @rspack/core와 @rspack/cli가 악성 공격에 노출되어 있음을 발견했습니다. 공격자는 유출된 npm 토큰을 사용해 1.1.7 버전을 배포했으며, 이 버전에는 악성 코드가 포함되어 있었습니다. 문제가 확인된 후 Rspack 팀은 즉시 1.1.7 버전을 차단하고 npm의 lastest 태그를 1.1.6 버전으로 수정했으며, 관련된 모든 토큰을 초기화 했습니다. 이후 보안이 강화된 1.1.8 버전을 새롭게 발표했습니다. 사용자들은 1.1.8 버전으로 업그레이드를 실시하고, 시스템을 검사하여 침해 여부를 확인하는 것이 안전합니다.” 그러면서 Rspack은 더 신중하고 꼼꼼하게 토큰을 관리할 것을 약속했다.
다음은 Vant 측에서 발표한 릴리즈 노트다.
“Vant 프로젝트는 최근 사건을 계기로 삼아 보안상의 문제가 해결된 4.9.15 버전을 공개합니다. 이번 버전은 최근 발견된 보안 문제를 해결하기 위한 것으로, 여기서 보안 문제란 Vant 팀원의 토큰이 도난당함으로써 악성 코드가 심기거나 취약점이 포함된 버전이 여러 개 배포된 최근 사건을 말합니다. 이를 해결하기 위한 조치를 취했고, 최신 버전을 다시 배포합니다.”
오픈소스 생태계, 끝없는 위협에 시달려
npm 생태계에 악성 코드가 포함된 악성 패키지나 라이브러리가 나타나 피해를 야기한 건 이번이 처음이 아니다. 10월에는 npm에 로티플레이어(Lottie Player)라는 프로젝트에 악성 코드가 심겼고, 그런 상태로 이 프로젝트가 퍼지는 바람에 최소 한 개의 단체에서 72만 달러 이상의 손실을 입은 것으로 조사되기도 했었다.
게다가 이번 주에는 ES린트(ES Link)와 노드타입스(Node Types)라는 프로젝트의 악성 버전들이 윈도용 트로이목마를 배포하다가 발각되기도 했었다. 이미 악성 버전이 수천 건의 다운로드를 기록한 후에 나타난 현상이었다. 일부 개발자들이(즉, 수천의 개발자들이) 가짜 프로젝트를 진짜로 착각해 사용했다는 뜻인데, 대부분 ‘비슷한 철자’에 속은 것으로 분석되고 있다. 즉 타이포스쿼팅 공격에 아직도 상당수가 취약하다는 뜻이다.
소나타입은 “아직 이런 악성 패키지들을 기반으로 개발된 악성 소프트웨어에 어떤 것들이 있는지 다 밝혀내지 못했으며, 악성 코드가 지금 어디까지 퍼졌는지 다 추적하는 게 불가능하다”며 “어디선가 윈도 생태계에서 트로이목마를 심고 있을 것”이라고 추정하고 있다. 그러므로 “멀웨어 탐지 솔루션을 적극 활용해 알려진 침해 지표와 시그니처를 가지고 시스템과 네트워크를 스캔해야 하며, 찾아낸 즉시 위협을 제거해야 한다”고 강조한다.
이번 공격에 대한 침해지표 등 보다 상세 내용은 이번 주 27일에 발간되는 프리미엄 리포트를 통해 공개될 예정입니다.
[국제부 문가용 기자(globoan@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>