SBOM 제출 전 검증 체크리스트
SBOM 제출 전 필수 확인 사항을 점검하여 반려를 방지합니다.
필수 점검 항목
아래 체크리스트를 통과하지 못한 SBOM은 시스템에서 자동으로 반려될 수 있습니다.
1. 파일 무결성
- 파일 확장자가
.json또는.xml인가? (압축 파일 아님) - 파일 크기가 1KB 이상이며, 내용이 비어있지 않은가?
- JSON 문법 오류가 없는가? (
jq등으로 확인 권장)
2. 필수 데이터 필드
- bomFormat:
CycloneDX또는SPDX가 명시되었는가? - Metadata: 최상위 컴포넌트(납품 프로젝트)의 이름과 버전이 정확한가?
- Components: 포함된 라이브러리 목록이 실제와 일치하는가?
3. 의존성 완전성 확인
전이적 의존성 누락은 가장 흔한 반려 사유입니다. 아래 항목을 반드시 확인하시기 바랍니다.
- 직접 의존성(프로젝트가 직접 선언한 라이브러리)이 모두 포함되어 있는가?
- 전이적 의존성(직접 의존성이 내부적으로 사용하는 라이브러리)이 포함되어 있는가?
- SBOM 생성 전 빌드(또는 패키지 설치)를 완료하였는가? (예:
npm install,mvn package,pip install) - 컴포넌트 수가 합리적인가? (직접 의존성만 몇 개인 프로젝트에서 총 컴포넌트 수가 10개 미만이라면 전이적 의존성이 누락되었을 가능성이 높음)
의존성 수 기준 가이드: 일반적인 웹 애플리케이션은 전이적 의존성까지 포함하면 수십~수백 개의 컴포넌트가 포함됩니다. SBOM의 컴포넌트 수가 예상보다 현저히 적다면 누락을 의심해 보시기 바랍니다.
4. 식별자 (PURL) 확인
SK텔레콤 시스템은 PURL로 취약점을 매핑합니다. 가장 중요한 항목입니다.
- 모든 컴포넌트(
components) 객체 안에purl필드가 존재하는가? - PURL 형식이 표준(
pkg:type/namespace/name@version)을 따르는가? - PURL 내에 특수문자 등이 올바르게 인코딩되었는가?
온라인 검증 도구
- CycloneDX Validator: https://cyclonedx.github.io/cyclonedx-web-tool/validate
관련 문서
- 제출 요구사항: 필수 데이터 필드 및 PURL 형식 상세 안내
- 제출 절차: 체크리스트 통과 후 제출 방법
- SKT SBOM Generator: 체크리스트 항목을 충족하는 SBOM을 생성하는 도구
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.