Im April 2023 veröffentlichten DHS, CISA, DOE und CESER einen Bericht mit dem Titel „Software Bill of Materials (SBOM)-Sharing-Lebenszyklusbericht'. Der Zweck des Berichts bestand darin, die aktuelle Art und Weise zu untersuchen, wie Menschen SBOMs teilen, und allgemein zu skizzieren, wie dieser Austausch besser und ausgefeilter gestaltet werden könnte, um eine bessere Transparenz in der Software zu ermöglichen.
Der Bericht unterteilt den SBOM-Freigabelebenszyklus in drei Phasen: Erkennung, Zugriff und Transport. Vorbereitung Auf diese Weise kann ein Benutzer oder Verbraucher auf die Existenz einer neuen SBOM eines Autors oder Anbieters aufmerksam werden. Access ist die Art und Weise, wie ein Benutzer oder Verbraucher auf diese SBOM und alle damit verbundenen relevanten Daten zugreifen kann (SBOM-Anreicherung). Transport So kann ein Verbraucher die SBOM erhalten. In jedem Fall gilt: Je automatisierter der Prozess ist, desto besser ist er für alle Beteiligten.
Obwohl der Bericht keine Tools ausdrücklich erwähnt, enthält er verschiedene Beispiele und Listen von Attributen, die solche gewünschten Tools umfassen würden.
Wir waren begeistert, hier bei Scribe zu entdecken, dass unsere Plattform das Teilen von ermöglicht SBOM Informationen als Teil ihrer Kernnutzung erhält bei der Prüfung anhand der veröffentlichten Anforderungsliste sehr gute Noten.
In diesem Artikel gehen wir die drei Teile des SBOM-Sharing-Lebenszyklus durch, wie im Bericht angegeben, und untersuchen die ausgefeilteste Lösung aus Sicht von CISA. Abschließend beschreiben wir, wie Plattform des Schreibers beantwortet diese Anforderungen.
SBOM-Sharing-Lebenszyklus-Klugheit
Vorbereitung ist die Anfangsphase des Lebenszyklus und beinhaltet, wie ein Verbraucher auf die Existenz einer SBOM von einem Autor oder Anbieter aufmerksam wird. Dies könnte so einfach sein wie das Platzieren einer neuen SBOM an einer standardisierten Stelle auf der Website eines Anbieters oder an einem Ort in einem Software-Repository. Dem Verbraucher sollte klar genug sein, wie er Zugriff auf diese SBOM-Daten erhält oder zumindest anfordert, damit er später darauf zugreifen und sie für seine Verwendung herunterladen kann. Manchmal muss der Verbraucher mit dem Anbieter in Kontakt bleiben und um Aktualisierungen seiner SBOM bitten. Alternativ könnten automatisierte kontinuierliche Updates zur Verfügung gestellt werden.
Ein hochentwickelter Ansatz, so heißt es in dem Bericht, überlässt dem Anbieter einen größeren Teil der Entdeckungslast, um dem Verbraucher das Leben zu erleichtern. Im Idealfall gibt es einen bekannten und gut dokumentierten Prozess, der sich ideal für die Automatisierung eignet und bei dem nur wenig manuell erledigt werden muss. Beispielsweise könnte ein Anbieter eine entwickeln veröffentlichen/abonnieren Dienst, der Benutzer automatisch mit Informationen zu neuen SBOMs sowie aktualisierten Versionen bestehender SBOMs und einem Mechanismus zum Auffinden dieser SBOMs aktualisiert. Darüber hinaus sollten ausgefeiltere Ebenen Kunden präziser auf die angeforderten Informationen leiten und gleichzeitig irrelevante Informationen verbergen.
Access ist der nächste Schritt und beschreibt, wie Sie Zugriff auf die Daten erhalten. Der Schwerpunkt dieser Phase liegt auf den Zugriffsbeschränkungen für die SBOM und darauf, wie ein Benutzer die Erlaubnis erhält, zur Transportphase überzugehen. Der einfachste Weg besteht darin, das SBOM vollständig für die Öffentlichkeit zugänglich zu machen, und es besteht möglicherweise nicht einmal die Notwendigkeit, Zugangskontrollen einzurichten. Aber realistischerweise könnte ein Anbieter verlangen, dass SBOMs in einem Repository aufbewahrt werden, wo der Zugriff darauf manuell genehmigt oder rollendefiniert werden muss, bevor er einem bestimmten Empfänger gewährt wird. Darüber hinaus benötigen SBOMs möglicherweise eine spezifische Granularität der Zugriffskontrolle, um sicherzustellen, dass Kunden nur bestimmte mit einem Produkt verknüpfte SBOM-Versionen anzeigen oder auf bestimmte Teile der Daten zugreifen können.
Bei einem hochentwickelten Ansatz kann ein Verbraucher Zugriff auf eine SBOM anfordern und automatisch ein eingeschränktes Konto erstellen. Wenn ein Verbraucher nachweisen kann, dass er ein Gerät oder eine Software gekauft hat, die für die betreffende SBOM relevant ist, beispielsweise einen Softwareschlüssel, kann der Zugriff auf SBOMs automatisch gewährt werden. Bei Rollen oder Zugriffskontrollen auf Organisationsebene gibt es ein hohes Maß an Berechtigungsgranularität. Diese Funktion erfordert ein hohes Maß an Komplexität, da die Berechtigungen jeder gewünschten Aktivität analysiert und verstanden werden müssen sowie die Daten verfolgt werden müssen, die zur automatischen Validierung von Kundenkäufen erforderlich sind. Mit einem System wie der Public-Key-Infrastruktur-Delegierung mit Zertifikatsignierung kann ein Anbieter möglicherweise Authentifizierungs- und Zugriffskontrollanforderungen an eine andere Organisation delegieren, um einen noch höheren Grad an Komplexität zu erzielen.
Transport ist der letzte Schritt und beschreibt die Methode, mit der ein Verbraucher die SBOM erhält. SBOMs können mit verschiedenen Methoden von einem Standort zu einem anderen oder von einem Standort zu mehreren Standorten transportiert werden. Dieser Prozess wird durch einige Methoden effektiver erleichtert als durch andere. Eine auf einer Festplatte gespeicherte und vom Autor an den Verbraucher gesendete Kopie kann ausreichend sein, wenn der SBOM-Transport nur die Bewegung einer einzelnen SBOM umfasst. Eine Methode, die es Kunden ermöglicht, die SBOM sicher abzurufen, sollte verfügbar gemacht werden, wenn eine große Verbraucherbasis sie benötigt. Dieser Schritt ist notwendig, damit der Verbraucher die Daten nutzen kann. Bedenken Sie, dass die meisten praktischen SBOM-Anwendungen ein maschinenlesbares Format erfordern, sodass der Transport dies berücksichtigen muss.
Mithilfe etablierter Protokolle sollte der Prozess der Transportphase gründlich dokumentiert werden, um eine größtmögliche Transportautomatisierung zu ermöglichen. Eine Anwendungsprogrammierschnittstelle (API) sollte zugänglich, wiederholbar und konsistent sein. Es würde ausreichen, eine OpenAPI-Schnittstelle als hochentwickelt einzustufen, wenn sie Dokumentation für einen Representational State Transfer (REST) oder eine RESTful API bietet. 13 Auch andere API-Standards wie Simple Object Access Protocol (SOAP) oder Graph Query Language (GraphQL) können als ausreichend angesehen werden. REST ist nur ein beliebtes Beispiel für eine standardisierte Schnittstelle. Tatsächlich reichen alle Schnittstellen, die ein vergleichbares Maß an Integrationsfreundlichkeit bieten, aus, um als hochentwickelt eingestuft zu werden.
Wie antwortet die Scribe-Plattform auf die Anforderungen?
Scribe hat eine Plattform entwickelt, die eine automatische Funktion ermöglicht veröffentlichen/abonnieren . Ein Softwarehersteller kann seine CI-Pipelines mit der Plattform verknüpfen, sodass jedes Mal, wenn er einen Build ausführt, eine entsprechende SBOM erstellt wird. Diese SBOMs werden dann mit zusätzlichen Informationen angereichert und können je nach Projekt, Build-Pipeline, Datum und Uhrzeit abgerufen werden. Der Produzent kann jedem Projekt Abonnenten hinzufügen, sobald er sich dafür entscheidet veröffentlichen eine neue Softwareversion. Alle Abonnenten werden benachrichtigt und haben sofort vollen Zugriff, nicht nur auf das neue SBOM, sondern auch auf alle anderen dazugehörigen Sicherheitsinformationen. Die Abonnenten können nach Belieben auf die SBOMs zugreifen, auf die sie Zugriff haben, und sie können sie jederzeit herunterladen.
Sobald die Build-Pipeline-Verbindung hergestellt ist und ein Abonnent zustimmt, dass er an den Daten interessiert ist, wird der gesamte Informationsfluss automatisiert und erfordert kaum oder gar keinen manuellen Eingriff. Die Sicherheitsdaten werden von Scribe verschlüsselt und gesichert und nur der Hersteller und autorisierte Abonnenten haben Zugriff. Die Erkennung erfolgt automatisch, der Zugriff wird vom Produzenten bestimmt und der Transport erfolgt nach Lust und Laune des Abonnenten.
Die Zukunft der SBOM-Freigabe
Heutzutage erfolgt die gemeinsame Nutzung von SBOMs eher per E-Mail als über ein automatisiertes System, dieser Ansatz ist jedoch nicht skalierbar. Um eine bessere gemeinsame Nutzung zu ermöglichen, müssen mehr Tools und Plattformen wie die von Scribe verfügbar, benutzerfreundlich und zugänglich sein. Eine Vielzahl von Sharing-Lösungen, die auf die Bedürfnisse unterschiedlicher Stakeholder zugeschnitten sind, wäre für das SBOM-Sharing-Ökosystem von Vorteil. Diese Bedingungen liegen vor, weil ein bestimmter Lieferant von seinen Kunden möglicherweise aufgefordert wird, verschiedene Transportmethoden zu verwenden, und ein Kunde möglicherweise von seinen vorgelagerten Partnern SBOM-Daten über verschiedene Methoden bereitgestellt wird. Wir brauchen mehr Lösungen, die mit den identifizierten Sondersituationen umgehen können und gleichzeitig versuchen, manuelle Prozesse abzuschaffen und Maßnahmen zu vermeiden, die die Interoperabilität beeinträchtigen. Ziel der Branche sollte es sein, die Entstehung zahlreicher, untereinander inkompatibler SBOM-Sharing-Lösungen in einer größeren Lieferkette zu verhindern, da dies die bestehenden Probleme nur verschärfen würde.
Da der Die Scribe-Plattform ist kostenlos Für bis zu 100 Builds pro Monat geeignet. Ich empfehle Ihnen, es auszuprobieren und zu sehen, wie viele Ihrer Sicherheits- und Regulierungsanforderungen die Plattform erfüllt. Wir haben noch einen langen Weg vor uns, um eine wirklich universelle Plattform zu finden, die unserer Vision entspricht, aber es ist ein guter Ausgangspunkt, den wir gerne mit der Welt teilen möchten.
Diese Inhalte werden Ihnen von Scribe Security zur Verfügung gestellt, einem führenden Anbieter von End-to-End-Sicherheitslösungen für die Software-Lieferkette, der modernste Sicherheit für Code-Artefakte sowie Code-Entwicklungs- und Bereitstellungsprozesse in der gesamten Software-Lieferkette bietet. Weitere Informationen.