소프트웨어 재료명세서(SBOM) 만들기

2022년 2월 미국 국립표준기술연구소(NIST)는 2021년 사이버 보안 행정 명령(EO) 14208에 대응하여 보안 소프트웨어 개발 관행에 관한 포괄적인 가이드라인인 Secure Software Development Framework(SSDF) 버전 1.1을 발표했습니다.

이러한 요구사항의 일환으로 미국 정부는 소프트웨어 버전의 구성요소를 나열하는 소프트웨어 재료명세서(SBOM)를 요청할 수 있습니다.

Android 지속적 통합(Android CI) 빌드에는 SBOM이 자동으로 생성됩니다. CI 빌드 중 하나를 사용한다면 다음 단계를 따라 빌드의 SBOM을 획득하세요. 그렇지 않은 경우에는 맞춤 SBOM을 생성하는 단계를 따르세요.

미리 생성된 SBOM 획득

미리 생성된 SBOM을 획득하려면 다음 단계를 따르세요.

  1. 브라우저에서 ci.android.com으로 이동합니다.

  2. Enter a branch name 필드에 aosp-main을 입력합니다.

  3. 상태가 녹색인 빌드의 경우에는 View artifacts 아래쪽 화살표를 클릭합니다. 빌드 아티팩트 화면이 표시됩니다.

  4. 빌드 아티팩트 화면에서 find 명령어를 사용하여 SBOM JSON 파일을 찾습니다(CTRL+F 또는 CMD+F).

맞춤 SBOM 생성

바이너리나 빌드 및 제거 도구 체인 등 플랫폼의 추가 항목의 경우 소프트웨어 재료명세서(SBOM)의 최소 요소를 충족하는 제품의 SBOM 표현을 제공해야 합니다. 맞춤 SBOM을 생성하려면 다음 단계를 따르세요.

  1. 다음 명령어를 실행하여 환경을 설정하고 SBOM을 빌드합니다.

    $ source build/envsetup.sh
    $ lunch TARGET
    $ m sbom # Generates an SBOM
    

    TARGET은 Android를 빌드하는 데 사용하는 동일한 빌드 타겟을 나타냅니다(예: aosp_arm64-userdebug).

  2. SBOM이 올바르게 빌드되었는지 확인하려면 다음을 실행합니다.

    $ ls out/dist/sbom*