Software-Bestellliste (SBOM) erstellen

Im Februar 2022 veröffentlichte das National Institute of Standards and Technology (NIST) Version 1.1 des Secure Software Development Framework (SSDF), eine Reihe umfassender Richtlinien zu Best Practices für die sichere Softwareentwicklung. Diese Richtlinien wurden als Reaktion auf die Cybersecurity Executive Order (EO) 14028 von 2021herausgegeben.

Im Rahmen dieser Anforderungen kann die US-Regierung eine Software-Materialliste (Software Bill Of Materials, SBOM) anfordern, in der die Komponenten einer Software version aufgeführt sind.

SBOMs werden automatisch für Android Continuous Integration (Android CI)-Builds generiert. Wenn Sie einen der CI-Builds verwenden, führen Sie die folgenden Schritte aus, um eine SBOM für einen Build zu erhalten. Andernfalls folgen Sie der Anleitung zum Generieren einer benutzerdefinierten SBOM.

Vorgefertigte SBOM abrufen

So rufen Sie eine vorgefertigte SBOM ab:

  1. Rufen Sie in Ihrem Browser ci.android.com auf.

  2. Geben Sie im Feld Enter a branch name (Zweignamen eingeben) aosp-android-latest-release ein.

  3. Klicken Sie bei einem der Builds mit grünem Status auf den Abwärtspfeil View artifacts (Artefakte ansehen). Der Bildschirm „Build artifacts“ (Build-Artefakte) wird angezeigt.

  4. Suchen Sie auf dem Bildschirm „Build artifacts“ (Build-Artefakte) mit einem Suchbefehl nach dem SBOM-JSON-Ordner (STRG+F oder CMD+F).

Benutzerdefinierte SBOM generieren

Für alle Ergänzungen der Plattform, einschließlich aller Binär- oder Build- und Release Toolchains, müssen Sie eine SBOM-Darstellung Ihres Produkts bereitstellen, die die minimalen Elemente für eine Software-Materialliste (SBOM)erfüllt. So generieren Sie eine benutzerdefinierte SBOM:

  1. Führen Sie die folgenden Befehle aus, um Ihre Umgebung einzurichten und die SBOM zu erstellen:

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

    TARGET bezieht sich auf dasselbe Build-Ziel, das Sie zum Erstellen von Android verwenden, z. B. aosp_arm64-userdebug.

  2. Führen Sie Folgendes aus, um zu prüfen, ob die SBOM korrekt erstellt wurde:

    $ ls out/dist/sbom*