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 für sichere Softwareentwicklungspraktiken als Reaktion auf die Cybersecurity Executive Order (EO) 14028 von 2021 .
Im Rahmen dieser Anforderungen kann die US-Regierung eine Software-Stückliste (Software Bill of Materials, SBOM) anfordern, in der die Komponenten einer Softwareversion 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 . Befolgen Sie andernfalls die Schritte zum Generieren einer benutzerdefinierten SBOM .
Besorgen Sie sich eine vorgenerierte SBOM
So erhalten Sie eine vorgenerierte SBOM:
Navigieren Sie in Ihrem Browser zu
ci.android.com
.Geben Sie im Feld Geben Sie einen Filialnamen ein den Namen
aosp-main
ein.Klicken Sie für alle Builds mit grünem Status auf den Abwärtspfeil „Artefakte anzeigen“ . Der Bildschirm „Artefakte erstellen“ wird angezeigt.
Verwenden Sie im Bildschirm „Artefakte erstellen“ einen Suchbefehl, um die SBOM-JSON-Datei zu suchen ( STRG+F oder CMD+F ).
Generieren Sie eine benutzerdefinierte SBOM
Für alle Ergänzungen zur Plattform, einschließlich aller Binär- oder Build- und Release-Toolketten, müssen Sie eine SBOM-Darstellung Ihres Produkts bereitstellen, die den Mindestelementen für eine Software-Stückliste (SBOM) entspricht. So generieren Sie eine benutzerdefinierte SBOM:
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
Das
TARGET
bezieht sich auf dasselbe Build-Ziel, das Sie zum Erstellen von Android verwenden, z. B.aosp_arm64-userdebug
.Um sicherzustellen, dass die SBOM korrekt erstellt wurde, führen Sie Folgendes aus:
$ ls out/dist/sbom*