소프트웨어 자재명세서(SBOM)

Software Bill of Materials

SBOM은 소프트웨어를 구성하는 오픈소스·상용 컴포넌트와 그 버전·라이선스·의존관계를 기계 판독 가능한 형식으로 기술한 목록으로, 소프트웨어 공급망의 투명성 확보와 취약점 대응의 기반이 된다.

핵심 키워드

소프트웨어 공급망 보안(Supply Chain Security)SPDXCycloneDXSWID 태그NTIA 최소 요소(Minimum Elements)의존관계(Dependency)VEX(Vulnerability Exploitability eXchange)미국 행정명령 EO 14028SCA(Software Composition Analysis)

구성도

정리

1. 개요

  • 정의: 소프트웨어 구성 요소(컴포넌트)의 이름·버전·공급자·라이선스·의존관계를 정리한 "부품 명세서"
  • 배경
    • SolarWinds 공급망 공격, Log4j(Log4Shell) 취약점 사태 → 어떤 SW에 취약 컴포넌트가 있는지 파악 불가 문제 부각
    • 오픈소스 의존도 증가로 전이 의존성(Transitive Dependency) 위험 확대
    • 미국 행정명령 EO 14028(2021)에서 연방 납품 SW의 SBOM 제공 요구, EU 사이버복원력법(CRA)도 SBOM 요구

2. 구성/원리

  • NTIA 최소 요소
    • 데이터 필드: 공급자명, 컴포넌트명, 버전, 기타 고유 식별자(PURL·CPE 등), 의존관계, SBOM 작성자, 타임스탬프
    • 자동화 지원: 기계 판독 가능한 표준 형식(SPDX, CycloneDX, SWID)
    • 관행·프로세스: 생성 빈도, 깊이, 미확인 요소 표기, 배포·접근 통제
  • 생명주기: 생성(빌드 시 자동) → 검증·서명 → 배포·공유 → 취약점 DB(CVE) 매칭 → 지속 갱신
  • 연계 기술: SCA 도구, 취약점 DB, VEX(해당 취약점이 실제 악용 가능한지 상태 공유)

3. 특징 또는 비교

구분SPDXCycloneDXSWID
주관Linux FoundationOWASPISO/IEC 19770-2
표준화ISO/IEC 5962Ecma 표준화ISO 표준
강점라이선스 컴플라이언스보안·취약점 관리, 경량설치 SW 자산 식별
형식JSON, YAML, RDF, Tag-Value 등JSON, XML, ProtobufXML
  • 효과: 취약점 영향 범위 신속 파악, 라이선스 위반 예방, 조달 시 투명성 확보, 사고 대응 시간 단축

4. 고려사항·최신 동향

  • 정확성·최신성: 빌드 파이프라인(CI/CD)에 SBOM 자동 생성 통합, 버전 변경 시 갱신
  • 깊이 문제: 직접 의존성뿐 아니라 전이 의존성까지 포함 여부 명시
  • 기밀성: SBOM 자체가 공격 지도 역할 → 접근 통제·선택적 공유
  • 노이즈: 실제 악용 불가 취약점 알림 과다 → VEX로 우선순위화
  • 동향
    • SLSA·서명(Sigstore) 등 빌드 출처(Provenance) 증명과 결합
    • HBOM(하드웨어), AIBOM(AI 모델·데이터셋), CBOM(암호 자산) 등으로 개념 확장
    • 국내 정부 차원의 SW 공급망 보안 가이드라인 발간 및 공공 도입 추진

함께 볼 토픽

v1 · 2026. 10. 19. 갱신 · 틀린 내용을 발견하면 알려 주세요.