Was ist SBOM (Software Bill of Materials)?

Abkürzung für Software Bill of Materials. Maschinenlesbare Liste von Name, Version, Lieferant, Abhängigkeiten usw. der Komponenten wie Bibliotheken, aus denen eine Software besteht. Formate sind unter anderem SPDX und CycloneDX. Wird eine Schwachstelle in einer Komponente bekannt, lassen sich die betroffenen Produkte und Versionen sofort bestimmen; auch für das Lizenzmanagement ist sie nutzbar. Angestoßen durch eine Executive Order der USA vom Mai 2021 wird sie zunehmend etwa bei öffentlichen Beschaffungen verlangt.

Japanische Bezeichnung: SBOM(ソフトウェア部品表)

„SBOM (Software Bill of Materials)“ kommt in 2 Übungsfragen aus 2 Themen vor, z. B. Cyberangriffe und Abwehr in der Praxis, Aktuelle Entwicklungen der Hardwaresicherheit.

Fachgebiet: Cyberangriffe und Abwehr in der Praxis

Was sie enthält

Für jede einzelne Komponente werden Name, Version, Lieferant, eine Kennung zur eindeutigen Bestimmung, Hashwert, Lizenz und Abhängigkeiten von anderen Komponenten erfasst. Werden nicht nur die direkt verwendeten Komponenten, sondern auch die von ihnen verwendeten (transitive Abhängigkeiten) aufgenommen, lassen sich auch tief verborgene verwundbare Komponenten finden.

Erstellung und Nutzung

SBOMs werden üblicherweise beim Build automatisch mit Werkzeugen erstellt; von Hand erstellte veralten schnell. Wird eine erstellte SBOM laufend mit Schwachstellendatenbanken abgeglichen, lassen sich bei Bekanntwerden einer neuen Schwachstelle die betroffenen Produkte schnell ermitteln. In Unternehmen, die Produkte ausliefern, nutzt das PSIRT sie für die Information der Kunden.

Grenzen

Eine SBOM ist eine Liste von Komponenten und garantiert nicht, dass diese sicher sind. Außerdem wird eine in der Liste stehende verwundbare Komponente im Produkt nicht unbedingt so verwendet, dass sie tatsächlich ausnutzbar ist; daher wird sie mit Angaben zur Ausnutzbarkeit (übermittelt in Formaten wie VEX) kombiniert beurteilt.

Jetzt üben: Fragen zu SBOM (Software Bill of Materials)

Was ist der Hauptzweck, eine SBOM (Software Bill of Materials) zu erstellen und zu pflegen?

  1. ADie in einem Produkt enthaltenen Komponenten wie Bibliotheken und ihre Versionen auflisten, um bei Bekanntwerden einer Schwachstelle in einer Komponente die betroffenen Produkte sofort zu finden
  2. BDen Quellcode der Software verschlüsseln, damit Dritte einschließlich der Käufer des Produkts den Inhalt des Programms nicht lesen können
  3. CAus der Liste der Halbleiter und elektronischen Bauteile, die für die Herstellung eines Produkts verwendet werden, Beschaffungskosten und Lieferzeiten berechnen und die Produktion planen
Antwort und Erläuterung anzeigen

Antwort: A. Die in einem Produkt enthaltenen Komponenten wie Bibliotheken und ihre Versionen auflisten, um bei Bekanntwerden einer Schwachstelle in einer Komponente die betroffenen Produkte sofort zu finden

Heutige Software entsteht aus der Kombination vieler Open-Source-Bibliotheken und Komponenten anderer Hersteller, und Komponenten hängen oft wiederum von anderen Komponenten ab. Eine SBOM ist eine Liste, die Name, Version, Lieferant, Abhängigkeiten usw. dieser Komponenten in einem maschinenlesbaren Format (etwa SPDX oder CycloneDX) zusammenfasst. Wird in einer weit verbreiteten Komponente eine schwere Schwachstelle gefunden, wie bei der im Dezember 2021 veröffentlichten Schwachstelle in Log4j (Log4Shell), lässt sich mit einer SBOM schnell ermitteln, welche Version welches Produkts betroffen ist. In den USA legte eine Executive Order vom Mai 2021 fest, dass für an die Regierung gelieferte Software eine SBOM verlangt werden soll.

Häufige Fragen

Hat sie etwas mit der Stückliste (BOM) für Halbleiter und elektronische Bauteile zu tun?

Das Prinzip ist dasselbe: Die in der Fertigung verwendete Stückliste (Bill of Materials) wird auf Software übertragen. Die Komponenten einer SBOM sind jedoch Software wie Bibliotheken, und ihr Zweck ist vor allem das Management von Schwachstellen und Lizenzen. Eine Liste von Hardwarekomponenten wird manchmal HBOM genannt.

In welchem Format sollte man eine SBOM erstellen?

Weit verbreitet sind SPDX (federführend von der Linux Foundation entwickelt und als ISO/IEC 5962 auch internationale Norm) und CycloneDX (federführend von OWASP entwickelt); viele Werkzeuge beherrschen beide. Man wählt nach den Anforderungen von Geschäftspartnern und Vorschriften und kann zwischen den Formaten auch konvertieren.

„SBOM (Software Bill of Materials)“ in den Erläuterungen

Fragen mit „SBOM (Software Bill of Materials)“ (2)

  1. Was ist der Hauptzweck, eine SBOM (Software Bill of Materials) zu erstellen und zu pflegen?
  2. Welche Beschreibung einer Hardware-Stückliste (HBOM) ist richtig?

Verwandte Begriffe

HBOM (Hardware-Stückliste) Cyber Kill Chain Digitale Forensik EDR (Endpoint Detection and Response) Incident Response Intrusion Detection System (IDS) IoC (Indicator of Compromise) Lateral Movement Lieferkettenangriff (Supply-Chain-Angriff) MITRE ATT&CK

Zur Glossarübersicht