SBOM: Wie eine Software-Stückliste die Sicherheit stärkt

Erfahren Sie, wie eine Software Bill of Materials (SBOM) die Sicherheit stärkt, indem sie Komponenten verfolgt, Schwachstellen identifiziert und die Einhaltung von Vorschriften sicherstellt.

5 Minuten Lesezeit

Die wichtigsten Erkenntnisse aus diesem Artikel:

  • In einer Software-Stückliste (SBOM) sind alle Komponenten Ihrer Software aufgeführt. So ist für Übersichtlichkeit und Kontrolle der Lieferketten gesorgt.

  • SBOMs ermöglichen schnelle Reaktionen auf Schwachstellen, wie sie bei Log4j und SolarWinds zu sehen sind, und stärken so die Abwehrmaßnahmen in der Lieferkette.

  • Gesetzliche Vorschriften wie PCI DSS und staatliche Anforderungen verknüpfen die Sicherheit direkt mit der Einführung von SBOM.

  • Durch die Automatisierung der SBOM-Generierung werden Fehler vermieden und eine aktuelle Schwachstellenverfolgung gewährleistet.

  • Das agentenlose SBOM-Scanning von Wiz bietet Einblicke in Echtzeit und hilft Teams, den Überblick über sich ändernde Softwareumgebungen zu behalten.

Was ist eine SBOM?

Eine Software Bill of Material (SBOM) ist ein umfassendes Inventar, das alle Softwarekomponenten einer Anwendung detailliert auflistet. Es umfasst Open-Source- und kommerzielle Drittanbieterbibliotheken, API-Aufrufe, Versionen und Lizenzen. 

Anwendungen, die im Ökosystem der Lieferkette verwendet werden, sind eine Mischung aus Elementen aus mehreren Quellen. Diese Quellen können Schwachstellen enthalten, die Cyberkriminelle bei Angriffen auf die Lieferkette ausnutzen könnten. SBOMs erleichtern das Schwachstellenmanagement, indem sie Informationen zu diesen Elementen bereitstellen.

Wenn SBOMs in den Software Delivery Lifecycle (SDLC) integriert werden, verbessern sie die Transparenz in Bezug auf den Patchstatus und die Lizenzen von Drittanbietersoftware und bieten andere sicherheitsrelevante Informationen, die die Codeintegrität stärken können.

Die Rolle von SBOM bei der Sicherheit der Software-Lieferkette

Angesichts der zunehmenden Angriffe auf die Lieferkette sind SBOMs zu unverzichtbaren Tools für die Verfolgung und Sicherung von Softwarekomponenten geworden. Gartner schätzt, dass bis 2025 60 % der Organisationen SBOMs als Teil ihrer Cybersicherheitspraktiken benötigen werden. Dies ist ein deutlicher Anstieg gegenüber 20 % im Jahr 2022. Auch staatliche Mandate wie die Executive Order des Weißen Hauses zur Verbesserung der Cybersicherheit der Nation verlangen mittlerweile SBOMs für Organisationen, die mit Regierungsbehörden zusammenarbeiten.

Die Vorfälle mit Log4j und SolarWinds unterstreichen die Bedeutung von SBOMs:

  • Log4j-Sicherheitslücke (CVE-2021-44228): Diese weit verbreitete Java-Bibliothek hat für Organisationen weltweit einen Sicherheitsalbtraum geschaffen. Ohne SBOMs waren viele Unternehmen aufgeschmissen und mussten herausfinden, welche Komponenten gefährdet waren. Aber die mit SBOMs? Sie konnten die betroffenen Komponenten schnell identifizieren und massive Auswirkungen vermeiden.

  • SolarWinds-Angriff : Im Jahr 2020 haben Angreifer die SolarWinds Orion-Software kompromittiert und damit rund 18.000 Kunden, darunter führende Unternehmen und Regierungsbehörden, betroffen. Ein SBOM hätte das Chaos durchbrechen und den Opfern helfen können, die Malware schnell aufzuspüren und effektiv zu reagieren.

