Eine Frage der Bereitstellung Sicherheit von CI/CD-Pipelines

Ein Gastbeitrag von Marc Meckel * 5 min Lesedauer

Anbieter zum Thema

Immer mehr Sicherheitsteams sorgen sich um die Sicherheit ihrer Cloud-nativen Anwendungen. Die Sicherheit von CI/CD-Pipelines findet dabei allerdings noch zu wenig Beachtung.

Cyberkriminelle greifen gezielt in den Continuous-Integration- und -Delivery-Workflow ein, um Cloud-native Awendungen zu kompromittieren.
Cyberkriminelle greifen gezielt in den Continuous-Integration- und -Delivery-Workflow ein, um Cloud-native Awendungen zu kompromittieren.
(© RAVI - stock.adobe.com)

In einer Zeit, die sich immer mehr in Richtung Cloud-nativer Anwendungen bewegt, werden die Sicherheitsbedenken immer lauter. Cyberkriminelle haben diese Applikationen als lukratives Ziel erkannt und nutzen gezielt Schwachstellen im gesamten Anwendungszyklus aus, um vertrauliche Informationen zu kompromittieren oder schädlichen Code in Anwendungen einzuschleusen.

Während sich die Aufmerksamkeit der Sicherheitsbeauftragten in Unternehmen auf den Schutz der Anwendungen selbst richtet, bleibt ein entscheidender Aspekt oft im Dunkeln: die Sicherheit der CI/CD-, also Continuous-Integration- und -Delivery-Pipelines. Diese Pipelines spielen eine entscheidende Rolle bei der schnellen Erprobung und Umsetzung von Code-Änderungen.

Zahlreiche Beispiele – wie die Angriffe auf SolarWinds, das PHP-Datenleck und MOVEit – unterstreichen, wie notwendig eine umfassende Sicherheitsüberwachung von CI/CD-Pipelines ist. Es ist unerlässlich, diese Umgebungen in Sicherheitsstrategien mit einzubeziehen und angemessen zu schützen.

Überwachung von CI/CD-Pipelines

Während Angreifer ihre Techniken schnell anpassen, um CI/CD-Pipelines anzugreifen, erfolgt die Reaktion der Sicherheitsteams meist eher zögerlich. Das richtige Gleichgewicht zwischen Sicherheit und Entwicklungsgeschwindigkeit zu finden ist eine Herausforderung, bei der verschiedene Aspekte sorgfältig berücksichtigt werden müssen.

CI/CD-Pipelines sollen die Entwicklung optimieren, indem neuer Code innerhalb weniger Minuten von der Entwicklungsumgebung in die Produktion gelangt. Dieser weitgehend automatisierte Prozess wird jedoch oft unzureichend überwacht. Ohne geeignete Kontrollmechanismen besteht die Gefahr von Sicherheitslücken.

Erlangen Angreifer entsprechende Rechte, können sie schädlichen Code in die Pipeline einschleusen. Ein Beispiel dafür ist der PHP-Angriff, bei dem ungeprüfter Schadcode eine Hintertür in einer offiziellen PHP-Version öffnete. Unternehmen müssen daher sicherstellen, dass entsprechende Kontrollen vorhanden sind, die verhindern, dass eine Entität – sei es ein Mensch oder eine Maschine – sensiblen Code ohne Validierung bereitstellt.

Identitäts- und Zugriffsmanagement als zentrale Herausforderung

Ein weiteres Problem ergibt sich aus dem Identitäts- und Zugriffsmanagement. Aufgrund fehlenden Verständnisses für oder mangelnder Konzentration auf potenzielle Bedrohungen entsprechen Benutzerprofile für CI/CD-Umgebungen oft nicht dem Least-Privilege-Prinzip. Der User besitzt also mehr als die für seine Tätigkeit erforderlichen Zugangs- oder Zugriffsberechtigungen.

Sind mehrere unterschiedliche Systeme im Prozess für die Softwarebereitstellung involviert, entsteht Komplexität durch die verschiedenen Bereitstellungsmethoden, Sicherheitsrichtlinien und Zugriffsmethoden, die für jedes System relevant sind. Bei Hunderten von Identitäten, die mit einer CI/CD-Pipeline verbunden sind, werden diese Zulässigkeiten und Berechtigungen schnell zu einem echten Problem.

Unternehmen müssen daher gewährleisten, dass die Zuweisung von Konten kontinuierlich erfolgt, indem inaktive Konten und unnötige Berechtigungen entfernt werden. Darüber hinaus sollten sie Maßnahmen ergreifen, um die Erstellung von gemeinsam genutzten, selbst registrierten oder lokalen Konten so weit wie möglich zu verhindern oder einzuschränken. Die Verwaltung der Identitäten sollte stattdessen über eine zentrale Schnittstelle erfolgen.

