Was ist DevSecOps?

Juli 18, 2022

DevSecOps – kurz für „Development, Security and Operations“ (Entwicklung, Sicherheit und Betrieb) – sorgt für die Integration von Sicherheit während des gesamten Lebenszyklus der Software- bzw. Anwendungsentwicklung.

DevSecOps ist aus der DevOps-Bewegung entstanden, mit der der Lebenszyklus der Softwareentwicklung beschleunigt und schnelle Reaktionen bei Anwendungen und Updates ermöglicht werden sollen. DevSecOps baut auf diesem agilen Framework auf, umfasst jedoch in jeder Phase des IT-Prozesses zusätzlich auch Sicherheitsmaßnahmen, um Sicherheitsschwachstellen zu minimieren und die Compliance zu verbessern – ohne dass dies Auswirkungen auf die Geschwindigkeit der Veröffentlichungszyklen hat.

Ein DevSecOps-Ansatz ist ein absolutes Muss für jedes IT-Unternehmen, das Container oder die Cloud nutzt. Denn für beide sind neue Sicherheitsempfehlungen, -richtlinien, -praktiken und -tools erforderlich. Aufgrund der Agilität dieser Technologien muss in jeder Phase des DevOps-Lebenszyklus Sicherheit eingebunden werden.

2022 CrowdStrike Global Threat Report

Laden Sie den Global Threat Report 2022 herunter, um sich über die Trends zu informieren, die unsere Teams im letzten Jahr mit Blick auf die sich ständig weiterentwickelnden Taktiken, Techniken und Prozeduren von Angreifern beobachtet haben.

Jetzt herunterladen

DevOps und DevSecOps im Vergleich

DevOps ist eine agile Entwicklungsmethodik, die die Softwareentwicklung und den IT-Betrieb miteinander verknüpft, um den Lebenszyklus der Softwareentwicklung zu verkürzen und einen kontinuierlichen Entwicklungs- und Bereitstellungszyklus zu ermöglichen. DevOps basiert auf drei permanenten Prinzipien: Integration, Bereitstellung und Implementierung. Mit der permanenten Integration gehen wesentliche Entwicklungsaktivitäten einher, darunter Codierung, Design, Erstellung, Integration und Tests. Die permanente Bereitstellung umfasst die regelmäßige Auslieferung von Software-Anwendungen und -Upgrades und erfolgt durch kontinuierliche Implementierung oder einen automatisierten Pipeline-Workflow.

Mit DevSecOps wird eine Kultur umgesetzt, bei der alle Beteiligten die Sicherheitsfunktionen in jeden einzelnen Schritt des DevOps-Frameworks integrieren. Im Rahmen des DevSecOps-Ansatzes ergänzen die Unternehmen den herkömmlichen DevOps-Workflow dann wahrscheinlich noch durch weitere Schritte. Dazu gehören:

  • Durchführung einer Risiko-Nutzen-Analyse, um die aktuelle Risikotoleranz des Unternehmens zu ermitteln
  • Erstellung einer übergeordneten, integrierten Sicherheitsstrategie, um vorhandene Schwachstellen und bekannte Bedrohungen im Sicherheitsumfeld zu beseitigen
  • Ermittlung der Sicherheitskontrollen, die für die betreffende Anwendung erforderlich sind
  • Automatisierung von wiederkehrenden Aufgaben bei der Sicherheitsentwicklung und im Testprozess
DevSecOps Model

Während des gesamten Entwicklungsprozesses sollten Best Practices für Sicherheit berücksichtigt werden.

Wie funktioniert DevSecOps?

