Integration von Sicherheitsaspekten

Was ist DevSecOps?

DevSecOps

Sicherheit von Anfang an im Software-Entwicklungszyklus verankern. DevSecOps integriert automatisierte Kontrollen direkt in die CI/CD-Pipeline.

Die Geschwindigkeit, mit der Unternehmen neue Softwareanwendungen und digitale Funktionen auf den Markt bringen müssen, hat sich in den vergangenen Jahren massiv beschleunigt. Um diesen Anforderungen gerecht zu werden, etablierte sich das DevOps-Modell, welches die traditionell getrennten Bereiche der Softwareentwicklung (Development) und des IT-Betriebs (Operations) miteinander verschmolz. Durch automatisierte Prozesse wurden Bereitstellungszyklen von Monaten auf Tage oder gar Stunden verkürzt. Diese enorme Beschleunigung offenbarte jedoch eine gravierende Schwachstelle: Die IT-Sicherheit hielt mit dem Tempo nicht Schritt.

Anzeige

Klassische Sicherheitsüberprüfungen fanden oft erst ganz am Ende des Entwicklungszyklus statt, kurz vor dem geplanten Produktionsstart. Entdeckten Sicherheitsanalysten zu diesem späten Zeitpunkt kritische Schwachstellen, führte dies entweder zu kostspieligen Verzögerungen oder die Software ging mit unkalkulierbaren Risiken live. DevSecOps löst diesen strukturellen Konflikt auf. Es bezeichnet ein erweitertes Organisations- und Kulturmodell, das Sicherheitsaspekte (Security) von der ersten Planungsphase an und über den gesamten Lebenszyklus hinweg nahtlos in die DevOps-Pipeline integriert.

DevSecOps: Sicherheit ist geteilte Verantwortung

Das National Institute of Standards and Technology definiert DevSecOps in seinen technischen Leitfäden als die systematische Integration von Sicherheitsaspekten in den DevOps-Lebenszyklus. Die genauen Architekturmodelle und Empfehlungen für sichere Software-Lieferketten sind in den offiziellen Dokumenten der Institution einsehbar. Das primäre Ziel des Ansatzes ist es, Sicherheit nicht mehr als nachgelagerte Kontrollinstanz oder als isoliertes Silo zu behandeln, sondern als integralen und kontinuierlichen Bestandteil des gesamten Software-Engineering-Prozesses zu verankern.

Im Kern von DevSecOps steht die Erkenntnis, dass Sicherheit eine geteilte Verantwortung aller am Softwareprozess beteiligten Teams ist. Entwickler schreiben Code unter Berücksichtigung von Sicherheitsstandards, während automatisierte Werkzeuge in der Bereitstellungspipeline kontinuierlich auf Schwachstellen prüfen. Die manuelle Überprüfung durch externe Auditoren wird durch programmatische Kontrollen ersetzt, die direkt im Code und in den Build-Systemen verankert sind. Dadurch wird verhindert, dass Sicherheit als Bremsschuh der Innovation wahrgenommen wird.

Anzeige

Die fünf Säulen der automatisierten Sicherheitsüberprüfung

Eine funktionierende DevSecOps-Infrastruktur stützt sich im Wesentlichen auf fünf technologische Prüfverfahren, die vollautomatisch innerhalb der Continuous Integration und Continuous Deployment Pipeline ablaufen.

Die erste Säule ist das Static Application Security Testing, abgekürzt SAST. Bei diesem Verfahren analysieren automatisierte Scanner den Quellcode der Anwendung im Ruhezustand, noch während der Entwickler den Code in das zentrale Repository einpflegt. Das System sucht nach bekannten Mustern von Programmierfehlern, wie zum Beispiel SQL-Injektionen, unverschlüsselten Passwörtern im Code oder Schwachstellen bei der Pufferverwaltung. Da diese Analyse stattfindet, bevor die Software kompiliert oder ausgeführt wird, erhält der Entwickler unmittelbares Feedback in seiner Arbeitsumgebung.

