..

DevSecOps

DevSecOps ist eine Erweiterung von DevOps, um die Integration von Sicherheitspraktiken in den DevOps-Ansatz zu ermöglichen. Im Gegensatz zu einem traditionellen zentralisierten Sicherheitsteammodell kann jedes Entwicklungsteam die richtigen Sicherheitskontrollen in seine Softwarebereitstellung einbeziehen. Sicherheitspraktiken und Tests werden früher im Entwicklungslebenszyklus durchgeführt, daher kann der Begriff Shifting Security Left verwendet werden. Sicherheit wird in drei Hauptbereichen getestet:

  • statisch Tests,
  • Software-Komponenten und
  • dynamisch Tests.

Die statische Überprüfung des Codes über statisches Application Security Testing (SAST) ist ein White-Box-Test mit besonderem Fokus auf Sicherheit. Je nach Programmiersprache werden unterschiedliche Tools benötigt, um eine solche statische Codeanalyse durchzuführen. Die Software-Komponenten werden analysiert, insbesondere werden Bibliotheken und deren Versionen mit Schwachstellenlisten verglichen, die von CERT und anderen Expertengruppen veröffentlicht wurden. Bei der Weitergabe von Software an Kunden stehen Lizenzen und deren Übereinstimmung mit der vertriebenen Software im Fokus, insbesondere Copyleft-Lizenzen.

Dynamisches Testen wird oft auch als Black-Box-Testing bezeichnet. Die Software wird getestet, ohne ihre inneren Funktionen zu kennen. In DevSecOps wird es einerseits dynamisch (DAST) oder Penetration Testing genannt. Ziel ist es, unter anderem Fehler wie Cross-Site-Scripting oder SQL-Injection frühzeitig zu erkennen. Bedrohungstypen werden beispielsweise vom Open Web Application Security Project (OWASP) veröffentlicht, z.B. seine TOP10. Andererseits ist gerade bei Microservices Interactive Application Testing (IAST) hilfreich, um zu überprüfen, welcher Code beim Ausführen automatisierter Funktionstests ausgeführt wird, der Fokus liegt auf der Erkennung von Schwachstellen innerhalb der Anwendungen. Im Gegensatz zu SAST und DAST arbeitet IAST innerhalb der Anwendung.

Ähnlich wie bei IAST wird Runtime Application Self-Protection (RASP) innerhalb der Anwendung ausgeführt. Seine Instrumentierung konzentriert sich darauf, Angriffe nicht in Testzyklen, sondern während der produktiven Laufzeit zu erkennen. Angriffe können entweder über Überwachung und Alarmierung gemeldet oder aktiv blockiert werden. RASP-Warnungen unterstützen das Sicherheitsinformations- und Ereignismanagement (SIEM).


  1. Wikipedia: DevSecOps, Shifting Security Left
  2. DSOMM: OWASP Devsecops Maturity Model