[정보관리기술사 137회 1교시 5번] SBOM(Software Bill of Materials)과 소프트웨어 공급망 보안

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

Leave a Comment