포스트모템: 2026년 3월 Axios 공급망 공격
Source: Dev.to
사건
2026년 3월 31일, 자바스크립트 생태계에서 핵심 HTTP 클라이언트인 Axios를 목표로 한 고위험 공급망 공격이 발생했습니다. 공격자는 유지관리자의 NPM 계정을 탈취해 악성 의존성 plain-crypto-js를 주입했으며, 이 패키지는 크로스‑플랫폼 원격 접근 트로이목마(RAT)를 배포했습니다.
상세 정보
영향을 받은 버전
axios@1.14.1axios@0.30.4
악성 의존성
plain-crypto-js@4.2.1
페이로드
- 크로스‑플랫폼 RAT (Linux, macOS, Windows)
C2 서버
sfrclak.com:8000
해결 기간
- 약 3시간 동안 활동 (00:21 – 03:29 UTC)
공격자는 악성 로직을 서브‑의존성에 숨겨 표준 보안 감사를 우회했습니다. 일반 npm install을 통해 설치되면 페이로드는 호스트 머신을 다음과 같이 스캔합니다:
- 환경 변수:
.env파일 및 현재 쉘에 설정된 변수들. - 인증 토큰:
~/.npmrc와~/.aws/credentials. - SSH 키:
~/.ssh에 있는 보호되지 않은 개인 키.
데이터는 sfrclak.com 명령‑제어(C2) 서버로 POST 요청을 통해 유출되었습니다.
복구 프로토콜
-
네트워크 싱크홀링 –
/etc/hosts에 C2 도메인을127.0.0.1로 매핑하여 추가 유출을 차단하고 전화‑홈 기능을 비활성화합니다. -
Lockfile 감사 – 로컬 프로젝트 전체에서 악성 패키지 흔적을 검색합니다:
find . -type f \( -name "package-lock.json" -o -name "yarn.lock" \) -print0 \ | xargs -0 grep "plain-crypto-js" -
환경 정화 – 전역 NPM 캐시를 비우고 도구 관리자(예:
mise)를 업데이트하여 앞으로 검증된 버전만 사용하도록 합니다.
Pro‑Tip: 항상 npm audit을 실행하거나 Snyk과 같은 도구를 사용해 package.json에 직접 나타나지 않는 “숨겨진” 서브‑의존성을 모니터링하세요.