
Im modernen DevSecOps ist die Software-Zusammensetzungsanalyse (SCA) zu einem zentralen Element geworden, um kontinuierlich die Open-Source- und Drittanbieter-Komponenten zu verwalten, die im gesamten Entwicklungszyklus verwendet werden. Für CTOs, Entwicklungsteams und Verantwortliche für die Softwaresicherheit bedeutet dies, ständig Einblick zu haben in das, was wirklich in den Code eingeht, und in die daraus resultierenden Risiken.
Neben den bekannten Schwachstellen kann die Lieferkette absichtliche bösartige Pakete, Angriffe der Dependency-Confusion und Kompromittierungen der Konten der Maintainer ausgesetzt sein – Risiken, die zusätzliche Kontrollen über die bloße CVE-Analyse hinaus erfordern.
Der kritische Punkt ist das wachsende Risiko in der Software-Lieferkette. Direkte und transitive Abhängigkeiten können bekannte Schwachstellen, nicht gepflegte Projekte, unsichere Abhängigkeitsketten und Risiken der Lizenzkonformität einführen, mit konkreten Auswirkungen auf Sicherheit, Compliance und betriebliche Kontinuität.
Die Tools zur Generierung der SCA erstellen eine Software Bill of Materials (SBOM), um Komponenten, Versionen, Lizenzen und bekannte CVEs zu katalogisieren. In IDEs und CI/CD-Pipelines integriert, ermöglicht sie, Kontrollen nach links zu verschieben, Policy anzuwenden und Remediation oder Blockierungen zu automatisieren.
Heute geht es nicht mehr nur um eine gute Praxis. Angesichts zunehmender Angriffe auf die Lieferkette und regulatorischer Anforderungen, die SBOM verlangen, muss das Management der Abhängigkeiten zu einer proaktiven, kontinuierlichen und zentral gesteuerten Funktion werden.
Eine Lösung der Software-Zusammensetzungsanalyse analysiert Projektdateien wie package.json, pom.xml oder requirements.txt, um alle Open-Source-Abhängigkeiten zu identifizieren. Sie beschränkt sich nicht nur auf direkte Abhängigkeiten: Sie rekonstruiert auch den gesamten Graph der transitive Abhängigkeiten, oft den am wenigsten sichtbaren Punkt der Software-Lieferkette.
In containerisierten Architekturen kann die SCA die Analyse auch auf Docker-Images und Systempakete aus dem Basisbetriebssystem erweitern. Komponenten wie OpenSSL, glibc, curl oder andere Bibliotheken im Image können Schwachstellen unabhängig von Anwendungsabhängigkeiten einführen und müssen daher in das Softwareinventar und in die SBOM aufgenommen werden.
Für jede erkannte Komponente und Version führt die SCA einen Abgleich mit Schwachstellendatenbanken durch, um bekannte CVEs zu melden und ein Risikoniveau zuzuweisen, oft basierend auf CVSS. Außerdem kann sie die Lizenzen der Pakete erkennen, um Compliance-Richtlinien und automatische Kontrollen in CI/CD zu unterstützen.
Ein weiteres Schlüsselergebnis ist die SBOM, also das strukturierte Inventar der Softwarekomponenten. Moderne Lösungen erzeugen sie in Standardformaten wie SPDX und CycloneDX, so kann sie archiviert und im Laufe der Zeit erneut überprüft werden, wenn neue Schwachstellen auftreten.
In der Praxis hilft die SBOM bei Audit, Compliance und Incident Response. SPDX wird häufig in rechtlichen und Lizenzfragen verwendet, während CycloneDX auf Sicherheit ausgerichtet ist, mit nützlichen Informationen zur schnellen Verknüpfung von Komponenten, Abhängigkeiten und Schwachstellen.
In einem DevSecOps-Ansatz sollte die SCA automatisch bei jedem Push und Pull-Request innerhalb der CI/CD-Pipeline ausgeführt werden. In GitHub Actions bedeutet dies zum Beispiel, die Abhängigkeits-Scans und die entsprechenden Software-Artefakte zu starten, um bekannte CVEs, veraltete Versionen und risikoreiche Lizenzen zu erkennen, mit Ergebnissen, die auch im Security-Tab über SARIF sichtbar sind.
Der nächste Schritt ist die Policy Enforcement: Der Workflow kann fehlschlagen, wenn Schwachstellen eine Schweregrad-Schwelle überschreiten oder wenn nicht genehmigte Pakete erscheinen. Auf diese Weise gelangen nur Komponenten, die in einer genehmigten Liste stehen, zum Merge oder Release.
Um das Risiko der Lieferkette zu verringern, ist es sinnvoll, sowohl Abhängigkeiten als auch GitHub Actions in der Pipeline zu versionieren. Tools wie Dependabot und Renovate können automatisch Versionen und Commit-SHA der GitHub Actions aktualisieren, was die Annahme unveränderlicher Referenzen in den Pipelines erleichtert.
Eine effektive Pipeline kombiniert auch SCA, IaC-Kontrollen und kontinuierliches Monitoring. Mit GitHub-Actions-Workflows können Sie Trivy für Abhängigkeiten und Container-Images, Checkov für Terraform, CloudFormation, Kubernetes-Manifeste und Dockerfile verwenden, dazu nächtliche, zeitgesteuerte Jobs, um Schwachstellen zu erkennen, die nach dem Deployment auftreten, und so Geschwindigkeit der Bereitstellung und Sicherheit auszubalancieren.
Unter den Open-Source-Tools der Software-Zusammensetzungsanalyse ist OWASP Dependency-Check eine etablierte Lösung für die Erkennung von Schwachstellen in Software-Abhängigkeiten. Unterstützt außerdem den Export in Standards wie CycloneDX und SPDX, auch wenn der Schwerpunkt hauptsächlich auf der Vulnerability-Analyse liegt, eher als auf der vollständigen und nativen SBOM-Verwaltung, ein Bereich, in dem andere Tools erweiterte Funktionen bieten.
Wenn das Ziel ein SBOM-First-Ansatz ist, arbeiten Syft und Grype gut zusammen. Syft erzeugt schnell SBOMs aus Containern, Dateisystemen und vielen Software-Ökosystemen, während Grype diese SBOMs verwendet, um bekannte CVEs zu suchen und Indikatoren wie EPSS, KEV und OpenVEX-Unterstützung hinzuzufügen.
Für die kontinuierliche Governance ist Dependency-Track der Maßstab: Es importiert SBOMs aus verschiedenen Quellen, wendet Richtlinien an, erstellt Tickets und bietet Dashboards und APIs, die in Unternehmenskontexten nützlich sind. OSS Review Toolkit eignet sich, wenn auch Abhängigkeitsauflösung und Kontrollen der Lizenzkonformität benötigt werden. SPDX-tools hingegen ist nützlich zum Erstellen, Validieren und Konvertieren von SPDX-Dokumenten.
In der Praxis hängt die Wahl von vier Kriterien ab: Scanning-Fähigkeiten, SBOM-Unterstützung, Integration in die Pipeline und Governance. In vielen Unternehmenskontexten bietet eine gezielte Kombination dieser Tools mehr Wert als eine einzelne Lösung.
Die Software-Zusammensetzungsanalyse hilft dabei, das Management von Open Source von einer reaktiven Tätigkeit zu einem kontinuierlichen Prozess zu transformieren. Mit einem vollständigen Inventar direkter und transitive Abhängigkeiten, dem Monitoring von Schwachstellen und Kontrollen zu veralteten Versionen oder Lizenzen erhalten Teams mehr Transparenz und mehr Kontrolle über die Softwaresicherheit.
Integriert in die Pre-Commit-Phasen, in CI/CD-Pipelines und im Monitoring nach dem Deployment, reduziert die SCA die Risikoreichweite, senkt die Kosten der Remediation und verhindert, dass nicht konformer Code in die Produktion gelangt. Zudem unterstützt sie die Sicherheit der Lieferkette, reduziert technischen Schuldenstand und fördert eine DevSecOps-Kultur, die auf kontinuierlicher Risikobewertung und Governance basiert.
Um greifbare Ergebnisse zu erzielen, sollte die SCA in breitere Prozesse integriert werden, zusammen mit weiteren Sicherheitspraktiken und einer aktualisierten Abhängigkeitsverwaltung. Auf diese Weise lassen sich Compliance, Codequalität und Resilienz verbessern, ohne die Entwicklung zu verlangsamen.
Wenn Ihr Ziel darin besteht, die Softwaresicherheit zu stärken, ohne die Liefergeschwindigkeit zu beeinträchtigen, kann Ihnen Astrorei helfen, maßgeschneiderte DevSecOps-Prozesse zu entwerfen und zu integrieren, mit einem agilen Ansatz, der auf Risikominderung ausgerichtet ist. Von der Definition der Strategie bis zur Implementierung automatischer Kontrollen in CI/CD unterstützt das Team Unternehmen und Technik-Teams bei der Realisierung zuverlässiger, skalierbarer und wirklich kontextgerechter maßgeschneiderter Lösungen.
Um das Thema Sicherheit im Entwicklungszyklus weiter zu vertiefen, können Sie auch unseren Artikel über DevSecOps und Sicherheit in der Entwicklung und über Continuous Integration und Continuous Deployment lesen, zwei grundlegende Pfeiler, um die SCA effektiv in die Produktion zu überführen.

Andrea Bellomia
Ein Experte wird Sie innerhalb von 24 Stunden mit einer ersten kostenlosen Einschätzung kontaktieren.