So verwalten Sie eine SBOM richtig

Seit der jüngsten Zunahme von Angriffen auf Software-Lieferketten ist die Erstellung von Software Bill of Materials (SBOM) zu einem zentralen Entwicklungsschritt geworden, den Teams abschließen müssen, um Software sicher zu erstellen und zu versenden. Eine SBOM ist eine umfassende Liste, die alle in einem Softwareprodukt verwendeten Softwarekomponenten detailliert beschreibt. Der Zweck der SBOM-Sicherheit besteht darin, Transparenz und Rückverfolgbarkeit innerhalb der Software-Lieferkette sicherzustellen und es Unternehmen zu ermöglichen, potenzielle Sicherheitslücken und Compliance-Risiken zu identifizieren und zu beheben.

Doch die Erstellung und Verwaltung einer SBOM ist eine komplizierte Aufgabe, insbesondere für Unternehmen mit einem großen Softwareportfolio. Um alle in einem Produkt verwendeten Softwarekomponenten zu identifizieren und den Überblick über alle Updates und Patches zu behalten und gleichzeitig deren Genauigkeit sicherzustellen, ist ein systematischer Ansatz erforderlich.

In diesem Artikel besprechen wir die Best Practices und Strategien für die effektive Verwaltung einer SBOM, die mit der SBOM-Verwaltung verbundenen Herausforderungen und wie Sie diesen Prozess vereinfachen können, um Ihre Software-Lieferkette sicher zu halten.

Was ist SBOM-Management?

Die Erstellung einer Software-Stückliste ist nur der erste Schritt im Prozess zur Aufrechterhaltung der Sicherheit Ihrer Software. Es reicht jedoch nicht aus, eine Liste von Softwarekomponenten zu erstellen; Sie müssen Ihre SBOM verfolgen, validieren, bearbeiten und verwalten. Auf diese Weise stellen Sie sicher, dass Sie nicht nur die Komponenten Ihrer Software kennen, sondern auch tatsächlich alle Risiken der einzelnen Komponenten und deren Auswirkungen auf Ihre Software verstehen.

Beim SBOM-Management handelt es sich um den Prozess der Verfolgung Ihrer Software-Stückliste, während sie in Ihrer DevOps-Pipeline generiert wird. Die Verwaltung Ihrer SBOM umfasst das Erstellen, Speichern, Analysieren und Überwachen Ihrer SBOM-Dokumentation. Durch die Durchführung dieser SBOM-Verwaltungsaufgaben im gesamten Lebenszyklus Ihrer App können Sie Softwareabhängigkeiten identifizieren und die Sicherheit Ihrer Lieferkette verbessern.

Ihre SBOM hat keinen Nutzen, wenn sie im Build-Verzeichnis, in dem sie generiert wurde, ruht. Mit der SBOM-Verwaltung können Sie diese Daten nutzen, um umsetzbare Erkenntnisse zu gewinnen und die Open-Source-Komponenten Ihres Softwarepakets und deren Auswirkungen auf die Softwarelieferkette besser zu verstehen. Das Scannen und Melden von Schwachstellen sind ebenfalls Aspekte des SBOM-Managements.

Während die Erstellung der Software-Stücklisten ein wichtiger Teil des DevOps-Prozesses ist, ist der kontinuierliche Prozess der SBOM-Verwaltung noch wichtiger. Es ermöglicht Ihnen, Schwachstellenschutzsysteme, Zero-Trust-Richtlinien und langfristige Software-Supply-Chain-Intelligence vollständig zu nutzen und zu implementieren.

Einblicke in das SBOM-Management

Um mit der zunehmenden Anzahl von Bedrohungen für verschiedene Software in der gesamten Lieferkette Schritt zu halten, prognostiziert Gartner, dass bis zu 60 % der Unternehmen, die auf Software als kritische Infrastruktur angewiesen sind, in den kommenden Jahren damit beginnen werden, den Einsatz von SBOMs vorzuschreiben. Dies ist gem Gartners Innovation Insight Report 2022 zu SBOM Das liefert wichtige Informationen über die Bedeutung der Implementierung eines SBOM-Managementprogramms.

Der Bericht erkennt die Bedeutung der SBOM-Cybersicherheit für die Verbesserung der Sichtbarkeit, Integrität, Transparenz und Sicherheit von Codes an, die in Software-Lieferketten verwendet werden. Ohne Kenntnis der Komponenten der Software ist es schwierig, das Ausmaß der Risiken und Schwachstellen dieser Software zu verstehen. Die beste Lösung besteht darin, einfach jede Software in einer Anwendung zu verfolgen und sie mit einer Datenbank bekannter Schwachstellen zu vergleichen, um sicherzustellen, dass sie sicher ist.