Die zweite Säule bildet die Software Composition Analysis, kurz SCA. Moderne Anwendungen bestehen zu einem großen Teil aus Open-Source-Bibliotheken und Drittanbieter-Komponenten. SCA-Werkzeuge scannen diese externen Abhängigkeiten und gleichen sie mit globalen Sicherheitsdatenbanken ab. Das System schlägt Alarm, wenn eine im Projekt verwendete Bibliothek eine bekannte Sicherheitslücke aufweist oder wenn die Lizenzbedingungen der Open-Source-Komponente im Widerspruch zu den kommerziellen Nutzungsrechten des Unternehmens stehen.

Die dritte Säule ist das Dynamic Application Security Testing, abgekürzt DAST. Im Gegensatz zu SAST prüft DAST die Anwendung im laufenden Betrieb innerhalb einer Testumgebung. Das Werkzeug simuliert Angriffe von außen, testet Schnittstellen auf unbefugten Datenabfluss und prüft, ob die Konfiguration des Webservers Sicherheitsmängel aufweist. DAST findet Fehler, die im reinen Quellcode oft nicht sichtbar sind, wie etwa fehlerhafte Authentifizierungsabläufe oder Schwachstellen in der Netzwerkanbindung.

Die vierte Säule ist das Infrastructure as Code Scanning, kurz IaC Scanning. Da moderne Cloud-Infrastrukturen zunehmend über Code-Dateien definiert werden, prüfen diese Scanner die Konfigurationsdateien vor der Bereitstellung. Sie erkennen, ob Cloud-Speicher versehentlich öffentlich zugänglich gemacht wurden oder ob Netzwerk-Ports unsicher konfiguriert sind.

Die fünfte Säule ist das Secrets Management und Credential Scanning. Automatisierte Werkzeuge durchsuchen den Code und die Konfigurationsdateien kontinuierlich nach hartcodierten Geheimnissen wie API-Schlüsseln, Passwörtern oder kryptografischen Zertifikaten. Dies verhindert, dass vertrauliche Zugangsdaten versehentlich in öffentliche Repositories hochgeladen werden.

Newsletter
Newsletter Box

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

Das Prinzip des Shift-Left und Shift-Right im Entwicklungszyklus

Ein fundamentaler Leitsatz von DevSecOps ist das Prinzip des Shift-Left. Grafisch betrachtet wandert die Sicherheitsüberprüfung auf der Zeitachse des Entwicklungszyklus von rechts (dem späten Produktionsstart) nach links (den frühen Phasen der Planung und Kodierung). Der wirtschaftliche Nutzen dieses Ansatzes ist mathematisch eindeutig belegt. Die Behebung einer Sicherheitslücke, die erst im produktiven Betrieb unter realer Last entdeckt wird, verursacht ein Vielfaches der Kosten im Vergleich zu einer Korrektur, die direkt während des Schreibens der ersten Codezeile erfolgt. Ein später Fehler erfordert ein erneutes Aufrollen der gesamten Bereitstellungskette, dringende Notfall-Patches und birgt das Risiko von Datenverlusten.

Ergänzt wird dies durch das Prinzip des Shift-Right. Hierbei geht es darum, Sicherheitserkenntnisse aus dem realen Betrieb im Produktionssystem kontinuierlich zu sammeln und an die Entwicklung zurückzuspielen. Über Logging, Monitoring und Runtime Application Self-Protection werden Angriffe im Live-Betrieb erkannt und analysiert. Die gewonnenen Daten fließen direkt in die Planungsphase des nächsten Software-Releases ein, wodurch ein geschlossener Lern- und Optimierungskreislauf entsteht.

Bedrohungserkennung und präventives Design in der Planungsphase

