GitHub, 악성 패키지 막는 npm Firewall 공개
최근 30일 조회수 — 좋아요 —핵심 요약
GitHub가 정책 기반 검사와 냉각 기간으로 의심스러운 npm 패키지 설치를 차단하는 기능을 출시했다.

GitHub가 의심스러운 npm 패키지를 설치 단계에서 차단하는 ‘npm Firewall’을 공개 미리보기로 출시했다. npm Firewall은 메타데이터 요청과 패키지 다운로드를 검사해 악성 징후를 찾고, 설정한 보안 정책을 통과하지 못한 패키지의 설치를 막는다. 현재 npm만 지원하며 데이터 상주형을 포함한 모든 GitHub Enterprise Cloud 고객이 이용할 수 있다.1
npm Firewall은 개발자 단말이나 사내 레지스트리와 공개 패키지 저장소 사이에 놓인다. 코딩 에이전트와 지속적 통합·배포(CI/CD) 호스트가 npm에 직접 접속하는 대신 npm Firewall을 거치도록 구성하는 방식이다. AI 에이전트나 CI 실행기는 사용자가 일일이 승인하지 않아도 의존성을 자동 설치하므로, 악성 패키지가 빌드 환경에 빠르게 유입될 위험이 있다. GitHub는 설치 직전의 요청을 정책 관문에서 검사해 이 경로를 통제하려 한다.1
관리자가 설정할 수 있는 정책은 다섯 가지다. GitHub Advisory Database에 등록된 악성코드와 취약점을 기준으로 차단할 수 있으며, 취약점 기준은 기본값인 ‘치명적’부터 ‘높음 이상’, ‘중간 이상’, ‘모든 심각도’까지 고를 수 있다. 이전 버전에는 있었던 SLSA 증명이 새 버전에서 사라진 경우 설치를 막는 ‘증명 다운그레이드’ 차단도 제공한다. 새로 추가된 preinstall·postinstall 스크립트를 탐지하는 기능은 설치 훅을 이용한 정보 탈취를 겨냥한다.1
패키지가 공개된 뒤 일정 기간 설치를 미루는 냉각 기간도 설정할 수 있다. 범위는 1~365일이고 기본값은 하루이며, 0으로 지정하면 끌 수 있다. 잘못 차단된 패키지는 예외를 신청해 엔터프라이즈 관리자나 보안 관리자의 승인을 받을 수 있다.1
이런 대기 기간은 npm뿐 아니라 Python, VS Code, Ruby, Bun, pnpm, Yarn 등으로 확산하고 있다. 탈취한 패키지 유지관리자 계정으로 인기 패키지의 오염된 버전을 배포하더라도 자동 빌드에 즉시 퍼지는 것을 늦춰, 보안 도구와 관리자가 탐지할 시간을 벌기 위해서다. 다만 정상적인 긴급 수정도 함께 지연되며, 탐지를 피한 악성 코드는 시간이 지난다고 안전해지지 않는다. npm Firewall은 탐지 자체를 대체하기보다 설치 시점에 속도 조절과 정책 집행을 더하는 장치에 가깝다.1
Footnotes
읽기 목록은 이 브라우저에 저장됩니다.
출처
이 글은 위 출처를 근거로 자동 생성된 뒤 발행됐습니다. 원문을 함께 확인해 주세요. 교차 보도 없이 단독 출처로 작성됐습니다.