Warum SBOMs wichtig sind

SBOMs bieten eine detaillierte Liste aller Komponenten einer Softwareanwendung und helfen Unternehmen, Sicherheitsrisiken zu identifizieren und zu verwalten. Sie verbessern außerdem die Transparenz, erleichtern die Verfolgung und Aktualisierung von Softwareabhängigkeiten und vieles mehr:

1. Transparenz und Sichtbarkeit

Stellen Sie sich SBOMs als die Blaupause Ihrer Software vor. Sie geben Entwicklern einen klaren Überblick über alle in ihren Anwendungen verwendeten Softwarekomponenten von Drittanbietern – wie Open-Source-Bibliotheken. Diese Transparenz hilft Teams, die Risiken abzuwägen, bevor sie eine Bibliothek hinzufügen, und nach der Bereitstellung die Schwachstellen im Griff zu behalten. 

2. Einhaltung gesetzlicher Vorschriften

Da Regierungen und Industriestandards die Softwaresicherheit strenger regeln, sind SBOMs zu einem unverzichtbaren Compliance-Element geworden. Von PCI DSS bis HIPAA verlangen viele Vorschriften heute eine klare Aufzeichnung der Softwarekomponenten. Ein SBOM hilft nicht nur dabei, diese Anforderungen zu erfüllen, sondern bewahrt Ihr Unternehmen auch vor Ärger, seien es Geldstrafen oder Reputationsschäden durch Lizenzierungsfehler.

3. Reaktion auf Vorfälle und Forensik

Wenn etwas schief geht, kann ein SBOM lebensrettend sein. Es zeigt genau, welche Komponente anfällig ist, und hilft den Teams, sich auf den Problembereich zu konzentrieren, ihre Reaktion zu priorisieren und die umfassenderen Auswirkungen einzuschätzen.

Was sollte ein SBOM enthalten?

Ein SBOM sollte Details zu allen in einem Produkt verwendeten Open-Source- und proprietären Softwarekomponenten enthalten, einschließlich ihrer Namen, Versionen und Lizenzen. Es sollte auch die Beziehungen zwischen Komponenten und ihre Abhängigkeiten angeben. 

Die folgenden Schlüsselelemente sollten in einem SBOM vorhanden sein:

1. Komponentenkennungen: Dazu gehören Metadaten wie Lieferanten- und Komponentennamen, Komponentenursprung, Beschreibung und Betreuer, Artefakt-ID, Zeitstempel, Versionsnummer und bestimmte Referenzen wie Git-Commit-IDs oder SHA-1-Hashes für jede Komponente.

2. Abhängigkeiten: Die Beziehung zwischen jeder Komponente und ihren Abhängigkeiten muss klar dokumentiert sein. 

3. Versionsinformationen: Dazu gehören die Softwareversionsnummer, der Dateiname und das Betriebssystem, um eine einfache Installation zu ermöglichen und Kompatibilitätsprobleme zu vermeiden. Anhand der Versionsinformationen können Sie notwendige Updates oder Patches für jede Komponente verfolgen.

4. Daten zu Schwachstellen: Es ist wichtig, Informationen zu bekannten Schwachstellen der einzelnen Komponenten anzugeben. Diese Daten können Schwachstellenkatalogen wie der National Vulnerability Database (NVD) oder CVE (Common Vulnerabilities and Exposures) entnommen werden.

5. Lizenzinformationen: Jede Komponente verfügt über Lizenzbedingungen (z. B. MIT-, Apache- und BSD-Lizenzen). Das SBOM muss diese Bedingungen enthalten, um die Einhaltung der Lizenzverpflichtungen sicherzustellen.

7. Externe Referenzen: Hierzu gehören URLs oder Dokumentationen zu den einzelnen Komponenten. Sie bieten zusätzlichen Kontext zu den Funktionen der Komponenten.