Transparenz ist das A und O

Angesichts der zunehmenden Anzahl von Sprachen, Frameworks und Tools in einer Development-Pipeline besteht ein klarer Bedarf, die Transparenz der Entwicklungsumgebung zu verbessern, Angriffsflächen zu verstehen und die Sicherheit entsprechend zu erhöhen. Um die Transparenz zu verbessern, können Sicherheitsteams im ersten Schritt Tools einführen, die eine einheitliche Bestandsaufnahme der Anwendungsentwicklungsumgebung ermöglichen.

Diese Inventur sollte alle Programmiersprachen, Frameworks und ausführbaren Dateien umfassen. Von hier aus können Unternehmen Sicherheitsrisiken über verschiedene Code-Typen hinweg ermitteln, die Software-Lieferkette visualisieren und alle Code-Risiken in ihrer Entwicklungsumgebung nachvollziehen. Außerdem lassen sich so die Risiken in der Codebasis identifizieren und priorisieren, sodass letztlich die Angriffsfläche der CI/CD-Pipeline verfolgt und nachvollzogen werden kann.

Sobald eine verbesserte Transparenz gegeben ist, können Unternehmen damit beginnen, die CI/CD-Sicherheit selbst zu verbessern. Dabei sollten sie sicherstellen, dass nicht nur der Code in der Pipeline sicher ist. Sicherheitsteams müssen auch den Code, aus dem die Pipeline selbst besteht, scannen, etwaige Fehlkonfigurationen beheben und darüber hinaus native Kontrollen implementieren.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Softwareentwicklung und DevOps

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

Zudem sollten sie in der gesamten Umgebung ein sogenanntes ‚Secrets-Scanning‘ implementieren. Dieses hilft dabei, freiliegende Anmeldeinformationen zu identifizieren und zu entfernen, damit böswillige Akteure diese nicht ausnutzen können, um sich unberechtigten Zugang zu verschaffen.

Schnelle Reaktion auf dynamische Angriffsflächen

Da sich der Umfang der Angriffsfläche in der Cloud und damit auch der CI/CD-Pipeline teilweise täglich ändern kann, ist es eine Sache, sich einen Überblick zu verschaffen – diesen gilt es jedoch auch ständig zu überprüfen. Um auf einen Angriff reagieren zu können, sind leicht zugängliche, aktuelle Informationen und eine möglichst frühzeitige Warnung notwendig.

Die Implementierung eines zuverlässigen Ansatzes für Transparenz und Protokollierung erfordert, dass sowohl menschliche als auch programmatische Zugriffe sichtbar sind und Audit-Protokolle über menschliches Verhalten sowie Anwendungsprotokolle geführt werden. Letztere dokumentieren Ereignisse wie Uploads von Artefakten oder die Übertragung von Daten in ein Repository.

Es ist anzumerken, dass viele Systeme standardmäßig kein Log erstellen; dies haben Sicherheitsteams selbst aktiviert. Von hier aus können sie systemübergreifende Protokolle viel schneller und einfacher analysieren, um Sicherheitsvorfälle zu untersuchen, und automatische Warnungen bei ungewöhnlichen Verhaltensweisen aktivieren, die eine genauere Untersuchung erfordern.

Fazit

CI/CD-Pipelines sind hochdynamische, sich ständig verändernde Umgebungen und Teil einer Cloud-Angriffsfläche, die selbst stets in Bewegung ist. Angreifer passen ihre Methoden schnell an, um Schwachstellen auszunutzen, die in dieser Dynamik entstehen.

Um die Sicherheit ihrer CI/CD-Pipelines zu erhöhen, sollten Unternehmen geeignete Sicherheitsmaßnahmen implementieren. Dazu zählen der Einsatz von Tools, die eine einheitliche Bestandsaufnahme der Anwendungsentwicklungsumgebung ermöglichen, die Identifikation von Sicherheitsrisiken in verschiedenen Codetypen oder die Visualisierung der Software-Lieferkette. Damit gelingt es Sicherheitsteams, Entwicklungsumgebungen zu schützen, Sicherheitslücken zu schließen und den Veränderungen in der Bedrohungslandschaft sowie böswilligen Akteuren einen Schritt voraus zu sein.

* Über den Autor
Marc Meckel ist Manager Systems Engineering bei Palo Alto Networks und zuständig für deutsche Mittelstandskunden. Er ist seit über 20 Jahren in der Netzwerk- und Sicherheitsbranche bei verschiedenen Dienstleistern und Herstellern tätig. Mit seiner langjährigen Erfahrung in der Abwehr von Cyberangriffen auf Netzwerke unterstützen Marc Meckel und sein Team Kunden bei der Stärkung ihrer Präventivmaßnahmen zur Abwehr heutiger Bedrohungen.

Bildquelle: Palo Alto Networks

(ID:49900089)