Kant's IT/Issue on IT&Security

악성 npm 패키지, 개발자를 노린 공급망 공격 발생

Kant Jo 2025. 3. 8. 22:29

Malicious npm Package Targets Developers for Supply Chain Attack

 

Malicious npm Package Targets Developers for Supply Chain Attack

The Socket Research Team has uncovered a malicious npm package@ton-wallet/create designed to steal sensitive cryptocurrency wallet keys.

gbhackers.com

 

  • 공격 개요
    • Socket Research Team이 악성 npm 패키지 @ton-wallet/create를 발견
    • 해당 패키지는 TON 블록체인 생태계 내 개발자와 사용자의 암호화폐 지갑 키를 탈취하도록 설계됨
    • TON(Telegram Open Network)은 탈중앙화 애플리케이션(dApps), 스마트 계약, 암호화폐 거래를 위한 플랫폼으로, Telegram이 처음 개발함
  • 공격 방법 및 수법
    • 악성 패키지는 신뢰받는 @ton/ton 패키지를 사칭하여 6개월간 탐지되지 않음
    • @ton/ton 패키지는 주간 다운로드 64,000건을 기록하는 인기 패키지로, 공격자는 이를 이용해 신뢰를 악용
    • 악성 패키지는 암호화폐 지갑에 접근하는 데 사용되는 중요한 키인 니모닉 문구를 탈취
    • 탈취된 니모닉 문구는 공격자가 제어하는 Telegram 봇으로 전송
  • 환경 변수(process.env.MNEMONIC) 악용
    • Node.js 애플리케이션에서 민감한 정보를 저장할 때 사용하는 process.env.MNEMONIC 환경 변수를 악용
    • 니모닉 문구는 일반적으로 12 또는 24개의 단어로 구성되어, 암호화폐 지갑에 대한 전체 액세스를 제공
    • 공격 스크립트는 node-telegram-bot-api 라이브러리를 사용하여 데이터를 실시간으로 Telegram 봇에 전송
    • 이 방법을 통해 탐지 메커니즘을 우회하며, 피해자의 자산에 실시간으로 접근 가능
  • 공격 대상 및 영향
    • 블록체인 개발자: TON 지갑 기능을 통합하는 개발자가 의도치 않게 악성 패키지를 사용하게 됨
    • 암호화폐 지갑 사용자: 감염된 패키지를 통해 지갑 키를 공격자에게 노출
    • TON 기반 플랫폼: 손상된 종속성을 사용하면 전체 사용자 기반이 위험에 노출됨
    • TON 생태계의 활성 사용자가 백만 명을 초과하는 만큼, 이번 공격의 규모는 상당함
  • 보안 권고
    • 의존성 감사(Dependency Audits): 타사 패키지를 정기적으로 검토해 이상 징후를 확인
    • 자동 스캔 도구 활용: Socket의 GitHub 앱이나 CLI와 같은 도구를 사용해 설치 및 빌드 시 악성 동작을 탐지
    • 브라우저 확장 프로그램 사용: 브라우징 또는 다운로드 시 실시간으로 의심스러운 패키지를 경고
    • npm에 @ton-wallet/create 패키지를 신고해 추가적인 악용을 방지함
  • 결론
    • 이번 사건은 오픈 소스 생태계의 취약성을 다시 한번 강조하며, 소프트웨어 공급망을 보호하는 것의 중요성을 보여줌
    • 개발자는 타사 라이브러리 및 패키지를 도입할 때 항상 보안 점검과 검증 절차를 수행해야 함
    • 공급망 공격을 예방하기 위해 체계적인 보안 프로세스를 마련하고 주기적으로 업데이트할 필요가 있음