최근 북한의 라자루스(Lazarus) 해킹 그룹이 npm(Node Package Manager) 저장소를 통해 악성 패키지를 배포해 수백 명의 개발자들이 피해를 입은 사실이 확인되었습니다.
현재까지 발견된 악성 패키지의 다운로드 수는 약 330회로 확인됩니다. 그러나 이를 다운로드한 개발자들이 해당 패키지를 포함해 각종 애플리케이션을 빌드했다면, 이를 인지하지 못한 사용자가 해당 애플리케이션을 설치하거나 실행하는 과정에서 악성코드에 간접적으로 감염될 가능성이 있습니다. 이는 소프트웨어 공급망 공격(Supply Chain Attack)의 전형적인 사례로, 광범위한 피해로 이어질 수 있습니다.
사건 개요
- 발견된 악성 패키지 수: 총 6개
- 다운로드 횟수: 약 330회
- 공격 기법: 타이포스쿼팅(typosquatting)을 이용하여 인기 패키지의 오타를 통해 개발자가 악성 패키지를 설치하도록 유도
다음은 문제가 되고 있는 악성 npm 패키지 6가지 종류 목록입니다.
번호 | 악성 패키지 이름 | 위장한 패키지 또는 기능 | 악성 행위 |
---|---|---|---|
1 | is-buffer-validator | is-buffer | 자격 증명(Credentials) 탈취 |
2 | yoojae-validator | 유효성 검사 라이브러리 | 시스템의 민감한 데이터 탈취 |
3 | event-handle-package | 이벤트 처리 도구 | 원격 접근이 가능한 백도어 설치 |
4 | npm-buffer-util | buffer-util 로 위장 | 시스템에 악성코드 실행 |
5 | webpack-js-validator | webpack 관련 유효성 검사 도구 | 악성 스크립트 주입 |
6 | node-frame-js | 인기 패키지와 유사한 이름 사용 | 악성코드를 포함한 스크립트 실행 |
주요 내용
- 악성 패키지 식별: 라자루스 그룹과 연관된 6개의 악성 npm 패키지가 발견되었으며, 악성 패키지는 최소 330회 다운로드되었습니다.
- 공격 기법: 이러한 패키지는 타이포스쿼팅(typosquatting) 기법을 사용하여 개발자가 인기 있는 패키지 이름을 오타로 입력하여 접근할 경우, 악성 패키지를 설치하게끔 유도하였습니다.
- 이전 사례: 라자루스 그룹은 이전에도 GitHub 및 Python 패키지 인덱스(PyPI)에서 유사한 공격을 수행한 바 있습니다.
해당 사례와 같이 npm 저장소를 통해 악성 패키지를 배포하는 공격 유형은 향후 더욱 증가할 것으로 보입니다. 이렇게 유포된 악성 개발자 도구를 다운로드한 개발자가 1차적인 공격 대상이 되며, 이를 기반으로 빌드된 애플리케이션과 이를 이용하는 수많은 이용자들에게 추가적인 피해가 발생할 가능성이 큽니다. 특히, 일부 악성 패키지는 백도어 설치나 사용자 인증(크리덴셜) 정보 유출과 같은 악의적인 행위도 포함되어 있기 때문에, 개발자 도구를 위장한 공급망 공격의 심각성은 더욱 커질 것으로 예상됩니다.
개발자는 신규 개발자 도구 패키지를 무조건 신뢰하기 보다 많은 개발자들이 검증하고 이용하는 안정적인 공개 패키지를 이용하는 것이 바람직합니다. Logpresso CTI 서비스를 이용 중이시라면 아래에 언급된 관련 침해지표 정보가 자동 업데이트 되어 즉시 사용이 가능합니다.
Logpresso CTI 탐지 가능 버전
- 2024년 08월 22일, 10월 26일, 11월 26일, 11월 29일 이후
- 2025년 03월 12일
침해 지표 요약
악성코드 Hash
No. | MD5 | SHA-1 | SHA-256 |
---|---|---|---|
1 | bc644febfc0a9500bcc24d26fbfa9cae | 4682e781d34990d6684cea7e442268dcc95e9e91 | 5634b1b3c17cf4dc2f9eb51ab55abd93c9f35495f6edc5d51616b0571af6b1b3 |
2 | 38d365898fd6acbb4788e654e864922d | 281c2f8060dd3f0b244ae2282c3d3d406f8dd458 | 6a104f07ab6c5711b6bc8bf6ff956ab8cd597a388002a966e980c5ec9678b5b0 |
3 | 350da6c37d869fd164e44edde2fed57e | 6dbb9e6abc8e403309954800986e43176f34a652 | bd2266101b5e01588cda8fac84fa80f3f8152e66110b8108cbbc562d93af8cc9 |
4 | 8907fe74ee2d2ae821d31e376a6c13f9 | ab8bf3bb0bfdaeb699d5e88cf4e8789db43402a7 | d957ea41dbbc3c9666811c07663ff1f6abbbf10bf7f32403dd40cee95868ff02 |
5 | bb8fbaeb629eeeef11646a0cb97fdb34 | 51e1770e6117d7aeef4cc6628d5cf6e19416fb08 | 540c67abd772a0535eb2b72cb2a575fcac0dfdcc3698968ca8e447129de34d3a |
6 | 617205f5a241c2712d4d0a3b06ce3afd | 656eab9b23906ac7f0ff0eecd5077979a79b3f93 | ab7608bc7af2c4cdf682d3bf065dd3043d7351ceadc8ff1d5231a21a3f2c6527 |
7 | 7df4dce39c8a1624ae7988b65def5ff7 | 1d36f6710bab789cc6c0be05e4c0901447449119 | 056d95216a949d02a6e7a4452aa03103566771e2beb377614d6d9af1f3d44494 |
8 | 085b6e68407a0a0053aa25e8c9d62586 | 675c3c7af3a9b9deb2fb2f132a84c8a65e7e46fe | 1697bf8bea8bcd1835961c33da4c23ba2a63be61110e0fe6010a8f9106830a74 |
9 | 953c431bdfa8f7318d96883afe4ef083 | c7789d4bc0a39c3242b7500c7c05fb7f9bd7e86b | 17fefe3013f8ae82281747cd20b0adc791b73c9b5ae6d709f70ad04e22ce0196 |
10 | 31d1f186d805ebe71069d071ea95a9fc | 2a40efbef15faac978a2006f65017a84630190da | 277527242bb88727cc231ee68f3ce6ae7ab588fa23676c85241eb85608d244c5 |
11 | fc5f0b1242c79576a3c4c13111f9a79e | 2e5f8c8c13e25d91b2a3deb900b9093860706e95 | 2844daa31c0b3dc9821e8790d7f6be7b289813f921d443e40f032f45dee83766 |
12 | 48c179680e0b37d0262f7a402860b2a7 | 176b980270ebf5bcd3b0d1c855da42f0a92082e2 | 42595da250a90129217f1dea56bfbbd871b16ba5a3e63dc63dd5a44739d036b9 |
13 | f91bb20852c14222a0c193ce50c7042d | 748d01320660cfe183d5fa06165c82b1797a94b6 | a2190824ca378c0de1a97170032ba64a5c456db3071edeaab701075365990af1 |
14 | 23e3086d22be13bba02bb246f0fd9f8a | b5aef5763ef9bb87c4794c89731f2780460ed762 | b944232645a1203c8d63cc952fd30407514eefad339b419bf4d4cb46524e7c81 |
15 | efbc268a345e5a3089ca0640353b98cc | 1d7709aee3b9dcd1f58794abccc8b83d6f0a1cfd | d61fd1a98ec6f6bbb56baaf9e9d64a455f9fea9f4e3ca3a7b5ce3d49cc7ac392 |
16 | 906ea1d2a802407587b3a4fb95d8e588 | 712cc918e6c703d006934428a9d92d23c64fbb48 | e0660b4df0f01b4311230987e05ef1afbff9436337135345820a7fc96b6b319d |
17 | 6bc11397639028acfe562d2b15718d9f | 8d513c1fee0bce5d6cc5070b7d7334092701908e | f08e3ee84714cc5faefb7ac300485c879356922003d667587c58d594d875294e |
18 | be048020bcd95b23f422959a376418f8 | f01ab3aba077f34c86511b0c14326bf6ab434633 | f969b669e6c3d83afbf3b798cd22eadc7b63ccfe3653323fbc148d8f2c17f609 |
19 | 36b94c5b24ed6646cedc7cb64e2acabd | e39811264e74ef13cbf5a71d3180362d1bff9eb3 | fba7016fc7cdd9d3247fa2e11be358c900549a819b9096c24464183aa01d252c |
20 | 31ed238577c0ed82ee93e4a10a8fb542 | b5ac988fad1fdcaaa1fbb069de11dce6b5da8e5c | ff29722e913038c4f0e99373d22dc876de8dbefb6ba10ec48196294d46012613 |
IP
No. | IP 주소 |
---|---|
1 | 172.86.84.38 |
2 | 45.61.150.31 |
3 | 94.131.97.195 |
4 | 144.172.97.7 |
5 | 185.235.241.208 |
6 | 45.61.128.110 |
7 | 144.172.86.27 |
8 | 185.153.182.241 |
9 | 45.137.213.30 |
10 | 86.104.74.51 |
11 | 45.128.52.14 |
URL
No. | URL |
---|---|
1 | http://172.86.84.38:1224/uploads |
2 | http://172.86.84.38:1224/pdown |
3 | http://172.86.84.38:1224/client/9/909 |
4 | http://172.86.84.38:1224/payload/9/909 |
5 | http://172.86.84.38:1224/brow/9/909 |
5 | http://45.61.150.31:1224/pdown |
6 | http://94.131.97.195:1224/pdown |
7 | http://185.153.182.241:1224/uploads |
8 | http://185.153.182.241:1224/pdown |
9 | http://172.86.84.38:1224/payload/9/909 |
9 | http://172.86.84.38:1224/brow/9/909 |
10 | http://172.86.84.38:1224/payload/9/909 |
11 | http://185.153.182.241:1224/client/7/701 |
12 | http://185.153.182.241:1224/brow/7/701 |
13 | http://185.153.182.241:1224/payload/7/701 |
13 | http://185.153.182.241:1224/keys |
13 | http://185.153.182.241:1224/mclip/7/701 |
14 | http://86.104.74.51:1224/pdown |
15 | http://86.104.74.51:1224/client/7/702 |
16 | http://86.104.74.51:1224/mclip/7/702 |
16 | http://86.104.74.51:1224/payload/7/702 |
17 | http://185.153.182.241:1224/mclip/7/702 |
18 | http://zkservice.cloud/api/v2/process/Bc3n |
19 | http://zkservice.cloud/api/service/token/2afa2a236f34c1c8b58ec0f27c571abc |
Domain:
zkservice.cloud
참고: [1] https://www.bleepingcomputer.com/news/security/north-korean-lazarus-hackers-infect-hundreds-via-npm-packages/