Laut dem Gartner-Bericht sollte jedes Unternehmen in die Erstellung einer SBOM für jedes von ihm erstellte Softwarepaket investieren. Als nächstes sollten sie die SBOM aller von ihnen verwendeten Software überprüfen. Darüber hinaus ist eine kontinuierliche SBOM-Verwaltung erforderlich, damit die Daten auch nach der Bereitstellung der App neu bewertet werden können, um neue Sicherheitsrisiken zu erkennen.

Strategien für eine effektive Software-Stücklistenverwaltung

Unternehmen können die Sicherheit und Compliance der von ihnen erstellten oder verwendeten Software gewährleisten, indem sie dem SBOM-Management Priorität einräumen. Im Folgenden finden Sie einige Strategien zur effektiven Verwaltung der Software-Stückliste einer Organisation. 

Automatisieren Sie die SBOM-Generierung

Für jede Iteration Ihrer Software sollte eine Software-Stückliste erstellt werden. Aber Entwickler werden es schwer haben, dies zu erreichen, wenn sie SBOMs für jeden Build manuell generieren müssen. Deshalb SBOM-Generierung sollte in Ihre Softwarebereitstellungspipeline integriert sein. Durch die Automatisierung ist es möglich, „Maschinengeschwindigkeit“ für die SBOM-Erstellung zu erreichen, wie von der National Telecommunications and Information Administration (NTIA) empfohlen. 

SBOM-Automatisierung erhöht außerdem die Integrität und Vertrauenswürdigkeit Ihrer SBOM-Dokumentation. Automatisierte SBOMs, die innerhalb der Entwicklungspipeline generiert werden, können kryptografisch signiert werden, um Benutzern zu beweisen, dass die Liste der Softwarekomponenten in der SBOM authentisch ist.

Strukturierte Formatierung

Alle in Ihrer Software-Stücklistenverwaltung dargestellten Daten sollten auf der Grundlage eines Standardformats strukturiert sein. Obwohl es mehrere andere gibt, sind SPDX, SWID und CycloneDX drei der beliebtesten Formate. Da es keine offizielle SBOM-Empfehlung oder einen allgemeinen branchenweiten Standard gibt, kann jede Organisation das für sie am besten geeignete Format wählen. Der wichtigste Faktor hierbei ist die Konsistenz, unabhängig vom gewählten SBOM-Format.

Stellen Sie SBOMs für SaaS bereit

Wenn es um die Implementierung von Cybersicherheitsmaßnahmen für Software geht, konzentrieren sich Unternehmen häufig auf Apps oder Software, die sie selbst in der Cloud oder vor Ort bereitstellen, während die von ihnen verwendeten SaaS-Apps ignoriert werden.

Es wird jedoch auch empfohlen, SBOMs für diese Software-as-a-Service-Apps bereitzustellen. Kunden in einem SaaS-Modell müssen sich auf ihrer Seite nicht um Software-Updates oder neue Releases kümmern. Sollte jedoch die SaaS-Anwendung eines Kunden aufgrund einer Schwachstelle gefährdet sein, kann die Bereitstellung von SBOMs für die Anwendung als Frühwarnung dienen und auch zu den eigenen Cybersicherheitsmaßnahmen beitragen. 

Regelmäßige Updates für jede Version

Um die größtmögliche Wirksamkeit zu erzielen, sollten SBOMs versionenspezifisch sein; Entwickler sollten das SBOM jedes Mal überarbeiten, wenn sie ein Update für ihre Anwendung veröffentlichen. Für Entwickler kann es leicht passieren, dass sie in die Falle tappen, eine SBOM nur einmal zu erstellen und sie nur von Zeit zu Zeit zu aktualisieren, da es schwierig ist, sie zwischen den Releases manuell zu aktualisieren. Unternehmen sollten sicherstellen, dass ihre Software-Stücklistenverwaltung umgehend aktualisiert wird, sobald eine neue Version ihrer Software verfügbar ist. Dies ist ein weiterer Grund, warum die Automatisierung der SBOM-Generierung wichtig ist, da sie es einfacher macht, bei jeder Veröffentlichung eines Updates eine aktualisierte Version Ihrer SBOM zu generieren.

Schaffen Sie klare Kommunikationskanäle

An der SBOM-Verwaltung sind mehrere Stakeholder beteiligt, die auf die eine oder andere Weise mit dem Softwareprodukt verbunden sind. Dazu gehören Softwarelieferanten, Entwicklungsteams, Kunden und andere. Eine Möglichkeit, ein effektives SBOM-Management sicherzustellen, besteht darin, klare Kommunikationskanäle zwischen diesen Stakeholdern einzurichten. Dadurch wird sichergestellt, dass jeder Zugang zu allen neuen Informationen über die Softwarekomponenten eines Produkts erhält und bei Bedarf Aktualisierungen durchführen kann

