Kontinuierliche Anwendungssicherheit für DevOps

Unternehmen, die einen schnelleren Innovationszyklus anstreben, müssen über den Tellerrand ihrer herkömmlichen Tools hinausgehen. Denn diese schränken oft die funktionsübergreifende Zusammenarbeit und Automatisierung ein. Eine (bessere) Abstimmung der Sicherheits- und DevOps-Prozesse bietet eine hervorragende Gelegenheit, Optimierungspotenzial zu realisieren.

So sollten Prozesse zum Auffinden und Beheben von Sicherheitslücken in Anwendungen mit den agilen DevOps-Prozessen zur Erstellung und Bereitstellung der Software einhergehen. Denn einen reibungslosen Sicherheitsprozess für Anwendungen in einer DevOps-Umgebung zu gewährleisten, ist schwierig, wenn die beiden Prozesse und Tools nicht zusammenarbeiten.

Anzeige

DevOps-Funktionen konzentrieren sich bisher tendenziell auf die Automatisierung, um kontinuierliche Workflows zu erstellen, die die Innovationsfähigkeit des Unternehmens verbessern. Infolgedessen haben eine Reihe verschiedener Start-ups und etablierter Anbieter neue Produkte auf den Markt gebracht, die diesem Bedarf gerecht werden. Leider konzentrieren sich diese neuen Tools auf bestimmte Segmente des Workflows, wie z. B. Ticket- und Issue-Tracking und kontinuierliche Integration. Diese Fragmentierung erfordert eine Vielzahl von APIs und Schnittstellen, die die Segmente zu einer DevOps-Toolchain verbinden und den gesamten Softwareentwicklungszyklus (Software Development Life Cycle, SDLC) abdecken.

Verbesserte Effektivität des DevOps-Sicherheitsprogramms

Die Integration dieser neuen Sicherheitstools in eine bereits komplexe DevOps-Toolkette führt zu einem ganzen Geflecht an Benutzeroberflächen, Workflow-Silos und unzusammenhängenden Daten. Die kommerzielle Ausrichtung von Unternehmen, die Sicherheits-Tools anbieten, verschärft dieses Komplexitätsproblem zusätzlich: Viele haben ihre Portfolios durch Akquisition von Know-how aufgebaut und vermarkten diese neuen Technologien weiterhin einzeln oder als Dashboard-Produkte. Infolgedessen ist bei vielen Produkten noch Luft nach oben, wenn es gilt, die Effektivität des DevOps-Sicherheitsprogramms zu verbessern.

Kunden, die unter dem Druck stehen, Innovationen schneller liefern zu müssen, benötigen eine sinnvolle Alternative, um das ganze Spektrum von Sicherheits- und DevOps-Tools zu bewältigen. Aber lässt sich Sicherheit überhaupt – ähnlich wie bei Entwicklungsprozess – mit einem iterativen Ansatz verfolgen?

Um diese Angleichung zu erreichen, sind Tests zur Anwendungssicherheit, sogenannte DevSecOps-Techniken, erforderlich, die in den Workflow und die kontinuierliche Integration (Continuous Integration, CI) eingebettet werden können. Bei einem solchen Ansatz werden Sicherheits-scans bei jedem Code-Commit automatisiert, sodass jede Codeänderung sofort auf Schwachstellen überprüft wird. Jede Änderung wird prompt ausgewertet und dem Entwickler als Teil der bestehenden Workflows zur Verfügung gestellt. Der Vorteil dabei: Er muss nicht bis zum Schluss auf einen monolithischen Sicherheitstest warten. Vielmehr können Entwickler die Auswirkungen ihrer eigenen Änderungen leicht erkennen, ohne dabei durch die von Kollegen eingeführten Schwachstellen behindert zu werden.

Diese eindeutige und iterative Sicherheitsüberprüfung ermöglicht auch eine bessere Nutzung der Teamressourcen. Der Entwickler kann schnell viele Schwachstellen beseitigen und das Sicherheitsteam kann sich stärker auf Mängel konzentrieren, die nicht einfach zu beheben sind. Im günstigsten Fall bedeutet dies, dass die Experten für Anwendungssicherheit mit diesen Schwachstellen überhaupt nicht mehr konfrontiert werden, da sie bereits vom Entwickler identifiziert und behoben wurden.

Parität zwischen Sicherheitskorrekturen und Bugfixes

Durch das Aufbrechen von Tool“silos“ wird eine funktionsübergreifende Zusammenarbeit zwischen Entwicklungs- und Sicherheitsteams erreicht: Jedes Team betrachtet die gleichen Daten im jeweilig relevanten Kontext. Dabei erreichen Sicherheitskorrekturen eine Parität mit Bugfixes, da sie nicht länger durch fragmentierte Systeme behindert werden.

Dieser Ansatz hat weitreichende Vorteile:

  • Das Scannen der Anwendungssicherheit wird parallel zur Entwicklung iterativ
  • Sicherheitslücken werden bereits zum Einführungszeitpunkt erkannt
  • Die Verantwortlichkeiten sind eindeutig: Wer hat wo Schwachstellen eingeführt – mit eindeutiger Ursache und Wirkung
  • Entwickler können Schwachstellen mit weniger Nacharbeit und ohne Kontextwechsel beheben
  • Durch die Automatisierung können Fehler behoben werden, indem anfällige Codebibliotheken durch sicherere Patches ersetzt werden, während sich der Code noch in der Hand des Entwicklers befindet
  • Reduziertes Tracking / Triaging mit höherer Produktivität für Entwickler und Sicherheit

Die Effizienzsteigerung ist ein sehr effektiver Weg für ein Programm zur Anwendungssicherheit, um mehr Anwendungen im DevOps-Portfolio zu skalieren und zu bewerten. Während das Entwicklerteam die richtigen Mitarbeiter und Prozesse einbeziehen muss, ist ein Tool, das neue Sicherheitsprozesse ermöglicht, ein sinnvoller Ausgangspunkt.

Eine einzige Anwendung für den gesamten DevOps-Lebenszyklus ist eine Möglichkeit, Tests zur Anwendungssicherheit anzubieten, die in den CI-Prozess eingebettet sind. Mithilfe dieses neuen Ansatzes beheben Application Security Testing-Programme einzelne Sicherheitsschwachstellen schon während der Entwicklung, anstatt die kompletten Sicherheitslücken vor der Produktion zu ermitteln. Sogenannte Catch-All-Scan-Prozesse sind zwar in der Lage mehrere Tausend Sicherheitslücken aufdecken, können aber auch zu großen Herausforderungen führen, z. B. wenn das Sicherheitsteam die Aufgaben im Behebungsplan priorisieren muss, das Entwicklungsteam jedoch durch das Ausmaß der erforderlichen Nacharbeit demotiviert wird.

Damit gelingt es Unternehmen, ihre Sicherheits- und DevOps-Prozesse aufeinander abstimmen und gleichzeitig ihre Innovationsfähigkeit steigern. Indem sie über das Netz komplexer Tools hinausblicken, die die funktionsübergreifende Zusammenarbeit und Automatisierung derzeit noch einschränken, wird ihnen eine kontinuierliche Anwendungssicherheit besser gelingen.
 

Blake Cindy

GitLab -

Senior Security Evangelist

Cindy Blake arbeitet mit Großunternehmen zusammen, um Best Practices für integrierte DevSecOps Anwendungssicherheitslösungen zu entwickeln. 
Anzeige

Weitere Artikel

Newsletter
Newsletter Box

Mit Klick auf den Button "Jetzt Anmelden" stimme ich der Datenschutzerklärung zu.