DevSecOps: Der Schlüssel für einen sicheren und innovativen Software- und Betriebs-Prozess?
Die Welt der Cyber-Angriffe wird immer ausgefeilter und komplexer – diesen Fakt bestätigen nicht zuletzt diverse Marktstudien¹ zum Thema. Durch innovative Technologien wie KI ist bereits heute zu erwarten, dass sich diese Situation in Zukunft weiter zuspitzen wird. Umso wichtiger ist es, IT-Systeme stetig auf den Prüfstand zu stellen und neue Methoden zu etablieren, um die IT-Sicherheit und damit die Cyber-Resilienz zu stärken.
In der Software-Entwicklung hat sich an dieser Stelle ein Ansatz herauskristallisiert, welcher hohe Sicherheitsstandards direkt in den Software- und Betriebsprozess integriert: DevSecOps.
Was steckt hinter dem Ansatz DevSecOps?
Bei DevSecOps handelt es sich um eine Zusammensetzung aus den Begriffen Development, Security und Operations. Es beschreibt einen Ansatz, der Sicherheitsaspekte in den gesamten Softwareentwicklungsprozess integriert, und damit als Security-Erweiterung von DevOps gesehen werden kann. Das Ziel: die Stabilität und Robustheit von IT-Systemen zu gewährleisten. Konkret werden beispielsweise Sicherheitstests und -kontrollen in alle Phasen des Softwareentwicklungszyklus, vom Design, über die Bereitstellung bis hin zum Betrieb integriert.
Die Berücksichtigung von Sicherheitsaspekten beim Aufbau von IT-Systemen ist zwar kein neuer Gedanke, jedoch ist der Zeitpunkt der Integration in den Entwicklungsprozess innovativ. DevSecOps verfolgt den Ansatz, Sicherheit nicht erst am Ende des Prozesses zu betrachten, sondern als Kernelement von Anfang an zu integrieren. Die konsequente Einhaltung wird durch Automation, Quality Gates und Workflows sichergestellt.
Erfolgreicher DevSecOps-Ansatz in 4 Dimensionen
Die Spielwiese für die erfolgreiche Integration von DevSecOps ist riesig. Unsere Erfahrungen zeigen, dass es vier grundlegende Dimensionen gibt, welche für die erfolgreiche Integration von DevSecOps maßgeblich sind.
• DevSecOps-Kultur: Eine DevSecOps-Kultur setzt auf Zusammenarbeit und Kommunikation zwischen Entwicklern (Dev), Sicherheitsexperten (Sec) und IT-Betriebsteams (Ops). Sie fördert ein Verständnis der gegenseitigen Verantwortungen und ein gemeinsames Ziel: die Sicherheit von Software in den gesamten Entwicklungsprozess zu integrieren.
• Prozesse und Tools: Die Auswahl und Implementierung von Sicherheitswerkzeugen und –technologien sowie die Beschreibung notwendiger Prozesse ist eine wichtige Dimension von DevSecOps. Neben den Prozessen gehören Tools zur Schwachstellenanalyse, Sicherheitsüberwachung, Authentifizierung, Verschlüsselung und andere Sicherheitslösungen zu den wichtigsten Bestandteilen.
• Erfolgsmessung und Optimierung: Es erfolgt die Definition von Metriken und Kennzahlen, mit denen der Fortschritt bei der Integration von Security-Aspekten gemessen werden kann. Durch die Verwendung von Leistungskennzahlen kann sichergestellt werden, dass Sicherheitsziele erreicht und kontinuierliche Verbesserungen realisiert werden können.
• Automatisierung: Sicherheitsüberprüfungen und Tests sollten automatisiert werden, um Sicherheitslücken frühzeitig zu erkennen und zu beheben. Dabei hilft eine konsequente Automatisierung von Security-Tasks und Prüfungen sowie Tests und Code-Analysen. Beispiele hierfür sind Schwachstellen-Scans, IAM mit Need2Know-Prinzip und rollenbasierte Zugriffskontrollen. Die Integration erfolgt in die Continuous Integration / Continuous Delivery (CI/CD)-Pipeline und ist auch unter der Bezeichnung Security as Code bekannt.
Vorteile, die sich durch DevSecOps ergeben
Im Kern lassen sich vier wesentliche Vorteile für den Softwareentwicklungs- und Betriebsprozess zusammenfassen, die der DevSecOps-Ansatz mit sich bringt:
• Erhöhte Sicherheit: DevSecOps hilft dabei, Sicherheitslücken in Software frühzeitig zu identifizieren und zu beheben, wodurch die Wahrscheinlichkeit eines erfolgreichen Cyberangriffs verringert wird.
• Kürzere Entwicklungszyklen: DevSecOps kann den Softwareentwicklungsprozess beschleunigen, indem Sicherheitstests automatisiert in alle Prozessschritte integriert werden.
• Verbesserte Zusammenarbeit: DevSecOps fördert die Zusammenarbeit zwischen Entwicklungs-, Betriebs- und Sicherheitsteams und führt durch Reduktion redundanter Arbeiten zu Effizienzsteigerungen. Durch Integration von Security-Maßnahmen in alle Arbeitsschritte sind DevOps Engineers von Beginn an damit vertraut, Security in jedem Schritt mitzudenken und zu implementieren. Damit sind zusätzliche Security-Tasks, welche enorm zeitaufwendig umgesetzt werden müssen oder sogar vergessen werden, obsolet.
• Konsequente Automatisierung von Security-Tasks durch Security as Code. Security-Aspekte werden ab Code-Zeile 1 direkt mitgedacht. Zudem wird Security auch im Betrieb durch kontinuierliche Observability und kontinuierliches Monitoring sichergestellt.
Welches Zusammenarbeitsmodell bietet sich für agile DevSecOps-Cloud-Projekte mit Dienstleister-Strukturen an?
In der Regel wird der DevSecOps-Ansatz in Dienstleistungsstrukturen eingesetzt. Das bedeutet, dass nicht nur ein internes IT-Team die Aufgaben im Rahmen des Cloud-Betriebs übernimmt, sondern auch externe IT-Dienstleistungshäuser, mit fundiertem technologischem Know-how hinzugezogen werden. Um diese Komplexität in der Zusammenarbeit zu bewältigen, setzen wir bei matrix technology auf den Managed Capacity Ansatz. Nach unseren Erfahrungen ist dies eine gute Option für Unternehmen, die ihre IT-Betriebsteams flexibel und agil skalieren möchten, ohne dabei auf Expertise und Erfahrung verzichten zu müssen.
Weitere Informationen hierzu können Sie in unserem Beitrag: Managed Capacity: Das ideale Zusammenarbeitsmodell für agile Cloud Workloads? nachlesen.
Fazit: DevSecOps als „New Normal“ in Softwareentwicklungs- und Betriebsprozessen
DevSecOps ist ein wichtiger Ansatz für die Verbesserung der Software-Sicherheit, der nicht nur technische Aspekte berücksichtigt, sondern als ganzheitlicher Ansatz für Technik, Menschen und Prozesse zu betrachten ist. Er ist eine Erweiterung des DevOps-Ansatzes, der die verprobten Zusammenarbeitsmodelle zwischen Entwicklungs- und Betriebsteams um die Security-Komponente erweitert. Schon heute ist abzusehen, dass DevSecOps sich als neuer Standard in der Software-Entwicklung etablieren wird. Und diese Entwicklung ist mit Blick auf die steigende Zahl an Sicherheitsvorfällen unumgänglich, wenn man die Kritikalität der IT-Systeme für das Unternehmensbusiness in den Mittelpunkt rückt. Wer heute schon im DevOps-Umfeld agiert, kommt nicht umher, auch DevSecOps mitzudenken. Denn es ist abzusehen, dass beispielsweise DDOS-Angriffe nicht nur auf kritische Software bzw. Infrastrukturkomponenten erfolgen, sondern jede eingesetzte Software das Ziel von Angriffen werden kann.
1 Lünendonk Trendstudie 2023: Von Cyber Security zur Cyber Resilience: Wie Unternehmen auf die steigende Bedrohungslage reagieren