사이버보안 및 프라이버시

마스트라 AI 공급망 공격, 북조선 해킹그룹 ‘사파이어 슬리트’로Microsoft로 확인

작성자 Mag-Info Tech editorial · 2026-06-21

마스트라 AI 공급망 공격, 북조선 해킹그룹 ‘사파이어 슬리트’로Microsoft로 확인

npm 생태계의 새로운 위협, ‘사파이어 슬리트’가 공급망을 겨냥하다

지난주npm 저장소에서 공개된 ‘마스트라 AI’ 공급망 공격은npm 패키지 관리자 생태계에 새로운 위협을 제기했습니다. Microsoft는 이번 공격을 주도한 해킹 그룹을 북조선 국가 지원 해킹 조직 ‘사파이어 슬리트’(별칭 블루노프)로 특정했습니다. 공격자들은 npm 메인테이너 계정 하나를 탈취해 140개 이상의 @mastra 범위 패키지에 악성 코드를 삽입했으며, 이는 개발자 시스템에 침투해 민감한 인증 정보와 암호화폐 관련 데이터를 탈취하는 데 목적이 있었습니다. npm 생태계의 신뢰성에 치명적인 타격을 입힐 수 있는 이 공격은 단순히 패키지 하나를 넘어 전체 개발 워크플로우의 보안 태세를 재검토해야 한다는 경고로 받아들여져야 합니다.

이번 공격은 npm 메인테이너 계정 ‘ehindero’를 장악한 후 시작되었습니다. 공격자들은 해당 계정의 퍼블리싱 권한을 악용해 ‘dayjs’라는 정상 라이브러리와 유사한 이름의 ‘easy-day-js’를 악성 종속성으로 삽입했습니다. 개발자들이 이 패키지를 설치하면 사후 설치 훅(post-install hook)이 실행되면서 시스템에 악성 드롭퍼가 배포됩니다. 드롭퍼는 TLS 인증서 검증 기능을 무력화하고, 명령 및 제어(C2) 서버와 통신해 두 번째 페이로드를 다운로드한 후 숨은 프로세스로 실행합니다. 이 공격은npm 생태계의 취약성을 드러낼 뿐 아니라, 공급망 공격이 개발자 개인과 조직 모두에게 얼마나 광범위한 영향을 미칠 수 있는지를 보여주는 사례입니다.

‘easy-day-js’ 악성 종속성의 작동 원리와 감염 경로

악성 종속성 ‘easy-day-js’는 개발자들이 흔히 사용하는 ‘dayjs’ 라이브러리와 이름만 비슷할 뿐 실제로는 완전히 다른 코드로 구성되어 있습니다. npm 패키지를 설치하는 과정에서 자동으로 실행되는 post-install 훅은 개발자 시스템에 침투하기 위한 첫 관문 역할을 합니다. 이 훅은 TLS 인증서 검증을 우회하고, 공격자-controlled C2 서버와 통신한 후 두 번째 페이로드를 다운로드합니다. 다운로드된 페이로드는 크로스 플랫폼 정보 탈취 도구로, Windows·Linux·macOS 시스템을 모두 타깃으로 삼습니다.

정보 탈취 도구는 시스템 정보(호스트 이름, OS 버전, 아키텍처), 브라우저 기록, 설치된 애플리케이션 목록, 실행 중인 프로세스 등을 수집합니다. 특히 166종의 암호화폐 월렛 브라우저 확장 프로그램(메타마스크, 팬텀, 코인베이스 월렛, 바이낸스 월렛, 트론링크 등)을 감지해 설치 여부를 확인하며, 암호화폐 관련 데이터를 탈취할 가능성이 높습니다. 지속성(persistence) 메커니즘도 플랫폼별로 차별화되어 있습니다. Windows에서는 레지스트리 ‘Run’ 키, macOS에서는 LaunchAgents, Linux에서는 systemd 서비스를 활용해 악성 코드가 재실행되도록 설정됩니다. 이처럼 세심한 공격 설계는 개발자 시스템이 한 번 감염되면 지속적인 위협으로 남을 수 있음을 시사합니다.

developer typing code laptop

사파이어 슬리트의 공격 패턴과 금융·암호화폐 타깃팅

