깃허브가 2026년 7월 28일 공급망 방어 세 가지를 한꺼번에 내놨어요. 첫째, npm 에 새로 올라오는 모든 패키지는 설치 가능해지기 전에 자동 검사를 거쳐 정상 게시·수동 검토·차단 중 하나로 갈리고, 보통 5분·몰릴 땐 15분 넘게 늦어져요. 이때 침투 시험·보안 연구·코드 난독화 도구처럼 멀웨어와 구분이 어려운 '양용(dual-use)' 패키지는 package.json 에 contentPolicy 를 선언하고 패키지 루트에 DISCLOSURE 파일을 둬야 하며, 2FA 대화형 세션으로만 바로 게시할 수 있고 OIDC 신뢰 게시를 포함한 나머지 경로는 단계적 게시를 거쳐야 해요. 둘째, Dependabot 악성 패키지 경고가 OpenSSF 의 악성 패키지 목록을 받아 npm·PyPI 등으로 범위를 넓혔어요. 셋째, github.com 공개 저장소에서 수상하다고 판정된 Actions 워크플로 실행은 설정 없이 자동으로 보류되고, 쓰기 권한이 있는 사람이 웹 로그인 상태에서 승인해야 다시 돌아가요.
- 2FA
- 이중 인증. 비밀번호 외에 일회용 코드 같은 두 번째 수단을 추가로 요구하는 로그인 방식.
- OIDC
- OpenID Connect. npm '신뢰 게시'에서 CI 가 장기 토큰 없이 자기 신원을 증명하는 데 쓰는 표준 인증 규약.
- CI
- 지속적 통합. 코드 변경마다 자동으로 빌드·테스트를 돌리는 체계.
- OpenSSF
- Open Source Security Foundation. 리눅스 재단 산하 오픈소스 보안 단체로, 악성 패키지 목록을 공개 관리한다.
당장 확인할 게 있어요. 게시 직후 바로 설치한다고 가정한 CI 스크립트는 5~15분 지연을 견디게 고치고, 보안·난독화 도구를 npm 에 올리고 있다면 OIDC 신뢰 게시로 자동 배포하던 파이프라인이 막히니 contentPolicy·DISCLOSURE 를 붙이고 단계적 게시로 옮겨야 해요. Dependabot 멀웨어 경고는 별도 토글이라 안 켜뒀으면 넓어진 범위도 안 오고, 워크플로 보류는 공개 저장소 전용이라 엔터프라이즈 서버는 빠져 있어요. 코딩 에이전트가 사람 확인 없이 의존성을 끌어오고 CI 를 돌리는 환경일수록, 사람의 2FA 를 반드시 통과시키는 이 관문이 마지막 안전장치예요.
- 의존성 경고 Dependabot 악성 패키지 경고가 OpenSSF 목록을 받아 npm·PyPI 등으로 넓어졌고, 이미 켜둔 곳은 추가 설정 없이 자동으로 적용돼요. GitHub Changelog
- Actions 승인 탈취한 자격증명으로 악성 워크플로를 밀어 넣어 CI/CD 시크릿을 훔치는 수법을 겨냥했고, 지금은 github.com 공개 저장소에만 적용돼요. GitHub Changelog
- 양용 정책 원문 침투 시험·보안 연구·코드 난독화 도구가 대상이고, 2FA 대화형 게시가 아니면 단계적 게시를 거쳐야 한다고 못 박았어요. npm Docs
- 왜 지금인가 같은 날 나온 깃허브 보안팀 글이 최근 공급망 공격을 침투·자격증명 탈취·전파 단계로 해부하며 그동안의 조치를 묶어 설명해요. The GitHub Blog
- 배경 사건 5월 @antv 패키지를 감염시킨 '미니 샤이 훌루드'는 설치 훅으로 GitHub Actions 러너의 시크릿까지 긁어 갔고, npm 토큰 6만여 개가 무효화됐어요. Microsoft Security Blog