DevSecOps

Paradigmenwechsel in der App-Economy

02.02.2018 von Marc Wilczek
DevSecOps ist eine disruptive Kraft, die nicht nur die die Sicherheit von Apps radikal verbessert, sondern es dem Sicherheitsteam auch ermöglicht, größeren Mehrwert im Unternehmen zu schaffen.

Basierend auf dem Konzept von DevOps, ist DevSecOps die logische Weiterführung. Es bildet dabei den organisatorischen und kulturellen Bezugsrahmen, der die Orchestrierung von Entwicklung, IT-Betrieb und Sicherheitsteams umfasst. In der Praxis haben die zugrundlegenden Methodiken und Arbeitsweisen - Continuous Integration (CI) und Continuous Deployment (CD) - die Softwareentwicklung so verändert, dass sie agiler, kollaborativer, inkrementeller und zuverlässiger geworden ist.

Macht Sinn: Mit DevSecOps sind Sicherheitstests von Anfang an integraler Bestandteil der Softwareentwicklung.
Foto: dotshock - shutterstock.com

Analog anderer Industrialisierungswellen in der Vergangenheit, steht der Effektivitäts- und Effizienzgewinn im Vordergrund. Mittels erhöhter Präzision und schnellerer Geschwindigkeit gelingt es Unternehmen sich zu modernen Softwarefabriken zu entwickeln. Und wie die vergangenen industriellen Revolutionen in anderen volkswirtschaftlichen Subsegmenten hängt auch die App-Wirtschaft von höchster Qualität und sicheren Produkte (namentlich Software) ab um zu florieren. Um dies zu gewährleisten, wird die Verantwortung für Stabilität und Ausfallsicherheit von Applikationen - von der Produktion bis zur Nutzung durch Anwender - im Entwicklungszyklus vorgezogen und auf Entwickler übertragen.

Umfangreiche und fortlaufende Tests werden damit von Anbeginn integraler Bestandteil der Entwicklung. Im Ergebnis führt dies zu spürbaren Qualitätsverbesserungen und mehr Stabilität. Das Risiko kostspieliger Korrekturen im Nachhinein wird dadurch deutlich gesenkt. Dieser Paradigmenwechsel hat jedoch eine Reihe von Implikationen - für Sicherheitsexperten und Entwickler gleichermaßen. Alte Rollenmodelle und frühere Demarkationslinien werden hinfällig. So werden Silos durchbrochen, Zuständigkeiten neu definiert und verkrustete Zusammenarbeitsmodelle gänzlich auf den Prüfstand gestellt.

Iterative Prozesse haben ausgedient

In der Vergangenheit waren Sicherheitsteams für Tests und Freigaben häufig alleine verantwortlich, was zwangsläufig in einem iterativen Vorgehensmodell endete und die Prozesse zumeist komplex, kostspielig und langwierig machte. Tests wurden in der Regel in letzter Minute durchgeführt, kurz bevor der Code für die Produktion freigegeben wurde - oder noch schlimmer, nachdem die App bereits freigegeben wurde.

Aufgrund zu optimistischer Planung und hohem Termindruck wurden vereinzelt gar Releases ohne jegliche Korrekturen produktiv geschaltet - manchmal mit verheerenden Folgen. Auf der einen Seite war die Erkennung und Behebung sicherheitsrelevanter Probleme im späten Entwicklungsprozess eine große Kostenbelastung. Auf der anderen Seite, wenn im Nachhinein Probleme auftauchten, erwiesen sich die vermeintlichen Einsparungen als Milchmädchenrechnung.

Im digitalen Zeitalter ist für all dies kein Platz mehr. Die Verfahren und Wasserfall-Methodik von damals gelten inzwischen als überholt und nicht mehr zeitgemäß. Um ein Höchstmaß an Agilität zu ermöglichen, werden Sicherheitstests nun von Anbeginn einbezogen und kontinuierlich fortgesetzt. Eine Vielzahl von Organisationen verwenden heute bereits sogenannte Application-Securitys-Frameworks, die bestimmte Tests in den verschiedenen Entwicklungsstadien erfordern. Durch diesen effektiven Ansatz können Risiken erheblich gemindert und letztendlich wesentlich besseren Ergebnisse in der Softwareentwicklung erzielt werden.

Jedoch wächst die Anzahl der Anwendungen exponentiell und die Entwicklungszyklen beschleunigen sich rasant. In Folge dessen haben einige Organisationen Schwierigkeiten, mit der Nachfrage nach gründlichen, konsistenten und rechtzeitigen Tests Schritt zu halten. Für einige fühlt es sich in der Tat an wie für den Hamster im Laufrad, welches sich immer schneller und schneller dreht. Die Sicherheitsleute scheinen notorisch unterbesetzt zu sein, was die Skalierung von Unternehmungen erheblich erschwert.