DevSecOps beginnt architektonisch lange vor dem Schreiben der ersten Codezeile. In der initialen Planungsphase eines Softwareprojekts führen die Teams eine strukturierte Bedrohungsanalyse durch, das sogenannte Threat Modeling. Ein weit verbreitetes Modell hierfür ist das STRIDE-Framework, welches potenzielle Risiken in sechs Kategorien unterteilt: Identitätsdiebstahl, Manipulation, Leugnung, Informationsenthüllung, Blockierung von Diensten und Privilegienausweitung.

Durch dieses strukturierte Verfahren identifizieren Entwickler und Sicherheitsingenieure architektonische Schwachstellen im Systemdesign, bevor Implementierungsaufwand entsteht. Es wird beispielsweise festgelegt, wie Daten zwischen verschiedenen Modulen verschlüsselt werden müssen und welche Authentifizierungsmechanismen für die Schnittstellen zwingend erforderlich sind. Dieses präventive Design minimiert das Risiko von strukturellen Fehlern, die sich im Nachgang durch reines Patching kaum noch korrigieren lassen.

Ein struktureller Vergleich der Entwicklungsmodelle

Die folgende Übersicht verdeutlicht den strukturellen Unterschied zwischen der klassischen Softwareentwicklung und dem konvergenten DevSecOps-Modell:

KriteriumTraditionelle SoftwareentwicklungDevSecOps-Modell
Rolle der SicherheitNachgelagerte Kontrolle am Ende des ZyklusKontinuierlicher Bestandteil jeder Phase
TestverfahrenManuelle Audits und PenetrationstestsAutomatisierte Scanner (SAST, DAST, SCA, IaC)
VerantwortlichkeitIsoliertes IT-SicherheitsteamGemeinsame Verantwortung von Dev, Sec und Ops
Reaktionszeit bei FehlernTage bis Wochen (nach dem Audit)Minuten (unmittelbares Pipeline-Feedback)
Umgang mit InfrastrukturManuelle ServerkonfigurationInfrastructure as Code mit Sicherheits-Templates
Feedback-SchleifeReaktiv nach SicherheitsvorfällenProaktiv durch kontinuierliches Monitoring

Organisatorische Herausforderungen und die Rolle der Security Champions

Die Transformation zu einer DevSecOps-Organisation stellt das IT-Management vor konkrete operative Herausforderungen. Das primäre Problem ist die Gefahr von Fehlalarmen, sogenannten False Positives. Wenn die automatisierten Scanner zu sensibel eingestellt sind, blockieren sie die Bereitstellungspipeline wegen vermeintlicher Mängel, die in der spezifischen Systemumgebung gar nicht ausnutzbar sind. Dies führt zu Frustration bei den Entwicklern und kann die Akzeptanz des gesamten Sicherheitsmodells untergraben. Das kontinuierliche Tuning der Scan-Regeln ist daher eine essenzielle Aufgabe.

Um diesen kulturellen Konflikten entgegenzuwirken, etablieren Unternehmen zunehmend das Konzept der Security Champions. Hierbei handelt es sich um reguläre Softwareentwickler aus den jeweiligen Projektteams, die eine zusätzliche Ausbildung im Bereich der IT-Sicherheit erhalten haben. Sie fungieren als direkte Schnittstelle und Botschafter zwischen dem zentralen Sicherheitsteam und der Entwicklung. Sie helfen dabei, Sicherheitsanforderungen direkt im Programmieralltag umzusetzen, bauen Vorurteile ab und sorgen dafür, dass Sicherheitsprüfungen nicht als bürokratische Schikane, sondern als Qualitätsmerkmal verstanden werden.

Container-Sicherheit und Cloud-Native Architekturen

Mit der zunehmenden Verbreitung von containerbasierten Anwendungen und Orchestrierungsplattformen wie Kubernetes erweitern sich die Anforderungen an DevSecOps im Bereich der Cloud-Native-Sicherheit. Container weisen spezifische Risiken auf, da sie Betriebssystem-Ressourcen des Host-Systems teilen. DevSecOps integriert daher spezielle Container Image Scanner in die Pipeline. Diese Werkzeuge prüfen die Basis-Images der Container auf bekannte Schwachstellen, bevor diese in die produktive Registry geladen werden.

