I. 개요
SBOM이란 소프트웨어를 구성하는 컴포넌트·라이브러리·의존성의 완전한 목록과 메타데이터를 기계 판독 가능한 형태로 기술한 문서이다. 2020년 SolarWinds 공격, 2021년 Log4Shell(CVE-2021-44228) 취약점이 소프트웨어 공급망 전반에 연쇄 파급되면서, 미국 바이든 행정부는 2021년 행정명령 EO14028을 통해 연방 소프트웨어 납품사에 SBOM 제공을 의무화하였다.
II. SBOM 핵심 구성 요소 (NTIA 최소 요건)
| 필드 | 설명 | 예시 |
|---|---|---|
| Supplier Name | 컴포넌트 공급자명 | Apache Software Foundation |
| Component Name | 컴포넌트 명칭 | log4j-core |
| Version | 배포 버전 | 2.14.1 |
| Unique Identifier | CPE, PURL 등 고유 식별자 | pkg:maven/org.apache.logging.log4j/log4j-core@2.14.1 |
| License | 라이선스 정보 | Apache-2.0 |
III. SBOM 표준 형식 비교
| 형식 | 주관 | 포맷 | 특징 |
|---|---|---|---|
| SPDX | Linux Foundation / ISO 5962 | TV, JSON, RDF | 라이선스 컴플라이언스 특화 |
| CycloneDX | OWASP | XML, JSON | 보안·취약점 분석 특화 |
| SWID | ISO/IEC 19770-2 | XML | 자산 관리·IT 거버넌스 특화 |
IV. SCA(Software Composition Analysis)와의 연계
SBOM은 SCA 도구(Snyk, Black Duck, OWASP Dependency-Check)와 연계하여 CVE 데이터베이스와 자동 매핑함으로써 신규 취약점 공개 시 영향받는 시스템을 즉시 식별·패치 우선순위화할 수 있다. DevSecOps 파이프라인에서 빌드 단계 자동 SBOM 생성이 표준 관행으로 정착되고 있다.
V. 결론 및 기술사 관점
SBOM은 소프트웨어 투명성과 공급망 보안의 핵심 인프라다. 국내도 과기정통부·KISA 주도로 SBOM 가이드라인이 정비 중이며, 도입 시 자동화 생성(SBOM-as-Code) → 중앙 저장소 관리 → 취약점 연속 모니터링의 3단계 체계 구축이 실효성 있는 접근이다.
핵심 키워드: SBOM, EO14028, SPDX, CycloneDX, SCA, PURL, CVE, 소프트웨어 공급망, Log4Shell, SolarWinds