엣지도, 판결도 없다: 실제 환경의 78K SBOM에 선언된 의존성 그래프에 대한 대규모 실증 연구
요약
78,612개의 실제 SBOM 데이터를 분석하여 의존성 그래프의 불완전성을 규명한 대규모 연구입니다. 대다수의 SBOM이 의존성 관계(edge)를 누락하고 있어, 이를 기반으로 한 취약점 도달 가능성 분석이 잘못된 결론을 도출할 수 있음을 경고합니다.
핵심 포인트
- 실제 SBOM의 52.9%는 의존성 엣지를 전혀 선언하지 않음
- 의존성 그래프의 불완전성으로 인한 잘못된 취약점 분석 위험 지적
- 퇴화 탐지기를 통해 KEV 재현율을 0.600에서 0.950으로 대폭 개선 가능
- SBOM 생성 도구에 따라 엣지 누락 비율이 극명하게 차이남
Software Bills of Materials (SBOMs)는 단순히 컴포넌트 인벤토리로서뿐만 아니라 의존성 그래프 (dependency graphs)로서 소비됩니다. 취약점 분류 (vulnerability triage), 도달 가능성 필터링 (reachability filtering), 그리고 영향 분석 (impact analysis)은 모두 SBOM이 선언하는 엣지 (edges)를 탐색합니다. 우리는 Wild SBOMs 데이터셋에서 추출한 78,612개의 실제 SBOM 파일(그 중 파싱 가능한 77,092개)을 대상으로 선언된 의존성 그래프에 대한 최초의 대규모 특성 분석을 제시합니다. 우리는 해당 모집단이 세 가지 체제 (regimes)로 나뉜다는 것을 발견했습니다: 52.9%의 SBOM은 엣지를 전혀 선언하지 않았으며 (의존성 관계에 대한 NTIA 최소 요소 요구 사항을 충족하지 못함), 8.8%는 의존성 블록을 선언하지만 대부분의 컴포넌트를 고립된 상태로 남겨두었습니다 (퇴화 체제 (degenerate regime); 최소 50개의 컴포넌트를 가진 이러한 SBOM들 중 고아 (orphan) 비율의 중앙값은 93%였으며, 우리가 Syft로 생성한 11개의 컨테이너 이미지 SBOM들은 95-98%의 고아 비율을 보이며 이 체제에 속했습니다), 그리고 38.3%는 잘 연결된 그래프를 형성합니다. 엣지 방출 (Edge emission)은 기술된 소프트웨어가 아니라 생성기 (generator)에 의해 결정됩니다 (도구 전반에 걸쳐 0%-100%의 엣지 없음 비율). 또한 그래프의 불완전성을 선언하기 위한 명세 수준의 메커니즘 (CycloneDX compositions)은 모집단의 0.10%에 의해 사용됩니다. 우리는 처음 두 체제에서 일반적인 소비자 추론인 "경로가 없으면 도달 불가능함을 의미한다"는 결론이 입증 가능한 불완전한 산출물로부터 도출된 타당하지 않은 폐쇄 세계 (closed-world) 결론이라고 주장합니다. 실제 운영 중인 취약점 우선순위 지정 시스템 (vulnerability-prioritization system)에서, 그 결과로 발생하는 거부 (veto)를 퇴화 탐지기 (degeneracy detector)에 의해 보호되는 명시적인 "알 수 없음 (unknown)" 수준으로 대체했을 때, 경보 범람 (alert flooding) 없이 KEV 재현율 (recall)을 0.600에서 0.950으로 회복했습니다 (제어된 재점수화 기준; 라이브 엔드 투 엔드 실행 시 0.957). 우리는 우리의 스트리밍 스캐너와 전체 SBOM별 토폴로지 (topology) 데이터셋을 공개합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv Codex (cs.SE)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기