Sporządzanie listy materiałów do oprogramowania (SBOM)

W lutym 2022 r. Narodowy Instytut Norm i Technologii (NIST) opublikował wersję 1.1 ramowego procesu bezpiecznego tworzenia oprogramowania (SSDF), czyli kompleksowych wytycznych dotyczących bezpiecznych metod tworzenia oprogramowania, opracowanych w odpowiedzi na Zarządzenie wykonawcze nr 14028 z 2021 r. dotyczące cyberbezpieczeństwa.

W ramach tych wymagań rząd Stanów Zjednoczonych może poprosić o specyfikację SBOM, która zawiera listę komponentów wersji oprogramowania.

SBOM-y są generowane automatycznie w przypadku kompilacji ciągłej integracji Androida (Android CI). Jeśli używasz jednej z kompilacji CI, wykonaj te czynności, aby uzyskać SBOM dla kompilacji. W przeciwnym razie wykonaj czynności opisane w sekcji Generowanie niestandardowego pliku SBOM.

Pobieranie wygenerowanego wcześniej pliku SBOM

Aby uzyskać wygenerowany wcześniej plik SBOM:

  1. W przeglądarce otwórz stronę ci.android.com.

  2. W polu Wpisz nazwę gałęzi wpisz aosp-main.

  3. Przy dowolnej kompilacji oznaczonej na zielono kliknij strzałkę w dół Wyświetl artefakty. Pojawi się ekran Tworzenie artefaktów.

  4. Na ekranie Tworzenie artefaktów użyj polecenia znajdowania, aby odszukać plik SBOM JSON (CTRL+F lub CMD+F).

Generowanie niestandardowego pliku SBOM

W przypadku wszelkich dodatków do platformy, w tym binarnych łańcuchów narzędzi do kompilacji i publikowania, musisz podać reprezentację SBOM swojego produktu, która spełnia wymagania minimalnych elementów specyfikacji SBOM. Aby wygenerować niestandardowy plik SBOM:

  1. Aby skonfigurować środowisko i utworzyć SBOM, uruchom te polecenia:

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

    TARGET odnosi się do tego samego celu kompilacji, którego używasz do kompilacji Androida, np. aosp_arm64-userdebug.

  2. Aby sprawdzić, czy SBOM skompilowano prawidłowo, wykonaj:

    $ ls out/dist/sbom*