홈
AI AI
속보
심층
이벤트
Pro
더보기
자금 조달 정보
특집
온체인 생태계
용어
팟캐스트
데이터
OPRR
简体中文
繁體中文
English
Tiếng Việt
한국어
日本語
ภาษาไทย
Türkçe
BTC
$96,000
5.73%
ETH
$3,521.91
3.97%
HTX
$0.{5}2273
5.23%
SOL
$198.17
3.05%
BNB
$710
3.05%
XRP
$2.25
2.07%
DOGE
$0.325
2.23%
USDC
$0.999
3.05%
Partnered With:

NPM 공급망 공격: 무슨 일이 일어났나요? 위험 완화 방법

이 글을 읽으려면 11 분
오염된 소프트웨어 패키지는 10억 번 이상 다운로드되었으며, 잠재적인 위험은 간접적으로 업계 전체로 확산될 수 있습니다.
원제: "공급망 공격"이 하룻밤 사이에 뉴스를 장악했습니다. 무슨 일이 일어났을까요? 위험을 어떻게 완화할 수 있을까요? 》
원문 작성자: Azuma, Odaily Planet Daily


9월 9일(베이징 시간), Ledger CTO Charles Guillemet는 X에 다음과 같이 경고했습니다. "현재 대규모 공급망 공격이 진행 중이며, 유명 개발자의 NPM 계정이 침해되었습니다. 영향을 받은 소프트웨어 패키지는 10억 회 이상 다운로드되었으며, 이는 전체 JavaScript 생태계가 위험에 처할 수 있음을 의미합니다."


Guillemet는 다음과 같이 덧붙였습니다. "이 악성 코드는 백그라운드에서 암호화폐 주소를 은밀하게 조작하여 자금을 훔칩니다. 하드웨어 지갑을 사용하는 경우 모든 서명된 거래를 주의 깊게 확인하면 안전할 것입니다. 하드웨어 지갑을 사용하지 않는 경우 당분간 온체인 거래를 피하십시오. 공격자가 소프트웨어의 니모닉 문구를 직접 훔쳤는지는 확실하지 않습니다. 지갑."



무슨 일이 일어났나요? Guillemet이 인용한 보안 보고서에 따르면, 이 사건의 직접적인 원인은 유명 개발자 @qix의 NPM 계정이 침해되어 chalk, strip-ansi, color-convert를 포함한 수십 개의 패키지가 악성 버전으로 배포된 것이었습니다. 악성 코드는 개발자나 사용자가 종속성을 자동으로 설치했을 때 터미널로 확산되었을 수 있습니다. Odaily 참고: 침해된 패키지의 주간 다운로드 데이터. 간단히 말해, 이는 공급망 공격의 전형적인 사례입니다. 공격자가 개발 도구나 종속 시스템에 악성 코드(예: NPM 패키지)를 삽입하는 것입니다. Node Package Manager의 약자인 NPM은 JavaScript/Node.js 생태계에서 가장 일반적으로 사용되는 패키지 관리 도구입니다. 주요 기능으로는 종속성 관리, 패키지 설치 및 업데이트, 코드 공유 등이 있습니다.


NPM 생태계는 방대하며 현재 수백만 개의 소프트웨어 패키지가 제공됩니다. 거의 모든 Web3 프로젝트, 암호화폐 지갑, 프런트엔드 도구는 NPM에 의존합니다. NPM은 종속성이 많고 링크가 복잡하기 때문에 공급망 공격의 고위험 진입점입니다. 공격자는 흔히 사용되는 소프트웨어 패키지에 악성 코드를 심어 수천 개의 애플리케이션과 사용자에게 영향을 미칠 수 있습니다.



위의 악성 코드 확산 흐름도에서 볼 수 있듯이:


· 프로젝트(파란색 상자)는 express와 같은 일부 일반적인 오픈 소스 라이브러리에 직접적으로 종속됩니다.


· 이러한 직접 종속성(녹색 상자)은 다시 다른 간접 종속성(노란색 상자, 예: lodash)에 종속됩니다.


· 간접 종속성이 악성 코드(빨간색 상자)와 함께 비밀리에 이식되면 종속성 체인을 따라 프로젝트에 진입합니다.


이것은 암호화폐에 어떤 의미가 있습니까?


