Google will Sicherheit der Software-Lieferkette verbessern

Circuito e Bloqueio
Sheila Zabeu -

November 04, 2022

In den vergangenen Monaten hat die Sicherheit von Software-Lieferketten die Welt in Atem gehalten. Es gab gehäuft Angriffe, bei denen Kriminelle in das Netzwerk eines bestimmten Softwareanbieters eindrangen und beispielsweise Open-Source-Lösungen oder sogar Update-Tools kompromittierten. Insbesondere große Unternehmen mit kritischen Infrastrukturen haben in einem solchen Fall das Nachsehen: Wenn Nutzer ihre Systeme mit Schad-Software versehentlich installieren oder aktualisieren, werden sie nicht nur Opfer, sondern sogar Verbreiter einer Bedrohung.

Laut den Daten des achten jährlichen State of the Software Supply Chain Report von Sonatype wurde in den letzten drei Jahren ein durchschnittlicher Anstieg der Angriffe auf Open-Source-Software-Repositories um 700 % verzeichnet. Der Studie zufolge liefern diese Repositories Softwarekomponenten, die mit Malware infiziert sind. Das Problem dabei: Anwendungen, die auf den Repositories abgelegt sind, verteilen und übernehmen die Schadsoftware. Oft sind das Open-Source-Lösungen, denen Unternehmen und Verbraucher vertrauen.

„Fast jedes moderne Unternehmen ist auf Open Source angewiesen. Es gibt keine Anzeichen dafür, dass die Nutzung von Open-Source-Repositories als Einfallstor für Cyberangriffe nachlässt. Deshalb ist die frühzeitige Erkennung bekannter und unbekannter Schwachstellen wichtiger denn je. Das Ausschließen bösartiger Komponenten ist entscheidend für die Risikoprävention und sollte Teil jeder Diskussion über den Schutz von Software-Lieferketten sein“, sagt Brian Fox, Mitbegründer und technischer Direktor bei Sonatype.

In diesem Zusammenhang hat Google ein neues Open-Source-Projekt namens Graph for Understanding Artifact Composition (GUAC) angekündigt. Das Projekt, das sich noch in der Anfangsphase befindet, zielt darauf ab, das Verständnis der Industrie für Software-Lieferketten zu verändern: Es generiert Metadaten zu Konstruktion, Sicherheit und Abhängigkeiten für verschiedene Softwaretypen und macht diese Informationen frei zugänglich.

Laut Google sind Daten wie die von SBOM-Lösungen (Software Bills of Materials), signierte Bescheinigungen über den Entwicklungsweg von Software (z. B. SLSA, Google Cloud Build). Schwachstellendatenbanken sind derzeit verfügbar und hilfreich. Allerdings lassen sie sich aktuell nur schwer zu einem umfassenden Überblick kombinieren.

Um dieses Problem zu lösen, hat Google ein kostenloses Tool entwickelt, das verschiedene Quellen für Softwaresicherheits-Metadaten kombiniert. Ziel ist es, eine umfassende grafische Datenbank zu erstellen, die die Identitäten von Organisationen in diesem Bereich normalisiert und die Beziehungen zwischen ihnen abbildet. Durch die Abfrage dieses Graphen können somit organisatorische Ergebnisse auf hohem Niveau für die Verwendung in Audits, Politik, Risikomanagement und sogar als Unterstützung für Entwickler generiert werden.

Konzeptionell gesehen besetzt das GUAC-Tool die „Aggregations- und Synthese“-Schicht des Logikmodells für die Transparenz der Software-Lieferkette. Die vier Hauptfunktionen des GUAC-Tools sind:

  • Sammlung: GUAC lässt sich so konfigurieren, dass es eine Verbindung zu mehreren Quellen für Softwaresicherheits-Metadaten herstellt. Dabei kann es sich um offene und öffentliche Quellen, Primärquellen (z. B. interne Repositories) oder proprietäre Quellen Dritter handeln.

  • Ingestion: Aus diesen Quellen importiert GUAC Daten über Artefakte, Projekte, Ressourcen, Schwachstellen, Repositories und sogar Entwickler.

  • Gruppieren: Nach dem Einlesen der Metadaten aus verschiedenen Quellen fügt GUAC diese in einen kohärenten Graphen ein und normalisiert die Entitätsbezeichner. Anschließend durchläuft es den Abhängigkeitsbaum und definiert implizite Beziehungen, z. B. zwischen Projekt und Entwickler, zwischen Schwachstelle und Softwareversion, zwischen Artefakt und Quellcode-Repository und so weiter.

  • Abfrage: Mithilfe des Diagramms lassen sich Metadaten abfragen, die mit Entitäten verbunden sind. Die Abfrage eines bestimmten Artefakts kann dessen SBOM, Provenienz, Entwicklungskette, Projekt-Scorecard, Schwachstellen und aktuelle Lebenszyklus-Ereignisse ausspielen.

Kurz gesagt: GUAC aggregiert und synthetisiert Software-Sicherheits-Metadaten in großem Umfang und macht sie zugänglich. Mit diesen Informationen wird es möglich sein, drei Kategorien von allgemeinen Fragen zur Sicherheit der Software-Lieferkette zu beantworten:

  • Aus der Perspektive der Proaktivität: Was sind die am häufigsten verwendeten kritischen Komponenten des Ökosystems der Software-Lieferkette? Wo liegen die Schwachstellen in der allgemeinen Sicherheitslage? Wie können Kompromittierungen der Lieferkette verhindert werden, bevor sie auftreten? Wo liegen die Risiko-Abhängigkeiten?

  • Aus betrieblicher Sicht: Gibt es Belege dafür, dass die zu installierende Anwendung den Unternehmensrichtlinien entspricht? Können alle Binärdateien in der Produktion zu einem sicher verwalteten Repository zurückverfolgt werden?

  • Vom reaktiven Standpunkt aus: Welche Teile des Inventars der Organisation sind von einer bestimmten Schwachstelle betroffen? Und im Falle eines verdächtigen Ereignisses im Projektlebenszyklus: Wo wurden Risiken in die Organisation eingeführt? Wie ist die Organisation betroffen, wenn ein Open-Source-Projekt unterwandert wird?