Microsoft에 따르면 이번 공격의 후속 활동은 사파이어 슬리트의 과거 활동 패턴과 일치합니다. 이 그룹은 주로 금융 sector를 타깃으로 삼는 북조선 국가 지원 해킹 조직으로 알려져 있습니다. 특히 암호화폐 관련 인프라를 겨냥한 공격은 이 그룹의 전형적인 특징입니다. 이번 공격에서도 166종의 암호화폐 월렛 확장 프로그램을 감지하는 기능이 포함된 점은, 개발자 시스템을 통해 암호화폐 사용자의 개인키나 시드 구문을 탈취할 가능성이 있음을 보여줍니다.

사파이어 슬리트는 2014년 ‘라자루스 그룹’으로 처음 알려진 이후, 금융 기관과 암호화폐 거래소, 그리고 개발자 환경을 겨냥한 공급망 공격을 지속해 왔습니다. 이들은 주로 사회공학적 기법과 공급망 공격을 조합해 목표 시스템에 침투합니다. 이번 마스트라 AI 공격에서도 npm 메인테이너 계정 탈취라는 사회공학적 수법이 사용되었습니다. 이처럼 공급망 공격은 단일 취약점을 노리는 것이 아니라, 신뢰 체인 자체를 무너뜨리는 방식으로 작동합니다. 개발자들은 이제 자신이 사용하는 패키지의 출처뿐 아니라, 패키지를 게시한 메인테이너의 신뢰성까지 검증해야 하는 시대에 직면해 있습니다.

npm 생태계의 취약성과 메인테이너 계정 보안 문제

npm 생태계는 전 세계 수천만 명의 개발자가 사용하는 핵심 인프라이지만, 동시에 공격surface로도 악용되고 있습니다. 이번 공격에서 핵심적인 취약점은 npm 메인테이너 계정의 보안이었습니다. ‘ehindero’라는 계정은npm 패키지 관리 권한을 보유하고 있었으며, 공격자들은 이 계정을 장악해 악성 패키지를 배포할 수 있었습니다. npm 생태계의 분산된 특성상, 개별 메인테이너의 보안 수준이 전체 생태계의 안정성에 직결됩니다.

npm은 2021년에도 ‘ua-parser-js’ 패키지 해킹 사건을 겪은 바 있습니다. 당시 공격자들은 정상 패키지를 악성 버전으로 대체해 수백만 번의 다운로드를 유도했습니다. 이처럼 npm 저장소는 악성 패키지를 즉각적으로 탐지하고 차단하는 시스템이 필요하지만, 아직은 완벽하지 않습니다. npm Inc.는 보안 검사 도구와 패키지 서명 기능을 강화하고 있지만, 개발자들은 여전히 패키지를 설치하기 전에 소스 코드를 직접 확인하고, 가능한 한 공식 저장소나 신뢰할 수 있는 미러를 통해 패키지를 설치하는 것이 중요합니다.

개발자 워크플로우 보안 강화: 실무 가이드

Ad
MEFAI trade resultMEFAI trade resultMEFAI trade resultMEFAI trade resultMEFAI trade resultMEFAI trade resultMEFAI trade resultMEFAI trade result
트레이딩은 카지노가 아닙니다. 도박을 멈추세요.

MEFAI의 AI로 실제 성과를 거두세요. Pro 플랜에서 $50 할인을 받으세요.

$50 할인 받기

스폰서 콘텐츠 · 과거의 성과가 미래의 결과를 보장하지 않습니다. 금융 조언이 아닙니다.

공급망 공격은 개발자 시스템에 직접적인 위협을 가할 뿐 아니라, 조직 전체의 보안 태세를 위협할 수 있습니다. 개발자들은 다음과 같은 실무 가이드라인을 적용해 보안을 강화할 필요가 있습니다.

server room data center

첫째, 패키지 설치 시 항상 package.json의 종속성 목록을 검토하고, 낯선 패키지나 버전은 설치하지 않아야 합니다. 둘째, npm ci 또는 yarn install --frozen-lockfile과 같은 명령어를 사용해 잠금 파일(lockfile)을 통해 일관된 종속성 버전을 유지해야 합니다. 셋째, npm audit 또는 Snyk과 같은 보안 스캐닝 도구를 사용해 패키지 내 취약점을 주기적으로 점검해야 합니다. 넷째, 개발 환경에서는 최소 권한 원칙을 적용해 npm 스크립트 실행 시 불필요한 post-install 훅이 실행되지 않도록 제한할 수 있습니다.

