Microsoft SBOM Tool이란
구성 요소 탐지 라이브러리를 사용하여 구성 요소를 탐지하고 ClearDefined API를 사용하여 이러한 구성 요소에 대한 라이센스 정보를 채운다.
아래의 링크를 통해 MS SBOM Tool을 설치할 수 있다.
https://github.com/microsoft/sbom-tool
<SBOM Tool의 주요 기능>
1) SPDX 2.2 호환성
2) 포괄적인 artifact 적용 범위
3) 구성 요소 탐지
4) ClearDefined API를 사용한 라이센스 정보
5) 도커 이미지 지원
SBOM Generation
sbom-tool generate -b <drop path> -bc <build components path> -pn <package name> -pv <package version> -ps <package supplier> -nsb <namespace uri base>
-> sbom-tool\sbom-output\_manifest\spdx_2.2에 report기록
Option | Description |
BuildDropPath(-b) | SBOM 파일이 생성될 드롭 디렉토리의 루트 폴더 |
BuildComponentPath (-bc) | 빌드 구성 요소 및 패키지가 들어 있는 폴더 |
PackageName (-pn) | SBOM이 나타내는 패키지의 이름 |
PackageVersion (-pv) | SBOM이 나타내는 패키지 버전 |
PackageSupplier (-ps) | SBOM이 나타내는 패키지의 공급업체 |
NamespaceUriBase (-nsb) | SBOM 네임스페이스 URI의 기본 경로 |
DockerImagesToScan (-di) | 패키지를 스캔할 도커 이미지 이름 또는 해시의 쉼표로 구분된 목록 |
SBOM Validation
sbom-tool validate -b <drop path> -o <output path> -mi SPDX:2.2
-> 결과 파일을 확인
Option | Description |
BuildDropPath(-b) | 유효성을 검사할 드롭 디렉터리의 루트 폴더 |
OutputPath (-o) | 출력 json을 작성해야 하는 경로 |
ManifestInfo (-mi) | 사용 중인 매니페스트 형식의 이름과 버전 목록 |
SBOM Redact
sbom-tool redact -sd sbom-output -o ./sbom-redact
-> 지정된 SBOM에서 파일에 대한 참조 수정
sbom-tool redact -sp ./sbom-output -o ./sbom-redact
-> 지정된 SBOM에서 파일에 대한 참조 수정
Option | Description |
SbomPath (-sp) | 수정할 SBOM의 파일 경로 |
OutputPath (-o) | 수정된 SBOM 파일이 생성될 디렉토리를 가져오거나 설정 |
SbomDir (-sd) | 수정할 sbom을 포함하는 디렉토리 |
<장점>
1) SPDX와 호환되는 출력을 생성하며, 일반적으로 사용되는 여러 패키지 형식을 지원한다.
2) 생성된 SBOM을 Grype와 같은 다른 도구에 직접 공급하여 보안 결함과 구식 종속성을 발견할 수 있음을 의미합니다.
<단점>
1) 지원되는 메타데이터 형식이 syft보다 적다.
댓글 영역