Profi-Tipp

Mit dem agentenlosen SBOM von Wiz erhalten Sie vollständige Transparenz über die Komponenten Ihrer Anwendungen, einschließlich Pakete, Open-Source-Bibliotheken und verschachtelte Abhängigkeiten, ohne blinde Flecken und ohne Bereitstellung eines Agenten.

Mehr erfahren

Weitere Informationen

Gängige SBOM-Formate

SBOMs können manuell oder automatisch generiert werden. 

  • Bei der manuellen Methode werden alle Softwarekomponenten und ihre jeweiligen Versionen, Lizenzen und Abhängigkeiten in Tabellen aufgelistet. Diese Methode eignet sich nur für kleine Bereitstellungen und ist anfällig für menschliche Fehler.

  • Bei der automatischen Methode werden SBOM-Tools in die CI/CD-Pipeline (Continuous Integration/Continuous Deployment) integriert.  

Nach der Generierung werden SBOMs in zwei Hauptformate strukturiert: CycloneDX und Software Package Data Exchange (SPDX). Nachfolgend finden Sie eine kurze Beschreibung der beiden Formate.

FormatDescription
SPDXSPDX unterstützt die Darstellung von SBOM-Informationen, wie Komponentenidentifikation und Lizenzinformationen, sowie die Beziehung zwischen den Komponenten und der Anwendung. SPDX ermöglicht das Sammeln und Teilen von Informationen in verschiedenen Dateiformaten, einschließlich menschenlesbarer und maschinenlesbarer Formate wie JSON, XML und YAML. Es verbessert die Transparenz und erleichtert die Einhaltung von Lizenzbestimmungen.
CycloneDXCycloneDX unterstützt die Auflistung interner und externer Komponenten/Dienste, aus denen Anwendungen bestehen, sowie deren Wechselbeziehungen, Patchstatus und Varianten. Es strukturiert die Daten als XML- oder JSON-Datei und ermöglicht Ihnen, Details wie CVSS-Werte (Common Vulnerability Scoring System) und Beschreibungen zum SBOM hinzuzufügen. CycloneDX ist hochgradig erweiterbar, sodass Entwickler bei Bedarf neue Funktionen hinzufügen können.

Um Ihnen ein besseres Verständnis der SBOM-Formate zu vermitteln, betrachten Sie dieses Beispiel des CycloneDX-Inventars im JSON-Format:

{
"bomFormat": "CycloneDX",
"specVersion": "1.4",
"serialNumber": "urn:uuid:3e673487-395b-41h8-a30f-a58468a69b79",
"version": 1,
"components": [
{
"type": "library",
"name": "nacl-library",
"version": "1.0.0"
}
]
}

Zusätzlich zu den beiden oben beschriebenen Formaten können Organisationen auch Software Identification (SWID)-Tags verwenden, die normalerweise während der Bereitstellung installiert werden. SWID-Tags liefern SBOM-Informationen wie Veröffentlichungsdaten und Lizenzen von Softwarekomponenten. Aufsichtsbehörden und die US-Regierung betrachten SWID-Tags, CycloneDX und SPDX als akzeptable SBOM-Formate . 

SBOM-Implementierung: eine Schritt-für-Schritt-Anleitung

Das Erstellen einer SBOM mag entmutigend klingen, aber die Aufteilung in überschaubare Schritte kann den Prozess vereinfachen. So können Sie beginnen:

Creating an SBOM might sound daunting, but breaking it into manageable steps can make the process easier. Here’s how to get started:

StepProcess
1. Wählen Sie SBOM-ToolsBeginnen Sie mit Tools, die zu Ihrem Workflow passen. Ob Open-Source-Optionen wie CycloneDX und SPDX oder kommerzielle Tools – stellen Sie sicher, dass sie der Aufgabe gewachsen sind. Suchen Sie nach Tools, die sich reibungslos mit Ihren CI/CD-Pipelines synchronisieren lassen und den Umfang Ihrer Vorgänge durch Automatisierung bewältigen können.
2. Automatisieren Sie die SBOM-GenerierungDie manuelle SBOM-Generierung führt zu Fehlern und Frustration. Automatisieren Sie sie stattdessen. Richten Sie Skripte oder CI/CD-Plugins ein, die Ihr SBOM bei jedem neuen Build aktualisieren. So bleiben die Dinge auf dem neuesten Stand und Ihr Team spart Zeit und Aufwand.
3. Softwarekomponenten verfolgen und aktualisierenSoftware ist nicht statisch – sie entwickelt sich weiter. Überwachen Sie Ihre Drittanbieterkomponenten auf neue Versionen, Patches oder Schwachstellen. Machen Sie die Überprüfung und Aktualisierung Ihres SBOM zu einer regelmäßigen Gewohnheit. Dieser proaktive Ansatz stellt sicher, dass Sie schnell reagieren können, wenn Sicherheitsrisiken auftreten.
4. Überprüfen und überwachen Sie die EinhaltungVorschriften können ein bewegliches Ziel sein, also bauen Sie Compliance-Prüfungen in Ihre Routine ein. Erfüllt jede Komponente die Lizenzierungs- und Sicherheitsstandards? Führen Sie Audits durch, um dies noch einmal zu überprüfen. Ein transparentes, aktuelles SBOM ist Ihr Sicherheitsnetz, um Überraschungen während eines Audits oder Verstoßes zu vermeiden.

Wiz' Ansatz zur SBOM-Sicherheit

Wiz Code verbessert die SBOM-Sicherheit (Software Bill of Materials), indem es umfassende Einblicke in die Komponenten und Abhängigkeiten Ihrer Software bietet. Mit Echtzeit-Scans und automatisierten Sicherheitsprüfungen stellt Wiz Code sicher, dass Schwachstellen in Drittanbieterbibliotheken und Open-Source-Komponenten frühzeitig erkannt und behoben werden.

Zu den Vorteilen der agentenlosen SBOM-Bereitstellung gehören:

  • Flexibilität und Einfachheit: Dedizierte Agenten sind Zusatzdienste, die Ressourcen verbrauchen und ständig gewartet werden müssen, was den Wartungsaufwand enorm erhöht. Die agentenlose SBOM- Bereitstellung senkt außerdem die Kosten und beseitigt Probleme hinsichtlich der Kompatibilität zwischen Agenten und Betriebssystemen.

  • Sofortige und vollständige Transparenz: Agenten müssen auf jedem Subsystem im Software-Stack installiert werden. Ein agentenloses SBOM bietet Ihnen innerhalb von Minuten eine vollständige Übersicht über die Komponenten Ihrer Anwendungen – von den verwendeten Open-Source-Bibliotheken bis hin zu den Paket- und verschachtelten Abhängigkeiten – ohne blinde Flecken.

  • SBOM-Suche: Suchen und finden Sie schnell bestimmte Betriebssysteme und Open-Source-Pakete in Cloud-Umgebungen. Diese Funktion ist besonders aktuell angesichts der jüngsten kritischen Sicherheitslücken, die in weit verbreiteten Bibliotheken wie xz-utils gefunden wurden .

  • Immer auf dem neuesten Stand: Agenten erfordern eine manuelle Installation, die fehleranfällig sein kann, während ein agentenloser Ansatz es Ihnen ermöglicht, aktuelle SBOMs ohne manuelles Eingreifen zu generieren.

Agentenlose SBOM-Generierung

Erhalten Sie vollständige Transparenz über die Komponenten Ihrer Anwendungen, einschließlich Pakete, Open-Source-Bibliotheken und verschachtelte Abhängigkeiten, ohne blinde Flecken.

Demo anfordern 

SBOM – Häufig gestellte Fragen