Überblick
Das SBOM- & Software-Lieferketten-Modul bietet Software-Kompositionsanalyse und Schwachstellenmanagement für die ThreatZ-Plattform. Es ermöglicht Automotive-Cybersecurity-Teams, Software Bills of Materials zu importieren, nach bekannten Schwachstellen zu scannen, Lieferanten- und Lizenzinformationen zu verfolgen, Komponenten mit Fahrzeugarchitekturmodellen zu verknüpfen und das Lieferkettenrisiko über die Zeit zu überwachen.
Unterstützte SBOM-Formate
| Format | Varianten | Hauptfunktionen |
|---|---|---|
| CycloneDX | JSON, XML | Komponenten-Metadaten, externe Referenzen, Lieferanteninformationen, Lizenzauswertung |
| SPDX v2.3 | JSON | Paketbasierte Komponenten, deklarierte/abgeleitete Lizenzen, Erstellerverfolgung |
| SPDX v3.0 | JSON | Graphbasiertes Format, Elementtypen (SoftwarePackage, CreationInfo), Beziehungselemente |
Die Formaterkennung erfolgt automatisch. Die Plattform validiert jede Datei gegen formatspezifische Schemas und übernimmt die XML-zu-JSON-Konvertierung transparent.
Kernkonzepte
SBOM-Dateien
SBOM-Dateien repräsentieren eine hochgeladene Software Bill of Materials. Jede Datei erfasst Format, Version, Lieferant und Verarbeitungsstatus. Dateien durchlaufen einen definierten Lebenszyklus:
Entwurf → Scanning → Aktiv → Veraltet
Ein Vorschau-Workflow ermöglicht es Benutzern, die geparsten Inhalte (Komponentenanzahl, Lieferantenanzahl) vor dem Speichern in der Datenbank zu prüfen.
SBOM-Komponenten
SBOM-Komponenten sind einzelne Softwarepakete, die aus einer SBOM-Datei extrahiert werden. Jede Komponente enthält:
- Name, Version, Package URL (PURL) und Common Platform Enumeration (CPE)
- Lieferantenreferenz und Lizenzinformationen
- Abhängigkeitsanzahl und Abhängigkeitsrisikobewertung (Niedrig / Mittel / Hoch)
- Lebenszyklusstatus (Released, Alpha, Beta, End-of-life)
- Schwachstellenanzahl nach Schweregrad (Kritisch, Hoch, Mittel, Niedrig)
- Verknüpfung zur Systemarchitektur-Komponenteninstanz
Schwachstellen
Schwachstellen sind bekannte Sicherheitslücken (CVEs, GHSAs), die mit SBOM-Komponenten verknüpft sind. Jeder Schwachstellendatensatz enthält:
- CVE/GHSA-Kennung und Quelldatenbank (NVD, GHSA, OSV, CNVD)
- CVSS-Basiswert und -Vektor sowie temporaler CVSS-Score
- Schweregrad (Kritisch, Hoch, Mittel, Niedrig)
- Veröffentlichungs- und Änderungsdatum
- Betroffene und behobene Versionsbereiche
- CISA KEV-Status (Indikator für aktive Ausnutzung)
- Exploit-Erwähnungsanzahl mit letztem Aktualisierungszeitstempel
- Threat-Chatter-Score mit Quellenaufschlüsselung (Foren, Dark Web, soziale Medien, Threat Intelligence)
Berechnete Risikometriken
Berechnete Risikometriken gehen über reine CVSS-Werte hinaus und bieten umsetzbare Priorisierung:
- Tage seit Offenlegung: Berechnet ab dem Veröffentlichungsdatum der Schwachstelle
- Fix verfügbar: Ob eine gepatchte Version existiert
- Exploit-Wahrscheinlichkeit: Adaptive Formel aus CVSS-Score, Offenlegungsalter, Exploit-Erwähnungen und CISA KEV-Status
- Risikoprognose: Eskaliert / Wahrscheinlich eskalierend / Stabil — basierend auf Exploit-Wahrscheinlichkeit und Chatter-Score-Trends
- Datenvollständigkeit: Zeigt an, welche Anreicherungsfelder für die Berechnungsgenauigkeit verfügbar sind
Pipeline für Schwachstellen-Scanning
Der Scanning-Prozess ist vollständig asynchron und ereignisgesteuert:
- Upload: Der Benutzer lädt die SBOM über den Vorschau-Endpunkt hoch. Die Datei wird bereitgestellt und für Vorschaustatistiken geparst.
- Finalisierung: Bei Bestätigung werden Komponenten im Entwurfsstatus erstellt. Ein
sbom.uploaded-Ereignis wird veröffentlicht. - Scan: Der Vuln-Scanner-Microservice konsumiert das Ereignis, erstellt ein Dependency-Track-Projekt und übermittelt die BOM zur Analyse.
- Aufnahme: Nach Abschluss des Scans werden Schwachstellendatensätze mit vollständigen Metadaten erstellt. Komponenten werden per PURL (primär) oder Name@Version (Fallback) zugeordnet.
- Aktivierung: Komponenten wechseln von Entwurf zu Aktiv. Benachrichtigungen werden für kritische/hohe Schwachstellen gesendet.
CI/CD-Integration
SBOM-Dateien können über API-Schlüssel-authentifizierte Endpunkte direkt aus Build-Pipelines hochgeladen werden:
POST /external/sbom/projects/:projectId/system-components/:componentId/sw-unit/:swUnitId/sbom
Dies ermöglicht automatisierte Lieferkettenüberwachung als Teil des Software-Bereitstellungsprozesses. Organisationsweite Neuscans können bei Bedarf ausgelöst werden.
Abhängigkeitsanalyse
Das Modul erstellt und speichert vollständige Abhängigkeitsgraphen für jede SBOM-Datei. Das Abhängigkeitsrisiko wird berechnet auf Basis von:
- Gesamtanzahl der Abhängigkeiten
- Abhängigkeitstiefe
- Schwachstellenausbreitung durch transitive Abhängigkeiten
Abhängigkeitsgraphen werden als interaktive Baumstrukturen mit Schwachstellenindikatoren an jedem Knoten visualisiert.
Dashboard & Analysen
Das SBOM-Dashboard bietet:
- SBOM-Dateiliste: Alle hochgeladenen SBOMs mit Statusindikatoren und Schwachstellenaufschlüsselung
- Komponenteninventar: Durchsuchbare Liste mit Schwachstellenanzahl, Lieferant, Lizenz und Lebenszyklusstatus
- Abhängigkeitsgraph: Interaktive D3-basierte Visualisierung des Komponentenbaums
- Schwachstellenübersicht: Filterbare Liste mit Schweregrad, Exploit-Wahrscheinlichkeit, Risikoprognose und Fix-Verfügbarkeit
- Lieferantenansicht: Komponentengruppierung nach Lieferant mit Risikoaggregation
- Kennzahlen: Gesamtkomponenten, Schwachstellenverteilung, Fix-Quote, ML-Risikoscore, CVE-Prognose (90-Tage-Vorhersage), Lebenszyklus-Risikoindex
Lizenz- & Lieferantenmanagement
- Lizenzinformationen aus jeder SBOM-Komponente extrahieren und verfolgen
- Lieferantenregister mit Komponentenzuordnungen pflegen
- Komponenten-Lebenszyklusstatus überwachen, um End-of-Life-Abhängigkeiten zu kennzeichnen
- Organisatorische SBOM-Richtlinien durchsetzen (Formatanforderungen, automatische Synchronisierungseinstellungen)
- Compliance-Workflows mit strukturierten Lizenzdaten unterstützen
Integration mit anderen Säulen
| Richtung | Säule | Datenfluss |
|---|---|---|
| Eingehend | Design | Software-Einheiten referenzieren SBOM-Dateien; Komponenteninstanzen verknüpfen sich mit SBOM-Komponenten |
| Eingehend | Testing | Codeanalyse-Ergebnisse (SARIF, Semgrep, Snyk, SonarQube) werden in Schwachstellen umgewandelt |
| Ausgehend | TARA | SBOM-Komponenten können als Projekt-Assets verknüpft werden |
| Ausgehend | Compliance | Lizenzverfolgung, SBOM-Richtliniendurchsetzung, Formatanforderungen |
| Ausgehend | Benachrichtigungen | Kritische/hohe Schwachstellenwarnungen an Projektmitglieder |
| Ausgehend | Reporting | SBOM-Statistiken (Fix-Quote, ML-Risikoscore, prognostizierte CVEs) in Sicherheitsberichten enthalten |
| Bidirektional | Knowledge Graph | Komponenten- und Dateibeziehungen werden mit der Graph-Datenbank synchronisiert |