Engere Zusammenarbeit erforderlich

DevSecOps schafft Abhilfe, jedoch bringt der Paradigmenwechsel eine Reihe von Implikationen mit sich. Nicht nur die Rolle der Sicherheitsexperten wird neu definiert, auch kulturelle Veränderungen stehen ganz oben auf der Agenda. In der Hinsicht stellt DevSecOps tendenziell eine größere Veränderung für die Sicherheitsteams dar als für Dev- oder Ops-Teams. Ob sie es wollen oder nicht, der Wandel ist weitreichend und unerlässlich. Statt Schubladendenke und Fingerzeig sitzen alle Beteiligte nun gleichermaßen im selben Boot. Sicherheit zu gewährleisten wird zur Mannschaftssportart und ist gemeinsame Aufgabe und Verantwortung eines jeden Protagonisten im Team.

Im Gegenzug bedarf es dem offenen Umgang und der größerer Empathie für die Aufgaben und Herausforderungen des Gegenübers - auch gegenüber all denen, die in der Vergangenheit kontroverse Meinungen vertraten. So ist es beispielsweise nicht mehr möglich, umfangreiche Sicherheitsanforderungen an die Entwicklungsteams zu stellen, ohne deren Auslastung und Prioritäten zu kennen. Sicherheitsteams und Entwicklung müssen eine viel engere Abstimmung und Zusammenarbeit anstreben, was bedingt den Standpunkt und die Herausforderungen des anderen viel differenzierter zu verstehen. Die Zeiten, in denen Entwicklern auf dem Weg in die Teeküche einfach eine lange To-Do-Liste mit sicherheitsrelevanten Fehlern kommentarlos in die Hand gedrückt wurde, sind vorbei.

Von kontrollbasierter zu kontextbasierter Sicherheit

Die IT-Landschaft ist im Aufbruch und durchläuft deutliche Veränderungen. Häufig ist inzwischen von der Konsumerisierung der IT die Rede. Cloud-Technologie und Mobile Computing radieren teilweise Netzwerkperimeter aus, die zuvor streng kontrolliert wurden. Aufgrund der Erosion eines ehemals gut definierten Bereichs in der IT-Landschaft müssen sich herkömmliche kontrollbasierte Sicherheitslösungen wie Hardware-Firewalls zu kontextbasierten Lösungen weiterentwickeln. Wesentliche Fragestellung ist dabei ob die Applikation beispielsweise sensitive Daten verarbeitet und speichert, und wenn ja, welche. Ebenso kommt es darauf an, ob die Applikation ausschließlich intern genutzt wird oder auch von externen Dritten und mit welchen sonstigen Systemen diese interagiert.

"Dies ist ein weiterer Bereich, in dem die Kultur von DevSecOps von großer Hilfe sein kann", sagt Mike D. Kail (@mdkail), Mitbegründer und Chief Technology Officer von Cybric, einem Anbieter einer Security-as-a-Service Plattform. "Es braucht die enge Zusammenarbeit zwischen Sicherheitsexperten und Anwendungsentwicklern, um die zuvor skizzierten Zusammenhänge vollständig zu verstehen und dann Maßnahmen zu automatisieren um die Verbesserung kontinuierlich zu messen."

Zusammenfassung

DevSecOps hat das Potenzial die Zukunft der App-Wirtschaft maßgeblich und disruptiv zu verändern. Die Implementierung und Anwendung wird die Art und Weise ändern, in der die Menschen ihre Arbeit verrichten und in Teilen neue Stellenbeschreibungen zur Konsequenz haben. Insbesondere bei den sicherheitsrelevanten Aufgaben im Entwicklungsprozess sind die Veränderungen weitreichend. Gleichwohl ist dies etwas Positives und ein vielleicht längst überfälliger Schritt.

DevSecOps liefert nicht nur die Steilvorlage, die Resistenz von Anwendungen auf eine völlig neue Ebene zu hieven, es bietet die Chance deutlich an Schlagkraft zuzulegen. Im Umkehrschluss bietet es auch den Sicherheitsexperten die Gelegenheit sich Aktivitäten zu widmen, die einen noch größeren Mehrwert im Unternehmen schaffen - so z.B. in der Beratung oder im Coaching hinsichtlich der Absicherung digitaler Geschäftsmodelle. Wichtig ist, sich nicht nur auf den Wandel vorzubereiten sondern diesen aktiv zu gestalten, um gestärkt emporzusteigen und mit Rückenwind Wettbewerbsvorteile daraus zu ziehen.