Die Software-Lieferkette: Warum Ihre Abhängigkeiten wichtig sind
Moderne Software wird nur selten vollständig von Grund auf neu entwickelt.
Anwendungen sind auf Frameworks, Bibliotheken, Pakete, Container-Images, Betriebssystemkomponenten und Dienste von Drittanbietern angewiesen.
Dadurch entsteht eine Software-Lieferkette.
Und jede Abhängigkeit kann potenziell Risiken einführen.
📦 Das Abhängigkeitsproblem
Stellen Sie sich vor, Sie entwickeln eine Anwendung mit zwanzig Open-Source-Paketen.
Ihr Team hat vielleicht den Anwendungscode geschrieben, aber ein Teil der Funktionalität stammt aus Software, die anderswo gepflegt wird.
Wenn eine Abhängigkeit eine bekannte Sicherheitslücke enthält, kann Ihre Anwendung einen Teil dieses Risikos übernehmen.
Deshalb ist die Sicherheit von Abhängigkeiten wichtig.
🔍 Was können Teams tun?
Ein guter Ausgangspunkt ist zu verstehen, wovon Ihre Anwendung tatsächlich abhängt.
Nützliche Vorgehensweisen sind unter anderem:
Pflegen Sie Verzeichnisse der Abhängigkeiten.
Scannen Sie Abhängigkeiten auf bekannte Schwachstellen.
Halten Sie wichtige Pakete auf dem neuesten Stand.
Entfernen Sie unnötige Abhängigkeiten.
Fixieren oder steuern Sie Versionen, wo dies sinnvoll ist.
Überprüfen Sie Container-Basis-Images.
Überwachen Sie Abhängigkeiten kontinuierlich.
🔐 Software Bills of Materials
Eine Software Bill of Materials (SBOM) kann Transparenz über die von Software verwendeten Komponenten schaffen.
Betrachten Sie sie als ein Inventar.
Wird in einem bestimmten Paket eine neue Sicherheitslücke entdeckt, kann ein genaues Inventar Organisationen dabei helfen festzustellen, welche Anwendungen betroffen sein könnten.
🚀 DevSecOps-Verbindung
Dies ist ein weiterer Bereich, in dem Automatisierung besonders wirksam wird.
Anstatt jede Abhängigkeit manuell zu prüfen, können CI/CD-Pipelines automatisch Sicherheitsprüfungen für Abhängigkeiten und die Lieferkette durchführen.
Das bedeutet, dass Sicherheit Teil des normalen Entwicklungsablaufs wird.
💡 Meine Erkenntnis
Sie müssen nicht nur den Code absichern, den Ihr Team schreibt.
Sie brauchen auch Transparenz über die Software, von der Ihre Anwendung abhängt.
Kennen Sie Ihre Abhängigkeiten. Scannen Sie sie. Aktualisieren Sie sie. Überwachen Sie sie.
Wie viel Transparenz haben Organisationen Ihrer Meinung nach wirklich in ihre Software-Lieferkette?
Vorgeschlagenes Thema: Cybersicherheit
#CYBER