AI Briefing

npm을 넘어 악성코드 보안 권고를 확장한 방법

·2026.08.07 01:51

핵심 내용

GitHub가 OpenSSF 데이터를 활용해 악성코드 권고를 8개 생태계로 확대했다.

자세히 보기

GitHub가 OpenSSF의 악성 패키지 데이터를 GitHub Advisory Database에 연동해 악성코드 보안 권고와 Dependabot 경고 지원 범위를 npm에서 8개 주요 패키지 생태계로 확대했다. 지원 대상은 npm, PyPI, Maven, RubyGems, NuGet, Go, crates.io, PHP Composer다.

기존에는 GitHub가 직접 탐지한 npm 악성 패키지만 별도 내부 경로로 처리했다. 그러나 OpenSSF의 malicious-packages 저장소에는 2023년 출범 이후 OSV 형식의 보고서 1만5,000건 이상이 축적됐고, 오타 패키지, 의존성 혼동 공격, 계정 탈취, 악성 사전 빌드 바이너리 등 다양한 유형을 다룬다.

GitHub는 생태계별 탐지 시스템을 새로 8개 구축하는 대신, 저장소 기반 importer 하나를 만들었다. importer는 마지막 실행 이후 변경된 파일을 읽고, 각 OSV 레코드를 스키마에 맞춰 필수 필드·자료형·형식을 검증한 뒤 데이터베이스에 반영한다. 검증에 실패한 레코드는 수정해 통과시키지 않고 거부 및 기록한다.

수집된 데이터는 출처, 식별자, 존재할 경우 CVE ID, 원본 레코드 스냅샷, 게시 파이프라인에 필요한 매핑 정보로 정규화된다. 이 과정에서 PyPI와 pip처럼 생태계 명칭이 다른 문제, 개별 버전 중심으로 기록된 OSV의 영향 범위, 버전 정보나 상세 설명이 없는 보고서, 철회된 권고를 처리한다.

중복 수집도 별도로 방지했다. GitHub가 OpenSSF 저장소에 자체 npm 악성코드 권고를 기여하기 때문에 이를 그대로 가져오면 자신의 데이터를 다시 수입하게 된다. importer는 OSV의 origin 메타데이터를 확인해 ghsa-malware로 표시된 자체 보고서를 제외하며, 실제 검증 과정에서 매달 새로 유입되는 npm 보고서의 절반 이상이 이 방식으로 걸러졌다.

악성코드 권고는 공격이 진행 중일 때 신속히 배포해야 하므로 사람의 사전 검토 없이 자동 게시된다. 이번 확장으로 자동 게시된 권고가 Dependabot 경고를 생성할 수 있게 됐으며, GitHub는 이를 위해 상류 데이터 오류가 보안 경고로 이어질 가능성을 고려한 검증과 중복 제거 절차를 적용했다.

이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.

AI 처리 방식을 확인하거나, 요약 오류와 출처 표기 문제, 삭제 요청을 문의 · 건의로 알려주세요.