이 보안 사고가 암호화폐 산업에 직접적으로 관련이 있는 것은 해커가 오염된 소프트웨어 패키지에 이식한 악성 코드가 지갑 주소를 대체하고 하이재킹하여 암호화폐 자산을 훔치는 정교한 "암호화폐 클립보드 하이재커"라는 사실입니다. 거래.



스트레스 캐피털(Stress Capital)의 설립자 GE(@GuarEmperor)는 X에 대해 더 자세한 설명을 제공했습니다. 해커가 주입한 "클립보드 하이재커"는 두 가지 공격 모드를 사용합니다. 수동 모드에서는 "레벤슈타인 거리 알고리즘"을 사용하여 지갑 주소를 대체합니다. 시각적 유사성으로 인해 탐지가 매우 어렵습니다. 능동 모드에서는 브라우저에서 암호화된 지갑을 감지하고 사용자가 거래에 서명하기 전에 대상 주소를 변조합니다.


이 공격은 JavaScript 프로젝트의 기본 계층 라이브러리를 표적으로 삼기 때문에 이러한 라이브러리에 간접적으로 의존하는 프로젝트도 영향을 받을 수 있습니다.


해커는 얼마나 많은 수익을 올렸습니까?


해커가 주입한 악성 코드는 공격 주소도 공개했습니다. 해커의 이더리움 주요 공격 주소는 0xFc4a4858bafef54D1b1d7697bfb5c52F4c166976이며 자금은 주로 다음 세 주소에서 나왔습니다.


· 0xa29eEfB3f21Dc8FA8bce065Db4f4354AA683c0240

· x40C351B989113646bc4e9Dfe66AE66D24fE6Da7B

· 0x30F895a2C66030795131FB66CBaD6a1f91461731


아캄은 이 공격에 대한 추적 페이지를 만들었습니다. 이 페이지에서 해커의 수익과 이체를 실시간으로 추적할 수 있습니다.



이 게시글을 기준으로 해커의 수익은 496달러에 불과했지만, 악성 코드 확산 규모가 아직 확인되지 않은 점을 고려하면 이 수치는 더 증가할 것으로 예상됩니다. 개발자는 이 문제에 대한 알림을 받았으며 NPM 보안팀과 적극적으로 협력하여 문제를 해결하고 있습니다. 영향을 받은 대부분의 패키지에서 악성 코드가 제거되어 상황은 통제되고 있습니다.


위험을 어떻게 완화할 수 있을까요?


Defillama 설립자 @0xngmi Yu X는 이 사건이 위험해 보이지만 실제 영향 범위는 그렇게 과장되지 않았다고 말했습니다. 이 사건은 해킹된 NPM 패키지가 출시된 이후 업데이트를 푸시한 웹사이트에만 영향을 미치기 때문에 다른 프로젝트는 여전히 이전 버전을 사용할 것이고, 대부분의 프로젝트는 종속성을 고정하기 때문에 업데이트를 푸시하더라도 이전의 안전한 코드를 계속 사용할 것입니다.


그러나 사용자는 프로젝트가 종속성을 고정했는지 또는 동적으로 다운로드된 종속성이 있는지 실제로 알 수 없으므로 프로젝트 자체에서 자체 검사를 수행하고 먼저 정보를 공개해야 합니다. 이 게시물을 기준으로 MetaMask, Phantom, Aave, Fluid, Jupiter를 포함한 여러 지갑 또는 애플리케이션 프로젝트가 이 사건의 영향을 받지 않았다고 밝혔습니다. 따라서 이론적으로 사용자는 안전하다고 확인된 지갑을 사용하여 확인된 보안 프로토콜에 안전하게 액세스할 수 있습니다. 하지만 아직 보안성을 공개하지 않은 다른 지갑이나 프로젝트의 경우 일시적으로 사용을 피하는 것이 더 안전할 수 있습니다.


원본 링크


BlockBeats 공식 커뮤니티에 참여하세요:

Telegram 구독 그룹:https://t.me/theblockbeats

Telegram 토론 그룹:https://t.me/BlockBeats_App

Twitter 공식 계정:https://twitter.com/BlockBeatsAsia

举报 오류 신고/제보
문고 선택
새 문고 추가
취소
완료
새 문고 추가
자신만 보기
공개
저장
오류 신고/제보
제출