피드로 돌아가기
Dev.toSecurity
원문 읽기
npm postinstall 스크립트를 악용한 PostCSS 사칭 RAT 공급망 공격
npm Supply Chain RAT: PostCSS Impersonation & Dependency Confusion
AI 요약
Context
npm의 패키지 설치 라이프사이클 모델이 제공하는 임의 코드 실행 권한을 악용한 공급망 공격 사례임. 개발자가 PostCSS 플러그인을 검색하거나 튜토리얼의 패키지명을 복사하는 과정에서 발생하는 신뢰 기반의 의존성 추가 메커니즘을 공격 벡터로 활용함.
Technical Solution
- PostCSS 라이브러리를 사칭한 패키지명 설계를 통한 사회 공학적 유도
- package.json의 preinstall 및 postinstall 훅을 통한 RAT 페이로드 자동 실행 구조 설계
- Windows Command Shell 및 PowerShell을 이용한 임의 실행 파일의 로컬 드롭 및 실행
- Registry RunKeys 및 Task Scheduler 등록을 통한 OS 수준의 영속성(Persistence) 확보
- VS Code 및 Node.js 등 신뢰 프로세스 내 DLL Hijacking을 통한 탐지 회피 전략 적용
- C2 서버와의 리버스 쉘 연결을 통한 내부 네트워크 침투 거점 마련
실천 포인트
1. npm install 시 --ignore-scripts 옵션을 사용하여 설치 스크립트 실행 차단
2. 내부 프라이빗 패키지 레지스트리(Private Registry) 도입을 통한 외부 의존성 통제
3. CI/CD 파이프라인 내 의존성 스캐닝 도구(SCA) 도입 및 취약 패키지 화이트리스트 관리
4. 개발 환경의 컨테이너화를 통한 호스트 OS 격리 및 최소 권한 원칙 적용