Was ist DevSecOps und wozu wird es verwendet?

Im Bereich der agilen Softwareentwicklung spielt die Sicherheit der Produkte eine immer größere Rolle. In Zeiten von Continuous Delivery und Continuous Integration wird der Entwicklungsprozess allerdings zu einer nicht zu unterschätzenden Herausforderung. Deshalb erweitern immer mehr Unternehmen den DevOps-Ansatz, bei dem Entwicklung (Development) und anschließender Betrieb (Operations) von Anfang an eng ineinander verzahnt sind, um die Komponente Sicherheit (Security): daher das Kürzel DevSecOps. Mit DevSecOps steht eine Lösung für Probleme parat, die in vielen Software-Firmen zum Alltag gehören. Sie berücksichtigt die Ansprüche an Entwicklungsgeschwindigkeit und Sicherheit gleichermaßen.

Was ist DevSecOps?

Mittels DevSecOps lassen sich Agilität und die Möglichkeit zur schnellen Reaktion, wie es der DevOps-Ansatz bietet, optimal nutzen. Denn der Sicherheitsaspekt wird bereits bei der eigentlichen Entwicklung mitberücksichtigt. Damit unterscheidet sich das System deutlich vom herkömmlichen Ansatz, bei dem die Sicherheitsteams meist erst nach Fertigstellung des Produkts für die entsprechende Absicherung sorgen.

Mit der DevSecOps-Methode sollen die hohen Sicherheitsstandards auch bei den schnellen und agilen Entwicklungsmethoden von Continuous Delivery und Continuous Integration gewährleistet werden. Dabei müssen die oftmals sehr hohen Sicherheitsanforderungen bereits bei der Programmierung für den laufenden Betrieb miteinbezogen werden. Eine gute Kommunikation zwischen den Bereichen Sicherheit, Entwicklung und IT-Betrieb ist hierbei von grundlegender Bedeutung. Daher ist der interdisziplinäre Ansatz in diesem Zusammenhang entscheidend für den Erfolg der gesamten Entwicklung.

Warum ist DevSecOps wichtig?

Dem Sicherheitsaspekt wird seit einigen Jahren bei der Softwareentwicklung immer größere Bedeutung beigemessen. Vor allem angesichts der schnelllebigen Entwicklung, die mit immer kürzeren Zeitabständen zwischen verschiedenen Versionen einhergeht, wird das Einhalten der Sicherheitsstandards zunehmend zur Herausforderung. Für viele Unternehmen sogar zu einer unüberwindbaren Herausforderung, wenn der Sicherheitsaspekt erst im Anschluss an die eigentliche Entwicklung bedacht wird. Oft müssen sich Unternehmen zwischen einer hohen Sicherheit mit entsprechendem Zeitaufwand und einer geringen Sicherheit bei kurzen Veröffentlichungszyklen entscheiden. Viele Anbieter entscheiden sich für Letzteres. DevSecOps bietet jedoch eine hervorragende Lösung, um hohe Sicherheit und kurze Veröffentlichungszyklen miteinander zu vereinbaren.

Kunden und Unternehmen profitieren gleichermaßen

Die früheren Lösungen zur Implementierung wichtiger Sicherheitsfeatures und Sicherheitsprotokolle lassen sich nicht mit der neuen und schnelleren Variante der agilen Softwareentwicklung vergleichen. Erst durch die aktive Integration der Sicherheitsaspekte in die Entwicklungsphase der Software und deren Gleichsetzung im Entwicklungsprozess kann die gewünschte Sicherheit auch bei kurzen Entwicklungs- und Produktzyklen gewährleistet werden. Allerdings verfolgen noch längst nicht alle Unternehmen diesen Ansatz. Dies lässt sich unschwer daran erkennen, dass bei einigen Produkten aufgrund der verkürzten Versionszyklen die Sicherheit deutlich nachgelassen hat und die verschiedenen Sicherheitslücken oftmals nur notdürftig durch „Day One Patches“ geschlossen werden.

Wer auf ein hohes Maß an Sicherheit setzen möchte, muss also entweder die bisherige lange Entwicklungszeit in Kauf nehmen oder auf DevSecOps als Lösung setzen, um das gewünschte Ergebnis zu erzielen.

DevSecOps konkret: Ein Beispiel

Erklären wir die Zusammenhänge einmal an einem praktischen Beispiel aus dem Alltag eines Privatanwenders. Die App in unserem Beispiel ist ein Haushaltsbuch, das direkt über das Smartphone verwaltet werden kann. In der App lassen sich Einnahmen und Ausgaben erfassen, kategorisieren und farblich unterschiedlich darstellen und auswerten. Da hierbei aktuell nur wenig sensible Daten genutzt werden, gibt es im Bereich Sicherheit nicht viel zu beachten.

Nun wird die App um eine Funktion erweitert, mit welcher Kassenbons eingescannt und automatisch erfasst werden können. Da hierbei viele Daten erfasst und auf Servern ausgewertet werden müssen, spielt die Sicherheit bei der Kommunikation und der Verarbeitung eine wichtige Rolle. Wird der Sicherheitsaspekt erst im Nachhinein berücksichtigt, dauert es ein halbes Jahr, bis die Funktion sicher veröffentlicht werden kann.

