피드로 돌아가기
Docker BlogSecurity
원문 읽기
Build-time SBOM 도입을 통한 공급망 보안 가시성 확보 및 데이터 정확도 극대화
How to Generate an SBOM for Container Workflows
AI 요약
Context
전체 조직의 86%가 겪는 Tool Sprawl 현상으로 인한 SBOM 생성의 파편화 및 불일치 문제 발생. Post-build Scanning 방식의 Heuristic 기반 탐지로 인한 Transitive Dependencies 누락 및 데이터 신뢰성 저하가 병목 지점으로 작용.
Technical Solution
- Build system 내부에 Generator를 통합한 Build-time Generation 구조로 전환하여 Resolved Dependency Tree 직접 추출
- Package Manager의 Declared Version이 아닌 Lock file 기반의 Resolved Version을 기록하여 SBOM Accuracy 확보
- Container Build 과정에서 SPDX SBOM 생성 및 in-toto Attestation을 통한 이미지-SBOM 간의 Cryptographic Binding 구현
- Multi-stage 및 Distroless 이미지 환경에서도 Build Graph 접근 권한을 활용해 정적 바이너리 및 OS 패키지 누락 방지
- SLSA Provenance 검증을 통해 Base Image의 기존 SBOM을 신뢰하고 Application Layer만 추가 생성하는 효율적 계층 구조 채택
- CI Pipeline과 동기화된 재생성 전략을 통해 Artifact Digest와 SBOM 간의 Freshness 유지
실천 포인트
1. Post-build Scanning 대신 Build-time Attestation 도입 검토
2. SBOM 내 버전 정보가 Declared Range가 아닌 Resolved Version인지 확인
3. 이미지와 SBOM을 Cryptographic Signing으로 결합하여 변조 가능성 차단
4. Base Image 사용 시 SLSA Provenance 포함 여부 확인 및 계층적 SBOM 관리 적용