Sowohl in der Produktion als auch in der Softwareentwicklung sind Lieferketten das Herzstück eines reibungslosen Ablaufs. Während physische Lieferketten strenge Kontrollen erfordern, um Bauteile sicher zu liefern und Endprodukte fehlerfrei zu versenden, müssen auch Softwarelieferketten sorgfältig gesichert werden – besonders aufgrund der wachsenden Anforderungen und der zunehmenden Komplexität der Softwarekomponenten. Von der Entwicklung bis zur Auslieferung erfordert dies den Schutz einzelner Elemente sowie der gesamten Pipeline.
Die folgende Checkliste enthält sieben Maßnahmen, um Risiken frühzeitig zu erkennen, zu priorisieren und Angriffe auf die Softwarelieferkette zu verhindern:
Infrastructure as Code (IaC) auf Fehlkonfigurationen prüfen
IaC-Templates wie Terraform, CloudFormation, Azure Resource Manager (ARM), oder Kubernetes können unsichere Voreinstellungen enthalten, die ein leichtes Ziel für Angriffe darstellen. Um Sicherheitslücken zu vermeiden, müssen Unternehmen IaC-Best-Practices implementieren, Fehlkonfigurationen frühzeitig beheben und sensible Daten schützen. Durch regelmäßiges Scannen und die Einhaltung von Sicherheitsrichtlinien können Schwachstellen frühzeitig erkannt, Angriffsflächen reduziert und der Zugriff auf Cloud-Umgebungen besser kontrolliert werden.
Open-Source-Pakete auf bekannte Schwachstellen scannen
Moderne Anwendungen bestehen bis zu 96 Prozent aus Open-Source-Komponenten, von denen viele bekannte Schwachstellen aufweisen. Um diese im Blick zu behalten, können Sicherheitsverantwortliche auf Datenbanken wie die Common Vulnerabilities and Exposures (CVE) zurückgreifen. Diese enthalten umfassende Informationen zu bekannten Sicherheitslücken. Um Anwendungen effektiv abzusichern, sollten sie regelmäßig Codebibliotheken scannen, betroffene Pakete aktualisieren und Patches anhand von Risikobewertungen wie CVSS priorisieren.
Container-Images im gesamten Entwicklungszyklus prüfen
Container bieten Flexibilität, bergen jedoch auch Sicherheitsrisiken. Deshalb ist es wichtig, Images in jeder Entwicklungsphase zu scannen – von der Erstellung einer CI/CD-Pipeline bis zum produktiven Betrieb. Zusätzlich sollten Sicherheitsexperten unbekannte Images in Sandboxes testen, um mögliche Malware zu erkennen. Grundsätzlich dürfen nur vertrauenswürdige Quellen verwendet werden, um Image-Poisoning-Angriffe zu vermeiden.
Sicherheitspraktiken für Versionskontrollsysteme einhalten
Die Sicherheit der Lieferkette hängt maßgeblich vom System ab, das sie verwaltet – bei Cloud-nativen Anwendungen meist ein Versionskontrollsystem (VCS). Ohne passende Zugriffssteuerungen und Branch-Protections kann ein falsch konfiguriertes VCS ein Einfallstor für Angriffe werden. Daher sind Maßnahmen wie die Aktivierung von Zwei-Faktor-Authentifizierung (2FA), Single-Sign-On (SSO), IP-Beschränkungen, der Schutz von Branches vor gefälschten Commits und verpflichtende Code-Reviews unerlässlich.
CI/CD-Pipelines sicher konfigurieren
CI/CD-Pipelines sind das Rückgrat der Codebereitstellung in Cloud-nativen Organisationen und erfordern besondere Sicherheitsvorkehrungen. Ungeprüfte Änderungen in den Abläufen können dazu führen, dass Zugangsdaten offengelegt werden oder der Code manipuliert wird. Unternehmen können diese Risiken effektiv minimieren, wenn sie Pipeline-Konfigurationen scannen, unsichere Befehle vermeiden, nur eingeschränkten Zugriff auf sensible Umgebungen erlauben und Test- und Deployment-Berechtigungen voneinander trennen.
Vertrauliche Daten sicher speichern und verwalten
Neben der Identifizierung von Schwachstellen ist es wichtig, die versehentliche Offenlegung von Zugangsdaten, Tokens oder Schlüsseln zu vermeiden, da sie unbefugten Zugriff auf kritische Systeme ermöglichen. Unternehmen sollten spezialisierte Tresore wie HashiCorp Vault oder Azure Key Vault einsetzen, um vertrauliche Informationen sicher zu speichern. Darüber hinaus sollten Zugangsschlüssel regelmäßig geändert und ein Plan zur Deaktivierung, zum Widerruf und zur Erstellung neuer Anmeldeinformationen implementiert werden. Zusätzlich sollten Unternehmen prüfen, ob sie Zugangsschlüssel durch alternative Authentifizierungslösungen wie OpenID Connect vermeiden können.
End-to-End-Sichtbarkeit schaffen
Die Sicherheit der einzelnen Komponenten der Lieferkette erfordert auch ein Verständnis dafür, wie sie miteinander verbunden sind und potenziell angegriffen werden können. Mithilfe einer Software Bill of Materials (SBOM) und umfassender Code-to-Cloud-Transparenz können Sicherheitsteams Schwachstellen gezielt priorisieren und im Ernstfall schnell die richtigen Maßnahmen ergreifen, um Schäden zu begrenzen.
„Die Sicherheit der Softwarelieferkette hängt davon ab, Schwachstellen frühzeitig zu identifizieren und alle Ebenen zu schützen – von der Infrastruktur über den Code bis hin zu den Pipelines“, sagt Marc Meckel, Manager Domain Consulting bei Palo Alto Networks. „Besonders kritisch ist dabei die kontinuierliche Überwachung und Anpassung der Sicherheitsmaßnahmen. Wer heute seine Supply Chain absichert, muss morgen bereits die nächsten Bedrohungen antizipieren. Unternehmen sollten daher nicht nur in Technologien, sondern auch in die Schulung ihrer Entwicklungsteams investieren, um eine nachhaltige Sicherheitskultur zu etablieren. Die größte Herausforderung liegt dabei oft nicht in der Implementierung einzelner Sicherheitsmaßnahmen, sondern in deren nahtloser Integration in bestehende Entwicklungsprozesse.“