Bei einem DevSecOps-Ansatz ist Sicherheit in jeden Teil des DevOps-Lebenszyklus integriert. Hierbei kommen unter anderem diese wesentlichen Taktiken zum Tragen:

  • Einbindung von IT-Sicherheitsexperten in das DevOps-Team, um die Sicherheitsagenda innerhalb des Entwicklungsprozesses zu überwachen
  • Verbesserung der sicherheitsspezifischen Fähigkeiten des IT-Teams zum besseren Verständnis von Cyberrisiken und Best Practices, damit alle Mitglieder die Auswirkungen während des Entwicklungsprozesses berücksichtigen und Code unter Beachtung von Sicherheitsaspekten schreiben können
  • Automatisierung ausgewählter Cybersicherheitsprozesse und -aufgaben, beispielsweise von Tests auf Sicherheits-Exploits, um einen agilen Workflow zu ermöglichen
  • Entwicklung von Sicherheitsprozessen und -tools, die speziell für die Unterstützung agiler Technologien wie der Cloud, Containern und Mikroservices konzipiert wurden

Bei einem herkömmlichen DevOps-Ansatz finden Sicherheitstests eher zum Ende des Entwicklungsprozesses statt – in der Regel nachdem die Anwendung in einer Produktionsumgebung bereitgestellt wurde. Der Grund dafür ist, dass sicherheitsbezogene Aufgaben wie die Verwaltung von sicheren Konfigurationen und Schwachstellenscans relativ zeitintensiv sein und daher den Entwicklungsprozess verlangsamen können.

Best Practices für DevSecOps

Unternehmen, die den IT-Betrieb, das Sicherheitsteam und die Anwendungsentwickler zusammenführen möchten, müssen Sicherheit in den Mittelpunkt des Workflows für die Software-Entwicklung rücken. Zur Unterstützung von DevSecOps müssen Unternehmen die folgenden beiden grundlegenden Dinge umsetzen:

  1. Gewährleisten, dass Sicherheitstests in den gesamten Entwicklungszyklus integriert und vom Entwicklungsteam durchgeführt werden
  2. Dem Entwicklungsteam die Möglichkeit geben, die beim Testen gefundenen Probleme in den Griff zu bekommen und zu beheben

Nachfolgend werden einige Best Practices für DevSecOps erörtert, die den Unternehmen den Wechsel zu diesem neuen agilen Modell ermöglichen:

Bestimmung einer für Informationssicherheit verantwortlichen Person innerhalb des DevOps-Teams: Viele Teams nehmen zur Umsetzung eines DevSecOps-Ansatzes einen Sicherheitsexperten in ihre Entwicklungsteams auf. Dieser Experte verfügt über das erforderliche Know-how in Anwendungssicherheit und ist auf diesem Gebiet besser geschult als ein Großteil des Teams. Er kann Sicherheitsmaßnahmen prüfen, um sicherzustellen, dass sie angemessen sind.

EXPERTEN-TIPP

Beziehen Sie schon früh im Entwicklungsprozess einen Sicherheitsexperten oder ein Sicherheitsteam ein. Wenn Sie bereits in den Anfangsphasen der Entwicklung Best Practices integrieren, können Sie die Sicherheit des Endprodukts präziser kontrollieren.

Fortbildung des IT-Teams, um dafür zu sorgen, dass Sicherheit in jeden Aspekt des Entwicklungslebenszyklus einfließt: In einem DevSecOps-Modell ist jedes Mitglied des Entwicklungsteams für Sicherheit verantwortlich. Da die Sicherheit in der Vergangenheit kein Verantwortungsschwerpunkt der DevOps-Techniker oder Software-Entwickler war, müssen die Unternehmen ihre Mitarbeiter zur Erfüllung dieser neuen Anforderungen unter Umständen fortbilden. Dazu können sie gemeinsam mit ihrem Cybersicherheitspartner einen Kurs oder ein Schulungsprogramm ausarbeiten, um ihre IT-Teams im Hinblick auf DevSecOps-Prinzipien auf den neuesten Stand zu bringen.

WEITERE INFORMATIONEN

In diesem Video zu Falcon Spotlight sehen Sie, wie Sie Schwachstellen in den Systemen und Anwendungen Ihres Unternehmens schnell überwachen und priorisieren können.Ansehen: Falcon Spotlight for Vulnerability Management