Nun soll eine weitere Funktion eingefügt werden: Ausgaben sollen sich per Onlinebanking direkt in das System integrieren lassen. Hierbei werden höchst sensible Daten verarbeitet, sodass die Integration einer solchen Lösung bei höchsten Sicherheitsstandards eventuell über ein Jahr dauern kann. Zu diesem Zeitpunkt hätte die Konkurrenz längst an Boden gewonnen und das eigene Produkt wäre am Markt höchstwahrscheinlich nicht mehr interessant.

Wird jedoch mittels DevSecOps der Sicherheitsaspekt bei der Programmierung und Entwicklung direkt mitberücksichtigt, kann die Zeit bis zur Veröffentlichung ohne Abstriche hinsichtlich der Sicherheit enorm verkürzt werden. Oft wird die Sicherheit dadurch sogar noch verbessert, da diese direkt in die Programmierung integriert werden kann und nicht als Sicherheitskit über eine schon bestehende Programmierung gestülpt wird. Das Unternehmen profitiert also von kürzeren Versionszyklen und die Nutzer von der beständigen Aktualisierung der Software.

Vorteile von DevSecOps in der Entwicklung

Die Vorteile von DevSecOps liegen klar auf der Hand. Wenn sich ein Unternehmen aufgrund der steigenden Nachfrage und der hohen Anforderungen dazu entschließt, die Entwicklung der eigenen Produkte mit dem modernen DevOps-System durchzuführen, erreicht es oftmals ungeahnt hohe Geschwindigkeiten bei der Produktion und der Veröffentlichung verschiedener Versionen der eigenen Software. Allerdings bleibt bei diesem Prozess die Sicherheit auf der Strecke. Wird diese, wie sonst üblich, erst am Ende in das fertige Produkt integriert, kann es nicht nur zu Problemen im Bereich der Funktionalität kommen, auch die Auslieferung kann sich spürbar verzögern.

Wird der Sicherheitsaspekt nun bereits im laufenden Entwicklungsprozess berücksichtigt, sieht dies ganz anders aus: Der Prozess verlangsamt sich kaum, da auch der Sicherheitsbereich von den verschiedenen Monitoring-Lösungen und der Automatisierung profitiert. Zudem lernen die verschiedenen Teams aus Entwicklung und Betrieb die sicherheitsrelevanten Faktoren bereits bei der Entwicklung zu berücksichtigen, sodass von Anfang an deutlich weniger Sicherheitslücken entstehen. Es werden also sichere und dennoch stabile Software-Varianten in kürzerer Zeit produziert, die direkt an die Kunden ausgeliefert werden können. Somit profitieren sowohl Kunden als auch Unternehmen von den neuen Möglichkeiten.

Nachteile und Schwierigkeiten bei DevSecOps

Genau wir bei DevOps ist auch bei DevSecOps der Erfolg des Systems und dessen Effizienz davon abhängig, wie gut die einzelnen Mitarbeiter und Teams die neue Entwicklung mittragen. Denn ohne die damit verbundene offene Unternehmenskultur und ohne den Austausch zwischen Teams und Abteilungen kann auch das Konzept DevSecOps nicht erfolgreich funktionieren. Aus diesem Grund ist es wichtig, die Vorteile des neuen Systems nicht nur offen zu kommunizieren, sondern auch die Änderungen gut mit den Abteilungen und Mitarbeitern abzustimmen.

Wehren sich einzelne Mitarbeiter gegen das System, beispielsweise gegen die Integration der Sicherheitsexperten in den eigentlichen Entwicklungsprozess, kann es zu erheblichen Schwierigkeiten kommen.

Fazit: Eine geschickte DevSecOps-Integration bietet viele Vorteile

Die Integration von wichtigen Sicherheitsfeatures ist im Bereich der Softwareentwicklung und im direkten IT-Betrieb von enormer Bedeutung. Werden notwendige Sicherheitsvorkehrungen erst im Anschluss an die eigentliche Entwicklung berücksichtigt, kommt es nicht nur zu sehr langen Verzögerungen, es können sich auch Fehler einschleichen, die keinem umfassenden Revisionsprozess mehr unterzogen werden. Wird der Sicherheitsaspekt hingegen durch DevSecOps direkt in die Entwicklung von Software, Software-Updates und -Versionen integriert, verkürzt sich die Dauer von Sicherheitsmaßnahmen merklich. Zudem verbessert sich die Qualität aufgrund der automatisierten Kontrollen spürbar. Daher profitieren Unternehmen besonders davon, wenn nicht nur DevOps im Unternehmen angewendet wird, sondern mit DevSecOps zusätzlich der Bereich der Daten- und Softwaresicherheit direkt in den Entwicklungsprozess integriert wird.

Interessieren Sie sich für Weiterbildungen im Bereich DevSecOps? Dann sprechen Sie uns einfach an!

Kommentare

This post is great, thank you for sharing. <a href="https://www.bcaa.uk/devsecops.html">Certified DevSecOps Professional Training </a>.

Kommentar schreiben

* Diese Felder sind erforderlich