Wenn es etwas gibt, was wir aus einigen der großen Software-Supply-Chain-Angriffe der letzten Jahre gelernt haben, wie z SolarWinds und Log4Shell Angriff, es ist so, dass diese Art von Angriffen ziemlich verheerend sein kann. Doch in der heutigen vernetzten digitalen Welt wird es für Unternehmen immer schwieriger, ihnen auszuweichen.
Niemand ist vor Angriffen auf die Software-Lieferkette gefeit. Was die Situation noch verschlimmert, besteht darin, dass ein Verstoß gegen ein einzelnes Unternehmen möglicherweise Tausende von Unternehmen in ihrer Software-Lieferkette Angriffen aussetzt. Dies bedeutet, dass es nicht ausreicht, Ihre eigenen internen Systeme zu schützen. Eine Möglichkeit für Ihr Unternehmen, Risiken in der Lieferkette proaktiv zu reduzieren und Angriffe abzuwehren, ist die Einführung eines Konzepts namens Software Bill of Materials (SBOM).
Ihre Organisation ist höchstwahrscheinlich auf verschiedene externe Systeme angewiesen, um verschiedene Aspekte Ihrer täglichen Abläufe auszuführen. Allerdings haben Sie wahrscheinlich keinen Einblick in die Risiken, die diese externen Systeme mit sich bringen, es sei denn, der Anbieter legt sie offen. Die SBOM fungiert als umfassende Zutatenliste, die Einblicke in die Zusammensetzung der von Ihnen verwendeten Softwarekomponenten bietet. Dieses Dokument ist zu einem geworden Schlüsselkomponente für das Management von Angriffsrisiken in der Lieferkette.
Welche Funktion hat SBOM im Supply Chain Risk Management?
Um das Potenzial der von Ihnen verwendeten Drittsoftware vollständig zu verstehen und Risiken zu reduzieren, müssen Sie deren Zusammensetzung kennen. Die Software Bill of Materials (SBOM) sorgt für volle Transparenz und ermöglicht Ihnen so eine bessere Kontrolle über die Sicherheit Ihrer internen Systeme.
Eine Software-Stückliste ist eine Liste der Komponenten, Dienste und Abhängigkeiten von Drittanbietern in einer Software oder Anwendung. Das Konzept der Stückliste ist nicht neu, hat aber erst seit Kurzem Anwendung in der Softwarewelt gefunden. Die Wurzeln dieses Konzepts lassen sich auf die Fertigungsindustrie zurückführen, wo Hersteller typischerweise Teile verschiedener Anbieter verwenden, um ein Produkt zu bauen. Um die Produkthistorie nachzuverfolgen und zukünftige Wartungsarbeiten zu erleichtern, wird eine Stückliste erstellt, in der alle Komponenten und deren Herkunft aufgeführt sind.
SBOMs wurden in jüngerer Zeit nach dem Solarwinds-Angriff im Jahr 2020 populär, von dem viele US-Regierungsbehörden betroffen waren. Als Reaktion darauf Präsident Biden erließ eine Exekutivverordnung die Bundesbehörden mit der Anforderung beauftragt hat SBOM von Softwareentwicklern und den Anbietern, mit denen sie zusammenarbeiten. Eine genaue SBOM verhindert zwar keinen Angriff auf die Lieferkette, deckt jedoch alle Abhängigkeiten innerhalb eines Softwareprodukts auf. Dies macht es zu einem wertvollen Cybersicherheitstool, das für Transparenz sorgt, Schwachstellen in der Lieferkette aufdeckt und so die Reduzierung von Risiken in der Lieferkette ermöglicht.
Warum SBOM für Entwickler, die auf Open-Source-Code angewiesen sind, von entscheidender Bedeutung ist
Die Wiederverwendung von Code von Drittanbietern oder Open-Source-Code ist ein wesentlicher Bestandteil des modernen Softwareentwicklungsprozesses. Während Entwickler immer noch ihren eigenen Code schreiben müssen, integrieren sie routinemäßig Open-Source-Komponenten von Drittanbietern in ihre Software. Dies ist durchaus notwendig geworden, um Projekte mit hoher Geschwindigkeit voranzutreiben.
In der Vergangenheit wollten Organisationen und Entwickler, die Open-Source-Software verwenden, nur deshalb etwas über deren Komponenten wissen, um Lizenzprobleme zu vermeiden. Viele Open-Source-Software enthielt Komponenten mit eingeschränkter Nutzung und Verbreitung, und jeder, der sie nutzen wollte, musste sich dieser Einschränkungen bewusst sein. Jetzt beginnen Entwickler jedoch zu erkennen, dass das Risiko der Verwendung von Open-Source-Software über die Lizenzierung hinausgeht; es könnte auch Sicherheitsbedenken aufwerfen. Eine Stückliste ist von wesentlicher Bedeutung für das Verständnis sowohl der Lizenzierungs- als auch der Sicherheitsanforderungen von Open-Source-Software.
Für Entwickler bietet eine Software-Stückliste einen besseren Einblick in die Codebasis der von ihnen verwendeten Open-Source-Software. Dies kann in vielen Fällen dazu beitragen, Zeit und Mühe zu sparen. Zum Beispiel, wenn eine neue Schwachstelle entdeckt wird. Ohne eine Stückliste müssen Entwickler jede Software überprüfen, um die Ursache des Problems zu ermitteln. Bei komplexen Projekten ist dies eine anstrengende und zeitaufwändige Aufgabe. Mithilfe eines SBOM kann die Software, die die Schwachstelle enthält, einfach identifiziert und die erforderliche Fehlerbehebung sofort durchgeführt werden. Andere Gründe dafür SBOM ist in der Softwareentwicklung von entscheidender Bedeutung:
-
Code-Aufblähung reduzieren –Für jeden Open-Source-Code, den Sie verwenden, gibt es wahrscheinlich Dutzende leicht unterschiedlicher Alternativen, die ähnliche Funktionen ausführen. Mit einer SBOM können Sie Redundanzen reduzieren, indem Sie eine Standardliste von Komponenten für Ihr System erstellen. Da außerdem jede Komponente, die Sie verwenden, ihre eigenen einzigartigen Mängel oder Schwachstellen aufweist, kann es einfacher sein, Schwachstellen zu verfolgen und zu beheben, indem Sie Ihren Code auf das Notwendige beschränken.
-
Halten Sie sich an die Lizenzpflichten –Wir haben erwähnt, dass die Lizenzierung einer der Hauptgründe für den Versuch ist, alle Komponenten Ihrer Software zu kennen. Durch den Erhalt des SBOM stellen Sie sicher, dass Sie alle Lizenzverpflichtungen für die von Ihnen ausgewählten Komponenten einhalten.
-
Risiken proaktiv bewerten und beheben –Die Identifizierung und Behebung neu identifizierter Risiken kann schwierig und zeitaufwändig sein. Mit einer klar umrissenen Komponentenliste können Sie jedoch proaktiv mit der Suche nach Schwachstellen und deren Behebung beginnen. Dies verkürzt das Zeitfenster zur Problemerkennung und macht den Prozess effizienter.
-
Es erleichtert das Testen und Code-Reviews –Bevor eine Software auf den Markt kommt, muss sie ausgiebig getestet und überprüft werden. Dieser Prozess ist einfacher, wenn der Entwickler ein klares Verständnis aller Komponenten und Unterkomponenten dieser Software hat. Das SBOM kann dazu beitragen, die Überprüfungszeit drastisch zu verkürzen, sodass Sie Ihren Code schneller in die Produktion bringen können, als dies ohne das Dokument der Fall gewesen wäre.
Mithilfe des SBOM können Sie Sicherheitstests starten, um schädliche Komponenten bereits im Frühstadium zu erkennen und zu vermeiden, während Ihr Code noch geschrieben wird. Das Dokument bietet außerdem einen tieferen Kontext zu Codes von Drittanbietern und ihren Komponenten, wodurch der Arbeits- und Zeitaufwand für die Überprüfung und sogar die Durchführung von Änderungen an der Codebasis reduziert wird.
-
End-of-Life-Software (EOL) identifizieren –Dies ist ein recht häufiges Phänomen bei Open-Source-Software. Manchmal erreichen diese Komponenten das Ende ihrer Lebensdauer, weil der Lieferant weit oben in der Lieferkette das Produkt nicht mehr unterstützt. Obwohl es immer noch funktioniert, sind nicht unterstützte Open-Source-Software wichtige Knotenpunkte, über die Schwachstellen ausgenutzt werden können. Das SBOM ermöglicht es, EOL-Software zu überwachen und proaktive Maßnahmen zu ergreifen, um sie nach Möglichkeit zu ersetzen.
SBOM-Anwendungsfälle und Vorteile
Der Erhalt einer Software-Stückliste (Software Bill of Materials, SBOM) ist nicht für jede Software, die Sie entwickeln, zwingend erforderlich. Allerdings entwickelt sich die Vorbereitung schnell zu einer Best Practice, mit der sich jeder Entwickler digitaler Produkte befassen muss. Im Folgenden sind einige SBOM-Anwendungsfälle aufgeführt, bei denen dieses Dokument sehr wertvoll wäre.
SBOM-Anwendungsfälle
Einhaltung bundesstaatlicher Anforderungen
Nach den großen Angriffen auf die Software-Lieferkette in den Jahren 2020 und 2021 erließ Präsident Biden eine oberster Befehl Darin werden wichtige Empfehlungen für Behörden und Anbieter dargelegt, die Softwarelösungen für die Regierung bereitstellen. Eine der in der Durchführungsverordnung enthaltenen Anforderungen war der Vorschlag, SBOMs für jede von der Bundesregierung zu verwendende Software aufzunehmen. Auch wenn SBOMs nicht für alle verpflichtend sind, müssten alle Organisationen, die Software für die US-Bundesregierung bereitstellen, SBOMs bereitstellen, in denen alle von ihnen verwendeten Komponenten und alle von ihnen vorgenommenen Versionsänderungen detailliert aufgeführt sind.
Reduzierung des Risikos für Softwarekonsumenten
Eine SBOM bietet vollständigen Einblick in die Drittanbieterkomponenten eines Softwaretools. Die Verfolgung aller Komponenten und Unterkomponenten einer Software ist eine der Möglichkeiten für Unternehmen, die Sicherheits- und Compliance-Standards jeder Softwarelösung zu überprüfen, die sie verwenden möchten oder bereits verwenden.
Verbraucher, die Software ohne Stückliste verwenden, sind sich wahrscheinlich darüber im Klaren, dass der Code, den sie von einem Lieferanten erhalten, Open-Source-Komponenten enthält. Da diese Inhaltsstoffe jedoch nicht bekannt sind, sind sich Verbraucher möglicherweise nicht über potenziellen Schadcode, nicht unterstützte Komponenten und andere Schwachstellen in der Software im Klaren.
Schnelle Reaktion auf Krisensituationen
Die Verwendung eines SBOM bietet Einblick in die Software-Codebasis. Letztendlich wird es dadurch für Entwickler einfacher, auf Krisen zu reagieren, wenn sie doch eintreten. Ohne SBOM muss beispielsweise ein Softwareentwicklungsteam, das sich mit einer neuen Schwachstelle befassen möchte, jedes verwendete Softwareteil manuell überprüfen, um das Problem zu ermitteln. Wenn jedoch eine Stückliste verfügbar ist, ist es einfacher, die Software einzugrenzen, die möglicherweise die Schwachstelle enthält, und die erforderlichen Korrekturen innerhalb kürzester Zeit durchzuführen. Dies hilft, Zeit bei der Krisenbewältigung zu sparen und den möglichen Schaden zu minimieren.
Probleme der Informationsasymmetrie
Derzeit besteht auf dem Softwaremarkt ein Problem der Informationsasymmetrie. Indem die vollständigen Informationen über die Sicherheit ihrer Apps geheim gehalten werden, werden Softwareanbieter oder -hersteller nicht für die Qualität ihrer Software verantwortlich gemacht. SBOM stellt Softwarekunden Informationen über die Sicherheit eines Produkts zur Verfügung. Dies zwingt Hersteller dazu, bei der Softwareentwicklung die höchsten Sicherheitsstandards einzuhalten.
Unterstützung bei Fusionen und Übernahmen
Eine Software-Stückliste ist eines der Dokumente, die für den Erwerb eines Unternehmens erforderlich sein können. Teile des Prozesses einer Unternehmensübernahme erfordern eine Due-Diligence-Prüfung zur Bewertung der potenziellen Risiken des Kaufs. SBOMs bieten tiefe Einblicke in das Sicherheitssystem des Unternehmens und das potenzielle Risiko der Übernahme.
Vorteile von SBOMs
Eine der wichtigsten Sicherheitspraktiken moderner Unternehmen ist der Zugriff auf Risiken in der Software-Lieferkette. Dazu gehört zu wissen, ob der Software-Stack eines Unternehmens Komponenten von Drittanbietern enthält, die ein Risiko für die Lieferkette darstellen können. Diese Softwareschwachstellen treten häufig in Komponenten auf, die von anderen Softwareanwendungen abhängig sind. Aus diesem Grund ist die Software-Stückliste ein wichtiger Bestandteil eines Produktsicherheitsrahmens. Nachfolgend sind einige der wichtigsten aufgeführt Vorteile von SBOM.
- Gehen Sie proaktiv mit Schwachstellen um-Der ultimative Vorteil eines SBOM besteht darin, das Sicherheitsgerüst der von einem Unternehmen verwendeten Software zu überprüfen, Schwachstellen zu identifizieren und Wege zu finden, diese proaktiv zu beseitigen. Dies hilft Unternehmen, Risiken in der Lieferkette zu reduzieren.
- Den Prozess zur Bewältigung von Sicherheitskrisen verbessern –Durch die Erstellung einer SBOM werden Systemschwachstellen nicht beseitigt und Angriffe auf die Software-Lieferkette nicht vollständig verhindert. Es reduziert jedoch die Risiken in der Lieferkette und kann den Prozess der Krisenbewältigung verbessern, wenn sie tatsächlich auftreten. Eine Liste aller Abhängigkeiten, die als potenzielle Schwachstelle in einer Softwareanwendung dienen können, vereinfacht den Prozess des Risikomanagements.
- Kosten reduzieren-Eine der Konsequenzen des Umgangs mit Sicherheitsrisiken durch die Nutzung von SBOMs besteht darin, dass dadurch auf lange Sicht die Kosten gesenkt werden. Das manuelle Parsen von Code zum Auffinden von Schwachstellen kann recht kostspielig sein. Die Software-Stückliste bietet Einblick in die zugrunde liegenden Softwarebibliotheken. Dies hilft, Zeit zu sparen und die Kosten der Sicherheitsbewertung zu senken.
Fazit
In jedem Softwareunternehmen, das seinen Ruf ernst nimmt, ist die Erstellung einer umfassenden SBOM, die kontinuierlich mit Daten aktualisiert wird, eine der wichtigsten Möglichkeiten, den Auswirkungen eines Software-Lieferkettenangriffs vorzubeugen. Da die Verwendung von Software von Drittanbietern bei der Entwicklung von Softwareprodukten praktisch unvermeidlich ist, erleichtert eine umfassende Zutatenliste aller von Ihnen verwendeten Komponenten die Eingrenzung und effektivere Lösung von Problemen erheblich. Es erleichtert auch die Einhaltung von Softwarelizenzierungsproblemen und in manchen Fällen sogar von behördlichen Vorschriften.