Metadaten einbeziehen

Die Menge an Metadaten (zusätzliche Informationen wie Lizenzdaten und Patch-Status), die Sie in Ihre SBOM-Dokumentation aufnehmen müssen, hängt vom verwendeten Format ab. Während einige Formate möglicherweise standardmäßig mehr Metadaten unterstützen als andere, sollten Entwickler dem Hinzufügen so vieler Metadaten wie möglich zu ihrem SBOM Priorität einräumen. Diese zusätzlichen Informationen erleichtern Benutzern die SBOM-Verwaltung, da sie diese Informationen nicht jedes Mal manuell nachschlagen müssen, wenn sie sie benötigen. Die Metadaten erleichtern auch die Identifizierung und Aktualisierung anfälliger Komponenten in Ihren Produkten, wenn eine Sicherheitslücke bekannt wird.

Herausforderungen beim SBOM-Management

Trotz der weit verbreiteten Einführung von SBOM bleiben viele Aspekte der SBOM-Verwaltung für Benutzer eine Herausforderung. Die vielleicht größte Herausforderung von allen ist die mangelnde Standardisierung der SBOM-Formatierung in der gesamten Branche. Die Einhaltung des gleichen Standards für die SBOM-Erstellung und -Freigabe garantiert zwar den besten Nutzen für alle, es wird jedoch eine Weile dauern, bis ein Konsens erzielt werden kann.

Eine weitere Herausforderung besteht darin, SBOMs aktuell und relevant zu halten. Die von den meisten Organisationen erstellte Software ist dynamisch. Das bedeutet, dass regelmäßig Updates veröffentlicht und neue Komponenten hinzugefügt werden. Um relevant und sicher zu bleiben, muss die Software-Stückliste mit jeder neuen Version der Software aktualisiert werden. Jedes Unternehmen muss Pläne für SBOM-Generierungs- und Verwaltungstools erstellen, damit es mit jeder neuen Version seiner Software nahtloser neue SBOMs veröffentlichen kann.

Und dann besteht das Risiko von Ungenauigkeiten oder Auslassungen innerhalb der SBOM, die zu Schwachstellen und Compliance-Problemen führen können. Einige SBOM-Generierungstools können den Rohcode oder die von den Entwicklern in ihren Quellcode eingefügten Binärdateien nicht dokumentieren. Auf diese Weise generierte SBOMs erzeugen ein falsches Gefühl der Vollständigkeit, was sie unsicher macht. Aus Sicherheits- und Transparenzgründen sollte Ihre SBOM sehr detailliert sein, möglichst viele Komponenten auflisten und optimal hierarchische Informationen bereitstellen, um die Beziehung zwischen diesen Komponenten darzustellen.

Schließlich besteht das Risiko, die Sicherheit des SBOM selbst zu verwalten, da es vertrauliche Informationen über Softwarekomponenten enthält, die während des Entwicklungsprozesses verwendet werden, einschließlich potenzieller Sicherheitslücken. Daher müssen Organisationen Maßnahmen ergreifen, um die SBOM vor unbefugtem Zugriff oder unbefugter Offenlegung zu schützen.

Zusammenfassung 

Abschließend muss unbedingt betont werden, wie wichtig die ordnungsgemäße Verwaltung einer Software-Stückliste für jedes Unternehmen ist, das Softwareprodukte erstellt oder verwendet. Über die Erstellung einer SBOM hinaus hilft die Implementierung effektiver SBOM-Managementpraktiken einem Unternehmen dabei, seine Softwareprodukte sicher zu halten und den relevanten Vorschriften zu entsprechen.

Zu den Schlüsselkomponenten eines effektiven SBOM-Management-Frameworks gehören die Führung eines umfassenden Inventars Ihrer Softwarekomponenten, die Planung regelmäßiger Updates, die Durchführung von Risikobewertungen bei Bedarf sowie die Automatisierung der SBOM-Erstellung und -Verwaltung.

Durch die Einhaltung dieser Best Practices kann ein Unternehmen ein viel tieferes Verständnis seiner Software-Lieferketten erlangen, um das Risiko von Sicherheitsverletzungen zu minimieren und andere potenzielle Probleme zu vermeiden. Letztendlich hilft Ihnen ein effektives SBOM-Management dabei, sichere und zuverlässigere Softwareprodukte zu entwickeln, die den Anforderungen Ihrer Kunden und aller Beteiligten gerecht werden.