Das DevOps-Prinzip hat sich für IT-Projekte als enorm wertvoll erwiesen: Entwickler und Administratoren brechen Wissenssilos auf und schaffen es mit den entsprechenden Methoden, die Zusammenarbeit zu verbessern. Wie DevOps-Teams nun auch den Sicherheitsaspekt integrieren und DevSecOps erfolgreich in die Praxis umsetzen, zeigt der IT-Dienstleister Consol anhand von vier goldenen Regeln. [...]
Das Kunstwort DevOps setzt sich aus den Begriffen Development (Entwicklung) und Operations (IT-Betrieb) zusammen und bedeutet mehr als nur lose Kollaboration zwischen Codern und den Herrschern der IT-Systeme – im Gegenteil: DevOps steht für die Verschmelzung beider Bereiche zu einem gemeinsamen, holistischen Arbeitsbereich.
Da der Sicherheitsaspekt in den vergangenen Jahren allerdings immer mehr an Bedeutung gewonnen hat, sollten DevOps-Teams auch Security tief und von Beginn an in den Softwareentwicklungs- und -auslieferungsprozess integrieren. Die folgenden vier Best Practices sind in diesem Zusammenhang essenziell:
1. Expertise und Sensibilität für Sicherheit aufbauen
Je später DevOps-Teams einen Fehler im Entwicklungs- und Auslieferungsprozess erkennen, desto teurer wird dessen Behebung und desto weitreichender sind die möglichen Sicherheitsfolgen. Daher ist es für DevOps-Teams extrem wichtig, möglichst frühzeitig ausreichende Maßnahmen für die Fehlererkennung zu ergreifen.
Um diesen Ansatz in die Praxis umzusetzen, lehrt das DevSecOps-Prinzip, frühzeitig ein Bewusstsein für IT-Sicherheit im Team zu schaffen. Gleichzeitig müssen die Mitglieder Verantwortung für die Sicherheit ihres Produktes übernehmen und sich ihr ebenso verschreiben wie der einwandfreien Funktionalität ihrer Software.
Auch bei der Planung der Architektur für das spätere Produkt sollten Sicherheitsaspekte bereits eine Rolle spielen. All das setzt, wie auch beim traditionellen DevOps-Gedanken, einen kulturellen Wandel im gesamten Unternehmen voraus.
2. Konsequente Integration automatisierter Sicherheitsverfahren
Neben dem eher menschlichen Aspekt eines Umdenkens bei der Planung und Durchführung von Softwareprojekten, gibt es natürlich auch einen technischen und prozessualen Aspekt. DevSecOps-Teams sollten in allen Phasen des Entwicklungs- und CI/CD-Zyklus automatisierte Sicherheitsverfahren integrieren. Nur so können sie menschliche Fehler, die leider immer wieder passieren, vermeiden. Auch der Einsatz von Tools für die Quellcodeanalyse ist, neben automatisierten Tests, sinnvoll.
3. Risiken in der Softwarelieferkette identifizieren
Manchmal sind die größten Sicherheitsrisiken weder im Bereich Softwareentwicklung noch in der Auslieferung der fertigen Produkte zu finden, sondern in den verwendeten Bibliotheken. DevSecOps-Teams sollten daher die entsprechenden Frameworks, Tools und Libraries auf Bugs sowie Sicherheitslücken untersuchen – bestenfalls lassen sie das entsprechende Werkzeuge zur regelmäßigen Dependency-Analyse automatisch erledigen.
Blackduck, Syft, Docker SBOM, Grype, Dependency-Check von OWASP sind nur einige wenige der bekannten Tools für diese Aufgabe. Besonders sinnvoll ist es, auf entsprechende Scanner zu setzen, die die verwendete Programmiersprache nativ unterstützen.
Außerdem sollten DevSecOps-Teams die Tools fest in die Continuous-Integration-/Continuous-Delivery-Pipeline integrieren. So stellen sie sicher, dass die Analysen auch wirklich regelmäßig stattfinden und die Ergebnisse immer aktuell sind.
4. Team-Mitglieder weiterbilden
Zu guter Letzt sollten DevSecOps-Teams kontinuierlich ihre Sicherheitsexpertise steigern und ihre Sinne schärfen. Das beginnt mit regelmäßigen Security-Trainings, in denen sie sich über aktuelle Bedrohungen und entsprechende Maßnahmen weiterbilden.
Außerdem sollten sie sich von Expertinnen und Experten auf dem Gebiet in Schulungen über Best Practices in Sachen IT-Sicherheit aufklären lassen und ihre Prozesse auf den Prüfstand stellen. Oft sind nämlich auch eingefahrene und starre Workflows Gift für den Lebenszyklus einer Software. Und auch die anhaltende Recherche zu aktuellen Sicherheitsvorfällen und typischen Fallstricken bei deren Behebung sollte zum kleinen Einmaleins von DevSecOps-Teams gehören.
„Wie auch bei DevOps ist der Erfolg von DevSecOps maßgeblich von den Methoden und dem spezifischen Fachwissen der Teammitglieder abhängig“, erklärt Dr. Christoph Ehlers, Leiter DevOps bei Consol. „Zwar gibt es wichtige Tools, die den sicheren Software-Delivery-Prozess unterstützen, ultimativ ist DevSecOps aber eben vor allem eine Frage der richtigen Arbeits- und Unternehmenskultur.“
Dr. Christoph Ehlers ist Leiter DevOps beim IT-Dienstleiter Consol. (Quelle: Consol)
Be the first to comment