Zudem umfasst die Container-Sicherheit die Überprüfung der Konfigurationen zur Laufzeit. Sogenannte Admission Controller in Kubernetes prüfen dynamisch, ob ein Container versucht, mit unzulässigen administrativen Rechten zu starten oder ob Netzwerkrichtlinien verletzt werden. Das Sicherheitsmanagement wird somit direkt in die Steuerungsmechanismen der Cloud-Infrastruktur integriert, was einen kontinuierlichen Schutz der virtualisierten Laufzeitumgebungen garantiert.

Regulatorische Compliance und das Management der Software-Lieferkette

Die lückenlose Implementierung von sicheren Entwicklungsprozessen ist für Unternehmen im aktuellen regulatorischen Umfeld eine zwingende Rechtskonformität. Die europäische NIS2-Richtlinie verpflichtet Organisationen wichtiger und kritischer Sektoren zu einem Risikomanagement, das den Schutz der gesamten Lieferkette umfasst. Ein nachlässiger Umgang mit Software-Abhängigkeiten oder das Fehlen dokumentierter Sicherheitsprüfungen gilt bei offiziellen Audits als schwerwiegender Verstoß.

Ein zentrales Werkzeug zur Erfüllung dieser Auflagen ist die Software Bill of Materials, abgekürzt SBOM. Hierbei handelt es sich um eine formale, maschinenlesbare Stückliste aller in einer Software enthaltenen Komponenten und Bibliotheken. Über DevSecOps-Werkzeuge wird diese SBOM bei jedem Build-Prozess automatisch generiert und aktualisiert. Sie erlaubt es dem Unternehmen, bei neu auftretenden globalen Sicherheitslücken innerhalb von Sekunden zu überprüfen, ob die eigenen Anwendungen betroffen sind.

Das deutsche Bundesamt für Sicherheit in der Informationstechnik stellt im Rahmen des IT-Grundschutzes klare Anforderungen an die Sicherheit von Software-Entwicklungsumgebungen. Die spezifischen Bausteine der Reihe APP regeln detailliert, wie Anwendungen konzipiert, getestet und ausgerollt werden müssen, um den nationalen Sicherheitsstandards zu entsprechen, einsehbar. Auch die Vorgaben der Open Web Application Security Project Allianz, insbesondere die OWASP Top 10, dienen als verbindliche Referenzpunkte für die Ausgestaltung der automatisierten Prüfregeln innerhalb der DevSecOps-Pipeline, dokumentiert.

Fazit

DevSecOps ist keine reine Einführung neuer Softwarewerkzeuge, sondern eine tiefgreifende Evolution der Unternehmenskultur und der technologischen Prozesse. Es bricht die historischen Mauern zwischen Entwicklern, Administratoren und Sicherheitsbeauftragten auf und ersetzt gegenseitiges Misstrauen durch ein automatisiertes, datengetriebenes Vertrauensmodell.

In einer digitalen Wirtschaft, die von rasanten Release-Zyklen und hochdynamischen Bedrohungslagen geprägt ist, stellt die Konvergenz von Entwicklung und Sicherheit die einzig verlässliche Methode dar, um Software agil und gleichzeitig resilient zu produzieren. Wer Sicherheit als integralen Bestandteil der Code-Qualität begreift und automatisiert steuert, schützt die digitalen Vermögenswerte seines Unternehmens nachhaltig und sichert die langfristige Innovationsfähigkeit im globalen Wettbewerb.

Autorenbild Lisa Löw

Lisa

Löw

Junior Online-Redakteurin

IT-Verlag

Anzeige

Artikel zu diesem Thema

Weitere Artikel

Newsletter
Newsletter Box

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