OX Security에 따르면 Shai-Hulud 캠페인으로 440개 이상의 npm 패키지가 악성 코드에 감염됐으며, 영향 범위는 월간 누적 다운로드 20억 건 이상으로 추정됩니다. (TechRadar)
감염된 패키지를 설치하면:
GitHub 토큰, npm 토큰, AWS/GCP/Azure 등 클라우드 자격증명 탈취
CI/CD 환경의 시크릿 및 환경변수 탈취
탈취한 토큰으로 GitHub·npm 계정을 이용해 추가 확산
일부 변종은 토큰을 강제로 폐기하면 시스템 파일을 삭제하는 와이퍼 기능까지 포함 (Akamai)
특히 Keyv와 Cacheable 생태계 등 많은 프로젝트에서 사용하는 라이브러리가 포함되어 있어 직접 설치하지 않았더라도 의존성(Dependency) 을 통해 영향을 받을 가능성이 있습니다. (TechRadar)
Node.js 개발자라면 프로젝트 의존성 점검과 토큰 교체를 권장합니다.
어떻게 점검하면 되나요?
1. 프로젝트 의존성 확인
프로젝트 폴더에서
npm ls keyv
npm ls cacheable
또는
npm ls
으로 설치 여부를 확인합니다.
2. 설치된 버전 확인
npm list --depth=10
또는
npm outdated
3. package-lock.json 검색
Windows
findstr /i "keyv cacheable" package-lock.json
Linux/macOS
grep -iE "keyv|cacheable" package-lock.json
4. npm Audit
npm audit
취약 패키지가 보고되는지 확인합니다.
5. GitHub/NPM 토큰 교체
최근 해당 프로젝트에서
GitHub PAT
npm Token
AWS Access Key
Cloudflare Token
Vercel Token
등을 사용했다면 회전(Rotate) 하는 것이 안전합니다.
6. CI/CD도 확인
GitHub Actions
.github/workflows
에 모르는 Workflow가 추가되지 않았는지 확인하고,
Repository Secrets도 확인하는 것이 좋습니다.
일반 사용자는?
거의 해당되지 않습니다.
영향 대상은 대부분
Node.js 개발자
npm 패키지를 설치하는 개발 환경
CI/CD 서버
오픈소스 유지관리자
입니다.
코인만 하는 일반 PC 사용자라면 크게 걱정할 필요는 없습니다. 다만 AI 에이전트나 봇을 개발하면서 npm install을 자주 실행하는 환경이라면 한 번 점검해 두는 것이 좋습니다.