또한, 조직 차원에서는 npm 패키지의 게시자와 메인테이너에 대한 신뢰성 평가를 강화해야 합니다. npm 계정의 2단계 인증(2FA)을 의무화하고, 패키지 게시 시 서명(signature) 확인 절차를 도입하는 것도 고려해 볼 수 있습니다. 특히 암호화폐 관련 프로젝트를 다루는 조직이라면, 개발자 워크스테이션의 격리 및 모니터링을 강화하고, 암호화폐 월렛 사용 시 하드웨어 월렛을 권장하는 것이 좋습니다.

크로스 플랫폼 정보 탈취 도구의 위협과 대응 전략

이번 공격에서 사용된 악성 드롭퍼는 Windows·Linux·macOS를 모두 타깃으로 하는 크로스 플랫폼 정보 탈취 도구였습니다. 이는 개발자들이 사용하는 다양한 운영체제와 개발 환경을 모두 고려해야 한다는 점을 시사합니다. 특히 macOS와 Linux 시스템은 상대적으로 보안 위협에 노출될 가능성이 높지만, 보안 솔루션이 상대적으로 부족한 경우가 많습니다. 개발자들은 시스템 모니터링 도구를 설치해 비정상적인 프로세스나 네트워크 통신을 탐지할 필요가 있습니다.

정보 탈취 도구는 시스템 정보를 수집한 후 C2 서버로 전송합니다. 따라서 네트워크 레벨에서 의심스러운 통신을 탐지하는 것도 중요합니다. 예를 들어, 평소 사용하지 않는 외부 도메인으로의 연결 시도나 TLS 핸드셰이크 실패 패턴을 모니터링하면 초기 감염을 탐지할 수 있습니다. 또한, 시스템 콜 모니터링 도구(eBPF, Sysmon 등)를 활용해 악성 프로세스의 행위를 실시간으로 감시할 수도 있습니다.

padlock cyber security

조직 내 보안 문화와 지속적인 모니터링의 중요성

공급망 공격은 한 번의 실수로 인해 조직 전체가 위험에 노출될 수 있는 특성을 지닙니다. 따라서 조직은 보안 문화와 지속적인 모니터링 체계를 구축해야 합니다. 개발자들은 패키지를 설치하기 전에 소스 코드를 직접 검토하고, 패키지 관리 도구의 보안 기능을 최대한 활용해야 합니다. 또한, 보안 팀은 npm 패키지 다운로드 로그와 설치 로그를 모니터링해 비정상적인 패키지 설치 패턴을 탐지해야 합니다.

조직은 또한npm 패키지의 게시자와 메인테이너에 대한 신뢰성 평가를 강화하고, 패키지 게시 시 서명 확인 절차를 도입하는 것도 고려해야 합니다. 특히 암호화폐 관련 프로젝트를 다루는 조직이라면, 개발자 워크스테이션의 격리 및 모니터링을 강화하고, 암호화폐 월렛 사용 시 하드웨어 월렛을 권장하는 것이 좋습니다. 마지막으로, 보안 사고 발생 시 신속한 대응을 위한 인시던트 대응 계획(IRP)을 수립하고 정기적으로 테스트해야 합니다.

##npm 생태계의 미래와 보안 강화 방안

npm 생태계는 전 세계 개발자들의 협업과 혁신을 가능케 하지만, 동시에 공격surface로도 악용되고 있습니다. 이번 마스트라 AI 공격은npm 생태계의 취약성을 여실히 드러냈으며, 공급망 공격이 얼마나 광범위한 영향을 미칠 수 있는지를 보여주었습니다. npm Inc.와 같은 플랫폼 제공자는 패키지 서명, 2FA 인증, 보안 스캐닝 도구 강화 등을 통해 생태계 보안을 강화해야 합니다.

개발자들은 패키지 관리 도구의 보안 기능을 최대한 활용하고, 패키지 설치 전후로 보안 검사를 실시해야 합니다. 또한, 조직은 보안 문화와 지속적인 모니터링 체계를 구축해 공급망 공격에 대비해야 합니다. 이번 공격은npm 생태계의 신뢰성을 재검토할 시점임을 시사합니다. 개발자와 조직은 보안 태세를 강화하고,npm 생태계의 지속 가능한 발전을 위해 노력해야 합니다.

더 보기 사이버보안 및 프라이버시