npm 패키지, 정말 안전할까? 개발자를 노린 해킹 공격 주의보

npm 패키지, 설치 전 다시 한 번 의심해보세요

개발자라면 누구나 익숙한 도구, 바로 npm입니다. 자바스크립트 개발에서 라이브러리나 플러그인을 설치할 때 사용하는 패키지 관리 시스템으로, 전 세계 수많은 개발자들이 매일같이 사용하고 있죠.

그런데 이 편리한 도구가 최근 북한 연계 해킹조직의 표적이 되었다는 소식이 전해졌습니다.

‘컨테이저스 인터뷰’, ‘팬텀 서킷’ 같은 캠페인을 통해 비버테일 악성코드와 신형 백도어 트로피도어가 배포됐고, 정교한 난독화 기법으로 악성 npm 패키지가 위장되고 있다고 해요. 아무 생각 없이 npm install 한 줄 실행하는 게, 시스템 전체를 위험에 빠뜨릴 수도 있는 상황입니다.

 

악성 패키지는 이렇게 숨어 있었다… RAT 로더의 정체

이번에 발견된 악성 npm 패키지는 총 11개, 다운로드 횟수는 5,600회를 넘었습니다. 패키지 이름은 ‘dev-debugger-vite’, ‘cln-logger’ 등 개발 도구처럼 보이지만, 실제로는 원격에서 악성 페이로드를 불러오는 RAT(Remote Access Trojan) 로더 역할을 했습니다.

특히 dev-debugger-vite는 과거 라자루스 그룹이 사용한 명령제어(C2) 서버 주소와 동일한 도메인을 사용하는 정황도 드러났어요.

난독화된 스크립트와 위장된 명령어로 겉보기엔 멀쩡해 보였지만, 속은 완전히 달랐던 셈이죠. 지금 사용하는 npm 패키지들, 혹시라도 찝찝하다면 지금이 점검해볼 때입니다.

 

깃허브와 비트버킷까지 침투한 공급망 공격

이번 공격은 단순히 악성 패키지를 퍼뜨리는 수준이 아니라, 개발 생태계 전체를 노리는 공급망 공격입니다. 공격자는 믿을 수 있는 저장소나 도구를 먼저 감염시켜 사용자들이 무심코 설치하게 만들죠.

예를 들어, icloud-cod는 취업 정보를 위장했고, cln-logger나 node-clog는 코드상으로는 미세하게 변형되었지만 결국 모두 RAT 로더로 작동했습니다. 일부는 비트버킷 저장소를 통해 악성 스크립트를 분산 전달하는 방식까지 활용했어요.

실제로 몇몇 개발팀은 이 패키지를 설치한 뒤 테스트 서버에서 비정상적인 외부 연결이나 알 수 없는 네트워크 트래픽이 발생한 사례를 보고했다고 합니다.

 

개발자라면 꼭 기억해야 할 보안 습관

이제는 보안도 개발자의 기본 소양입니다. 전문가들은 다음과 같은 점검 습관을 권장합니다.

  • npm 설치 전, 패키지 이름과 다운로드 수, 최근 업데이트 시점 확인

  • 깃허브나 비트버킷 링크가 있다면 저장소 열어서 소스 직접 살펴보기

  • package.json 파일의 scripts나 postinstall 항목에 자동 실행 명령어가 있는지 체크

  • 설명이 지나치게 짧거나 문서가 부실한 패키지는 일단 의심

  • 회사 또는 팀 차원에서 npm 미러 관리 정책을 마련하고 적용하기

편리함 뒤에 보안 리스크가 숨겨져 있다는 걸 잊지 말아야 해요. 자주 쓰는 도구일수록 더 주의가 필요합니다. 여러분은 이 사건을 통해 어떤 보안 습관을 새로 다잡게 되셨나요?

댓글로 여러분의 의견이나 경험을 공유해 주세요. 우리가 서로 배운 걸 나눌 때, 진짜 튼튼한 개발 생태계가 만들어집니다.

출처: 북한 해킹조직, 개발자 노린 npm 악성 패키지 유포…신형 백도어 ‘트로피도어’까지 등장