Glossar Software Supply Chain Security

Was ist Software-Lieferkettensicherheit?

Software-Lieferkettensicherheit bedeutet, jeden Teil, Prozess und jedes Werkzeug während der Softwareentwicklung sicher zu halten, von der ersten Codezeile bis zur endgültigen Bereitstellung.

Kurz gesagt, hilft die Software-Lieferkettensicherheit Organisationen dabei, alle Beteiligten und alles, was an der Softwareerstellung beteiligt ist, sicher zu halten. Dies verhindert, dass Angreifer schädlichen Code hinzufügen, Daten stehlen oder Störungen verursachen.

Die Software-Lieferkette umfasst Ihren Code, Open-Source-Bibliotheken, Build-Systeme, APIs, Cloud-Konfigurationen und Drittanbieter. Da jeder Teil angegriffen werden kann, muss jeder geschützt werden.

Warum Software-Lieferkettensicherheit wichtig ist

Die moderne Softwareentwicklung stützt sich stark auf Open-Source-Abhängigkeiten, CI/CD-Automatisierung und Drittanbieter-Integrationen.

Dieser Ansatz ermöglicht es Teams, schneller zu arbeiten und zu innovieren, bringt jedoch auch mehr Risiken mit sich. Wenn auch nur eine Abhängigkeit oder ein Werkzeug kompromittiert wird, kann dies zu ernsthaften Problemen führen.

Reale Vorfälle verdeutlichen diese Risiken:

  • SolarWinds-Angriff (2020): Hacker fügten schädlichen Code in ein Software-Update ein, das von über 18.000 Organisationen, einschließlich Regierungsbehörden, verwendet wurde.
  • Codecov-Verletzung (2021): Angreifer modifizierten ein Skript in einem CI-Tool, um Anmeldedaten von Entwicklern zu stehlen.

Diese Beispiele zeigen, dass selbst vertrauenswürdige Werkzeuge angegriffen werden können. Deshalb ist die Sicherheit der Software-Lieferkette so wichtig für DevSecOps-Teams.

Wichtige Komponenten der Sicherheit der Software-Lieferkette

  1. Quellcode-Schutz
  2. Sicherer Zugriff auf das Quellcode-Management, wie GitHub oder GitLab, unter Verwendung von MFA und rollenbasierter Zugriffskontrolle (RBAC), um unbefugte Codeänderungen zu verhindern.
  3. Abhängigkeitsmanagement
  4. Regelmäßiges Scannen und Aktualisieren von Drittanbieter-Bibliotheken mit SCA (Software Composition Analysis), um bekannte Schwachstellen (CVEs) und Lizenzrisiken zu erkennen.
  5. Build-Integrität
  6. Schützen Sie Ihre CI/CD-Pipeline vor Angreifern. Verwenden Sie Code-Signierung, Build-Herkunftsverfolgung und Tools wie Sigstore oder in-toto, um die Authentizität des Builds zu überprüfen.
  7. Artefakt-Verifizierung
  8. Überprüfen Sie die Integrität von erstellten Paketen oder Container-Images vor der Bereitstellung. Implementieren Sie ein Image-Scanning-Tool, um sicherzustellen, dass das Image sicher ist.
  9. Zugriffskontrolle & Geheimnisverwaltung
  10. Begrenzen Sie Berechtigungen mit RBAC (Role-Based Access Control) und sichern Sie Anmeldeinformationen durch einen Passwortmanager oder Cloud-Secret-Manager.
  11. Kontinuierliche Überwachung
  12. Überwachen Sie den gesamten Software-Lebenszyklus, einschließlich Updates, Codeänderungen und Laufzeitumgebungen, um neue Sicherheitsrisiken zu erkennen, die nach der Veröffentlichung auftreten.

Beispiel: Szenario aus der realen Welt

Ein SaaS-Unternehmen entdeckte, dass eine kompromittierte Open-Source-Bibliothek in ihrer CI-Pipeline Malware in die Produktion einführte.

Das Problem blieb wochenlang unbemerkt, da es keine Integritätsprüfungen gab. Nach der Implementierung von Sicherheitskontrollen für die Lieferkette wie Abhängigkeitsscans, Code-Signierung und Pipeline-Überwachung konnte das Unternehmen seine Angriffsfläche reduzieren und jede Codeänderung bis zur vorherigen Version zurückverfolgen.

Best Practices für die Sicherheit der Lieferkette

  • Verifizierte Quellen verwenden: Laden Sie Abhängigkeiten nur aus vertrauenswürdigen Repositories herunter.
  • Implementieren Sie SCA-Tools: Scannen Sie kontinuierlich nach Schwachstellen in Bibliotheken.
  • Zero Trust-Prinzipien übernehmen: Überprüfen Sie jede Komponente und Verbindung.
  • Alles signieren: Signieren Sie Quellcode, Builds und Container-Images digital.
  • Rahmenwerke befolgen: Verwenden Sie NIST SSDF oder SLSA für einen strukturierten Schutz der Lieferkette.
  • Überwachung automatisieren: Integrieren Sie Sicherheitsprüfungen in CI/CD-Pipelines.

Vorteile der Sicherheit der Software-Lieferkette

  • Schützt Software vor Manipulation und unbefugten Änderungen
  • Verhindert groß angelegte Sicherheitsverletzungen und Datenlecks
  • Baut Vertrauen und Compliance-Sicherheit bei Kunden auf
  • Reduziert die Kosten für die Behebung von Problemen durch frühzeitige Erkennung
  • Verbessert die Transparenz über Entwicklung und Lieferung

Verwandte Begriffe

FAQ: Sicherheit der Software-Lieferkette

1. Was ist ein Beispiel für einen Angriff auf die Software-Lieferkette?

Ein berühmtes Beispiel ist der SolarWinds-Einbruch, bei dem Angreifer den Aktualisierungsprozess kompromittierten, um Malware an Tausende von Nutzern zu liefern.

2. Wie unterscheidet sich die Sicherheit der Lieferkette von der traditionellen Anwendungssicherheit?

Die Anwendungssicherheit konzentriert sich darauf, die App selbst zu sichern, während die Sicherheit der Lieferkette alles schützt, was in die Erstellung der App einfließt, einschließlich Tools, Code und Abhängigkeiten.

3. Welche Tools helfen, die Sicherheit der Lieferkette zu verbessern?

Gängige Tools sind Plexicus Container Security , Plexicus ASPM, Snyk, Anchore und Sigstore, die Schwachstellen scannen, die Integrität überprüfen und Abhängigkeiten verwalten.

4. Was ist SLSA?

SLSA (Supply-chain Levels for Software Artifacts) ist ein von Google entwickeltes Framework, das Best Practices zur Sicherung des Software-Build-Prozesses und zur Verhinderung von Manipulationen definiert.

Nächste Schritte

Bereit, Ihre Anwendungen zu sichern? Wählen Sie Ihren weiteren Weg.

Schließen Sie sich über 500 Unternehmen an, die ihre Anwendungen bereits mit Plexicus sichern

SOC 2 Compliant
ISO 27001 Certified
Enterprise Ready