Automatisierung von wiederkehrenden Prozessen und Aufgaben: Bei DevOps geht es im Kern um Geschwindigkeit – und bei DevSecOps ist das nicht anders. Durch die frühe Implementierung von automatisierten Sicherheitskontrollen und Tests in den Entwicklungszyklus können Unternehmen eine schnelle, agile Bereitstellung von Anwendungen gewährleisten. Mithilfe von Tools, die Code direkt bei der Erstellung untersuchen, lassen sich zudem Sicherheitsprobleme schneller identifizieren und beheben.

Auswahl der richtigen Tools, um Sicherheit durchgängig zu integrieren: Cloud-Technologie und die Verwendung von Containern und Mikroservices haben dazu geführt, dass Unternehmen ihre Sicherheitsrichtlinien, -praktiken und -tools neu bewerten müssen. In diesem Umfeld sehen viele Unternehmen cloudnative Sicherheitsplattformen (Cloud-Native Security Platforms, CNSPs) als optimale Lösung an. Das Ziel von CNSPs besteht zum Teil darin, die Absicherung einer vielgestaltigen Multi-Cloud-Umgebung deutlich zu vereinfachen. CNSPs sollen die Anforderungen von cloudnativen Architekturen und DevOps-Entwicklungspraktiken erfüllen. Bei CNSPs liegt der Schwerpunkt nicht auf einem bestimmten Anbieter. Sie sind vielmehr anbieterneutral und wurden entwickelt, um Transparenz und Schutz für alle hybriden Lösungen zu bieten. Darüber hinaus liefern sie Funktionen wie sichere Konfigurationsverwaltung, Laufzeitschutz für Cloud-Workloads und Container sowie Erkennungs- und Reaktionsfunktionen für virtuelle Maschinen (VMs), Container und serverlose Funktionen.

Warum ist DevSecOps notwendig?

Mit dem Aufkommen von Cloud-Technologie, Containern und Mikroservices hat sich die Software-Entwicklung grundlegend geändert. In einer DevOps-Kultur werden API- und Konfigurationstools benötigt, um die Infrastruktur in Form von Code aufzuschlüsseln, der dann vom Entwicklungsteam angepasst und überarbeitet werden kann. Hierdurch können Entwickler die erforderliche Infrastruktur bereitstellen und skalieren, ohne ein separates Infrastrukturteam einbinden zu müssen.

Gleichzeitig hat die zunehmende Nutzung von serverlosen Funktionen, Mikroservices und Containern durch Entwickler zu neuen Sicherheitsrisiken geführt, die berücksichtigt werden müssen. Die Architektur cloudnativer Anwendungen erfordert in puncto Richtlinien und Kontrollen einen eigenen einzigartigen Sicherheitsansatz. Die IT muss nicht nur die Herausforderung bewältigen, in der gesamten Rechenzentrum- und Public Cloud-Umgebung, in der die Anwendungen bereitgestellt werden, durchgängig Sicherheit zu gewährleisten. Sie hat auch mit dem Fehlen ausgereifter Tools zur Sicherung von Containern, mit API-Schwachstellen und anderen Problemen zu kämpfen. In VM-basierten Cloud-Bereitstellungen sind die Sicherheitstools und Best Practices ausgereifter. Sie bieten vollumfängliche Erkennung und Einblicke in Bedrohungen und Leistungsprobleme. Von cloudnativen Umgebungen mit Mikroservices und Containern lässt sich das nicht behaupten. Kurz gesagt: Das Bedrohungsmodell hat sich geändert.

Trotz dieser Herausforderungen bieten cloudnative Ansätze Unternehmen die Möglichkeit, ihre Sicherheit sowie ihre digitalen Initiativen zur Unterstützung ihrer Abläufe zu transformieren. Doch wenn Unternehmen optimal von den Vorteilen von DevOps profitieren möchten, müssen sie einen Weg finden, sichere Entwicklungsprozesse für cloudnative Anwendungen zu integrieren. Jedes Unternehmen muss also zwangsläufig der Sicherheit denselben Stellenwert einräumen wie der Entwicklung und dem Betrieb von Anwendungen.