프로젝트 소개

supply-chain-guard는 로컬 및 오프라인으로 실행되는 오픈소스 공급망 보안 스캐너이다. 15개 생태계에 걸쳐 알려진 악성 패키지, 확장, 플러그인, 프로바이더, 컨테이너 이미지, CI 액션을 매칭하며, 저장소의 임의 깊이에서 매니페스트와 lockfile을 읽고 lockfile에 고정된 전이적 의존성까지 포함한다. 또한 설치된 아티팩트의 멀웨어 동작을 분석하여 GlassWorm, Vidar, Shai-Hulud, 가짜 AI 도구 저장소, 계정 탈취 등의 캠페인을 포괄하며 총 350개 이상의 위협 지표를 갖추고 있다. 매칭 외에도 실제 의존성 인벤토리를 포함한 CycloneDX 1.6 SBOM을 생성하고, in-toto/DSSE 증명을 파싱 및 구조적으로 검증하여 SLSA 출처를 등급화하며, 개별 발견 사항을 공격 체인 인시던트로 상관 분석한다. 이 프로젝트는 EU 사이버 복원력 법(Cyber Resilience Act)의 SBOM 및 컴포넌트 문서화 작업과 NIS2 공급망 위험 관리 조치에 대한 지원을 명시하고 있다. 탐지 영역에는 알려진 악성 패키지 및 컴포넌트 식별자, 멀웨어 캠페인 마커 및 C2 인프라, 난독화된 실행, 보이지 않는 유니코드, RTL 오버라이드, 엔트로피 분석과 같은 코드 수준 위협, 설치 훅 분석, 타이포스쿼팅, 의존성 혼동, 스타재킹, 알려진 악성 버전 차단 목록, GitHub Actions 및 Dockerfile 강화 문제, Terraform/IaC 관련 우려, 저장소 신뢰 신호, AI 코딩 에이전트를 겨냥한 프롬프트 인젝션 토큰, 자격 증명 패턴, 내부 토폴로지 노출, 데드 드롭 리졸버/C2 탐지가 포함된다. 상관 분석 엔진은 발견 사항을 신뢰도 점수가 있는 명명된 인시던트로 연결하고, 신뢰 분석은 게시자, 코드 품질, 의존성 신뢰, 릴리스 프로세스를 점수화한다. npm(Node.js 22+), npx, pre-commit 훅, GHCR의 멀티 아키텍처 Docker 이미지, GitHub Action, AI 코딩 에이전트용 MCP 서버를 통해 배포된다. 출력 형식에는 텍스트, JSON, HTML, Markdown, SARIF 2.1.0, CycloneDX SBOM, Shields 배지 JSON, GitLab 의존성 스캐닝 보고서가 포함된다. 종료 코드는 --fail-on으로 구성할 수 있으며, 불완전한 커버리지는 조용히 통과되지 않고 partialScan으로 표시된다. 스캔 자체는 네트워크 요청을 하지 않으며, 선택적 피드 새로고침과 레지스트리 쿼리에는 네트워크 접근이 필요하다.