Software Bill of Materials(SBOM)
Software Bill of Materials(SBOM)은 소프트웨어를 구성하는 모든 구성 요소를 기록한 “소프트웨어 성분표”입니다. CISA는 SBOM을 소프트웨어 구성 요소의 중첩된 인벤토리, 즉 소프트웨어를 이루는 재료 목록으로 설명합니다.
SBOM이 중요한 이유는 명확합니다. 현대 소프트웨어는 오픈소스 라이브러리, 프레임워크, 외부 패키지, 컨테이너 이미지, 상용 모듈 등 수많은 구성 요소로 만들어집니다. 이 중 하나라도 보안 취약점이 발견되면 기업은 “우리 제품이 영향을 받는가?”를 빠르게 판단해야 합니다. SBOM은 이 질문에 답하기 위한 기반 자료입니다.

SBOM이 필요한 이유
SBOM은 단순한 문서가 아니라 소프트웨어 공급망 보안(Software Supply Chain Security)의 핵심 도구입니다. NIST도 SBOM을 소프트웨어 구성 요소와 공급망 관계를 담은 공식 기록으로 설명하며, 식품 포장의 성분표와 비슷한 개념으로 봅니다.
예를 들어 특정 오픈소스 라이브러리에서 치명적인 취약점이 발견되었다고 가정해 보겠습니다. SBOM이 없다면 개발팀은 여러 저장소, 빌드 파일, 패키지 매니저, 컨테이너 이미지를 일일이 확인해야 합니다. 반면 SBOM이 있으면 어떤 제품, 어떤 버전, 어떤 의존성에 해당 라이브러리가 포함되어 있는지 빠르게 추적할 수 있습니다.
SBOM에 포함되는 주요 정보
SBOM에는 일반적으로 다음 정보가 포함됩니다.
-
소프트웨어 컴포넌트 이름
-
컴포넌트 버전
-
공급자 또는 작성자
-
라이선스 정보
-
의존성 관계
-
고유 식별자
-
SBOM 생성 시점
NTIA의 SBOM 최소 요소 보고서는 SBOM이 구성 요소의 세부 정보와 공급망 관계를 담는 공식 기록이라고 정의합니다.
대표적인 SBOM 표준: CycloneDX와 SPDX
SBOM을 만들 때 가장 많이 사용되는 표준은 CycloneDX와 SPDX입니다.
CycloneDX는 보안, 취약점 관리, 공급망 리스크 분석에 강점이 있습니다. CycloneDX는 SBOM뿐 아니라 SaaSBOM, HBOM, ML-BOM, CBOM, VEX 등 다양한 BOM 유형도 지원합니다.
SPDX는 Linux Foundation에서 시작된 표준으로, 라이선스 식별과 오픈소스 컴플라이언스에 많이 활용됩니다. CycloneDX와 SPDX는 모두 산업계에서 널리 사용되는 SBOM 표준으로 인정받고 있습니다.
SBOM 도입 효과
SBOM을 도입하면 기업은 다음과 같은 효과를 얻을 수 있습니다.
첫째, 보안 취약점 대응 속도가 빨라집니다. 새로운 CVE가 공개되었을 때 영향을 받는 소프트웨어를 신속히 찾을 수 있습니다.
둘째, 오픈소스 라이선스 리스크를 줄일 수 있습니다. 어떤 라이선스의 패키지가 제품에 포함되었는지 확인할 수 있기 때문입니다.
셋째, 고객과 파트너에게 소프트웨어 투명성을 제공할 수 있습니다. 특히 금융, 공공, 의료, 국방, 제조 분야에서는 SBOM 제출 요구가 점점 늘고 있습니다.
넷째, DevSecOps 자동화에 활용할 수 있습니다. CI/CD 파이프라인에서 SBOM을 자동 생성하고, 취약점 스캐너와 연동하면 보안 검토를 지속적으로 수행할 수 있습니다.
SBOM은 한 번 만들고 끝나는 문서가 아니다
SBOM은 제품 출시 시 한 번 작성하는 문서가 아닙니다. 소프트웨어가 업데이트되고 패키지가 변경될 때마다 SBOM도 함께 갱신되어야 합니다. 즉, SBOM은 정적인 보고서가 아니라 릴리스마다 관리되는 동적 보안 자산입니다.
실무에서는 GitHub Actions, GitLab CI, Jenkins 같은 CI/CD 도구와 Syft, Trivy, Dependency-Track, OWASP CycloneDX 플러그인 등을 연동해 SBOM을 자동 생성하는 방식이 많이 사용됩니다.
결론
Software Bill of Materials(SBOM)은 소프트웨어에 포함된 구성 요소를 투명하게 관리하기 위한 핵심 문서입니다. 오픈소스 사용이 늘어나고 소프트웨어 공급망 공격이 증가하면서 SBOM은 선택 사항이 아니라 필수 보안 전략이 되고 있습니다.
기업이 SBOM을 제대로 관리하면 취약점 대응, 라이선스 검토, 규제 대응, 고객 신뢰 확보까지 동시에 강화할 수 있습니다. 앞으로 소프트웨어를 개발하거나 도입하는 조직이라면 SBOM을 DevSecOps와 공급망 보안 체계의 기본 요소로 반드시 고려해야 합니다.

