npm

axios 사용자라면 반드시 읽어야 할 긴급 경고

URITRIP
URITRIP
2026년 4월 2일
1

이번에 정말 충격적인 사건이 터졌습니다. 전 세계에서 가장 많이 쓰이는 HTTP 클라이언트 라이브러리 axios가 npm 공급망 공격을 당했습니다.

이번 공격은 단순한 버그가 아니라, maintainer 계정을 해킹해 악성 버전을 직접 배포한 전형적인 Supply Chain Attack입니다.

무슨 일이죠?

  • 2026년 3월 31일 (UTC 기준 새벽)
  • axios 리드 메인테이너 jasonsaayman의 npm 계정이 해킹당함
  • 공격자가 두 개의 악성 버전을 직접
    • axios@1.14.1 (latest 태그)
    • axios@0.30.4 (legacy 태그)
  • npm이 약 2~3시간 만에 해당 버전을 삭제했지만, 이미 많은 CI/CD와 개발 머신이 감염

무서운 점

axios 소스 코드는 하나도 건드리지 않았습니다.

package.json에만 phantom dependency (plain-crypto-js@4.2.1)를 추가했습니다.

npm install 하는 순간 postinstall 스크립트가 자동 실행되어 크로스 플랫폼 RAT(Remote Access Trojan)이 설치됩니다.

공격의 특징

  • Windows, macOS, Linux 모두 공격 가능
  • 클라우드 키, SSH 키, npm token, AWS credential 등 대량 탈취
  • 설치 후 자기 흔적을 지우고 package.json을 정상 버전으로 바꿔 포렌식 회피
  • 일부 분석에 따르면 북한 연계 공격 그룹으로 의심 (Sapphire Sleet 등)

확인 방법

# 1. 현재 설치된 axios 버전 확인
npm list axios

# 2. lockfile에서 악성 버전 검색
grep -E "axios@1\.14\.1|axios@0\.30\.4" package-lock.json

# 3. plain-crypto-js도 확인
npm list plain-crypto-js

안전한 버전으로 다운그레이드

npm install axios@1.14.0    # 1.x 사용자
# 또는
npm install axios@0.30.3    # 0.x 사용자

감염이 의심된다면?

  1. 해당 머신/CI 환경을 즉시 isolated
  2. 모든 credential 전체 rotate (GitHub, AWS, DB, npm token 등)
  3. EDR 솔루션 또는 안티바이러스로 전체 스캔
  4. lockfile을 강제로 clean한 뒤 재설치

axios는 우리 대부분의 프로젝트에 이미 깊숙이 박혀 있는 라이브러리입니다.

지금 당장 프로젝트 전체를 점검해보시죠.

#axios#npm 보안 위협
Discord디스코드로그인

전체 메뉴