← Zurück zu den Papers

Paper Files / DevSecOps

Threat-Driven DevSecOps: Formal Architecture for Integrating SAST, DAST, SCA, and MITRE ATT&CK-Based Behavioral Telemetry in CI/CD Pipelines

DevSecOpsDE

TITLE: Threat-Driven DevSecOps: Formal Architecture for Integrating SAST, DAST, SCA, and MITRE ATT&CK-Based Behavioral Telemetry in CI/CD Pipelines ABSTRACT: Die massive Einführung cloud-nativer Architekturen und von Pipelines für kontinuierliche Integration und kontinuierliche Auslieferung (CI/CD) hat die Softwareentwicklungsprozesse tiefgreifend verändert. Allerdings vergrößert diese Automatisierung die Angriffsfläche erheblich, wenn Sicherheitsmechanismen nicht systematisch in den Entwicklungslebenszyklus eingebettet werden. Viel dokumentierte Vorfälle, wie die Kompromittierung der Lieferkette von SolarWinds und die Ausnutzung der Schwachstelle CVE-2021-44228 (Log4Shell), zeigen, dass Defizite bei der Integration von Code-, Abhängigkeits- und Laufzeitüberwachung Sicherheitsverletzungen in großem Umfang ermöglichen können. Obwohl Werkzeuge zur statischen Analyse (SAST), dynamischen Analyse (DAST) und Software Composition Analysis (SCA) in DevSecOps-Pipelines weit verbreitet sind, führt ihr isolierter Einsatz häufig zu hohen Mengen an Warnmeldungen und erschwert die Priorisierung auf Basis des tatsächlichen Risikos. In dieser Arbeit schlagen wir eine threat-driven DevSecOps-Architektur vor, die Ergebnisse von Sicherheitsscannern mit Verhaltens-Telemetrie und systematischer Zuordnung zum MITRE ATT&CK-Framework integriert. Wir formalisieren mathematisch die Berechnung des Residualrisikos in CI/CD-Pipelines durch die Kombination von Schweregradmetriken (CVSS), im Laufzeitbetrieb beobachteten Exploitationshinweisen und kontextueller Kritikalität der Anwendung. Wir führen einen adaptiven Priorisierungsalgorithmus ein, der in statischen Phasen erkannte Schwachstellen mit Verhaltensindikatoren aus Detektions- und Observability-Systemen wie Falco und Suricata korreliert. Wir implementierten die vorgeschlagene Architektur in einer Unternehmensumgebung auf Basis von GitLab CI/CD, Kubernetes und weit verbreiteten Tools für Anwendungssicherheit, darunter Semgrep, SonarQube, Trivy, Checkov und OWASP ZAP. Wir evaluierten den Ansatz empirisch in 120 Pipelines mit 48 Microservices und etwa 3,2 Millionen Codezeilen über einen Zeitraum von sechs Monaten. Die Ergebnisse zeigen eine signifikante Reduktion der mittleren Erkennungszeit (MTTD), der mittleren Behebungszeit (MTTR) und der Anzahl kritischer Schwachstellen in der Produktion. Außerdem beobachteten wir eine deutliche Verringerung der Fehlalarmrate, როდესაც die Priorisierung durch Verhaltens-Telemetrie und Threat Intelligence gesteuert wird. Diese Ergebnisse zeigen, dass die systematische Korrelation von Codeanalyse, Sicherheit der Lieferkette und auf MITRE ATT&CK basierender Verhaltensdetektion das operationelle Risiko in modernen CI/CD-Pipelines messbar reduzieren kann.

  1. Einleitung

Die in der letzten Dekade intensivierte digitale Transformation hat Organisationen dazu veranlasst, verteilte Architekturen, Microservices sowie Praktiken der kontinuierlichen Integration und kontinuierlichen Bereitstellung zu अपनieren. In modernen Entwicklungsumgebungen automatisieren CI/CD-Pipelines Prozesse für Build, Test und Deployment und ermöglichen dadurch deutlich kürzere Lieferzyklen (KIM et al., 2016). Obwohl diese Automatisierung die Produktivität und die operationale Zuverlässigkeit erhöht, vergrößert sie auch die Angriffsfläche, wenn Sicherheitskontrollen nicht nativ in die Pipeline integriert werden.

Breit dokumentierte Sicherheitsvorfälle zeigen die Risiken auf, die mit dem Fehlen integrierter Sicherheit im Entwicklungszyklus verbunden sind. Die Schwachstelle CVE‑2021‑44228, bekannt als Log4Shell, ermöglichte Remote Code Execution in weit verbreiteten Java-Anwendungen und betraf Software-Lieferketten in globalem Maßstab (NIST, 2021). In ähnlicher Weise demonstrierte die Kompromittierung der SolarWinds-Lieferkette, dass Angreifer bösartigen Code direkt in den Build- und Distributionsprozess von Software einschleusen können (CISA, 2021).

Zeitgenössische Angriffe folgen häufig Verhaltensmustern, die in Wissensbasen wie MITRE ATT&CK systematisiert sind; dort werden Techniken beschrieben, die von Angreifern während unterschiedlicher Phasen eines Einbruchs eingesetzt werden (MITRE, 2023). Techniken wie T1195 (Supply Chain Compromise), T1190 (Exploit Public‑Facing Application) und T1059 (Command and Scripting Interpreter) treten in realen Vorfällen wiederholt auf. Traditionelle DevSecOps-Pipelines korrelieren jedoch selten während der Entwicklung entdeckte Schwachstellen mit Verhaltensindikatoren, die zur Laufzeit beobachtet werden.

Vor diesem Hintergrund formulieren wir die folgenden Forschungsfragen:

RQ1: Wie lässt sich das mit in CI/CD-Pipelines entdeckten Schwachstellen verbundene Restrisiko mathematisch formalisieren?

RQ2: Wie können Ergebnisse statischer und dynamischer Analysetools mit zur Laufzeit beobachteten Verhaltenshinweisen integriert werden?

RQ3: Welchen quantitativen Einfluss hat diese Integration auf operative Sicherheitsmetriken wie Erkennungs- und Behebungszeit?

Die Beiträge dieser Arbeit sind drei. Erstens schlagen wir ein formales Modell zur Berechnung des Restrisikos in CI/CD-Pipelines vor. Zweitens präsentieren wir einen adaptiven Priorisierungsalgorithmus, der Schwachstellenschwere, operativen Kontext und Verhaltensindikatoren integriert. Drittens evaluieren wir die Architektur empirisch in einer realen Unternehmensumgebung und zeigen messbare Reduktionen bei operativen Risikometriken.

  1. Hintergrund und verwandte Arbeiten

DevSecOps stellt die Weiterentwicklung des DevOps-Paradigmas dar, indem Sicherheitskontrollen systematisch über den gesamten Software-Lebenszyklus hinweg integriert werden (MYRBATEN; COLPAERT; PRETSCHNER, 2020). In diesem Modell werden Sicherheitstests kontinuierlich in unterschiedlichen Phasen der Entwicklungspipeline ausgeführt.

Formal repräsentieren wir eine CI/CD-Pipeline als eine geordnete Menge von Stufen:

$$ P = {s_1, s_2, …, s_n} $$

wobei jede Stufe $s_i$ eine Transformationsfunktion $f_i$ auf Software-Artefakte $a_j$ ausführt.

Werkzeuge zur statischen Codeanalyse (SAST) wie SonarQube und Semgrep identifizieren syntaktische Muster, die mit Schwachstellen assoziiert sind. Werkzeuge zur dynamischen Analyse (DAST) wie OWASP ZAP bewerten laufende Anwendungen durch Simulation externer Interaktionen. Werkzeuge zur Software-Composition-Analyse (SCA) wie Trivy oder OWASP Dependency‑Check identifizieren Schwachstellen in Drittanbieterabhängigkeiten (OWASP, 2021).

Trotz der weit verbreiteten Nutzung dieser Werkzeuge weisen empirische Studien auf erhebliche Herausforderungen im Zusammenhang mit False Positives und unzureichender Priorisierung von Schwachstellen hin (RAHMAN et al., 2019). In vielen Fällen basiert die Priorisierung ausschließlich auf dem CVSS-Score, der die technische Schwere misst, jedoch nicht notwendigerweise das kontextspezifische Risiko der Anwendung widerspiegelt (FIRST, 2019).

Das mit einer Menge von Schwachstellen verbundene Risiko kann modelliert werden als:

$$ R = \sum_{v \in V} P(v) \cdot I(v) $$

wobei $V$ die Menge identifizierter Schwachstellen darstellt, $P(v)$ die Wahrscheinlichkeit einer Ausnutzung und $I(v)$ den potenziellen Einfluss.

Traditionelle Modelle beziehen jedoch selten operative Telemetrie, Hinweise auf aktive Ausnutzung oder den Bereitstellungskontext ein. Unser Ansatz integriert diese Faktoren durch die Korrelation zwischen Sicherheitsscannern und auf ATT&CK basierender Verhaltensüberwachung.

  1. Bedrohungsmodell und Problemformalisierung

Wir betrachten einen Angreifer $A$ mit den folgenden Fähigkeiten:

• Ausnutzung bekannter Schwachstellen, die in CVE-Datenbanken veröffentlicht sind
• Einschleusung bösartigen Codes in Softwareabhängigkeiten (Supply-Chain-Angriff)
• Remote-Ausführung von Befehlen nach initialer Kompromittierung

Der Angreifer besitzt externen Zugriff auf die Anwendung und kann automatisierte Scans mit allgemein verfügbaren Werkzeugen wie Nmap oder Masscan durchführen.

Um das kontextsensitive Risiko zu erfassen, definieren wir zwei zusätzliche Parameter:

• $E(v)$: beobachtbare Ausnutzungshinweise im Zusammenhang mit der Schwachstelle
• $C(v)$: kontextspezifische Kritikalität auf Basis operativer Faktoren

Daraus definieren wir eine angepasste Ausnutzungswahrscheinlichkeit:

$$ P’(v) = \alpha \cdot S(v) + \beta \cdot E(v) + \gamma \cdot C(v) $$

wobei:

• $S(v)$ die aus dem CVSS abgeleitete technische Schwere repräsentiert
• $\alpha + \beta + \gamma = 1$

Das Restrisiko des Systems ist dann definiert als:

$$ R’ = \sum_{v \in V} P’(v) \cdot I(v) $$

Unser Ziel ist es, $R’$ unter operativen Beschränkungen der Reaktionszeit $T$ und der verfügbaren Ressourcen $K$ zu minimieren.

  1. Vorgeschlagene Methodik

Wir schlagen eine bedrohungsorientierte DevSecOps-Architektur vor, die aus mehreren in die CI/CD-Pipeline integrierten Stufen besteht.

Stufe Funktion Werkzeuge
SAST statische Codeanalyse Semgrep, SonarQube
SCA Analyse von Abhängigkeiten Trivy
IaC Analyse von Infrastructure as Code Checkov
DAST dynamische Tests OWASP ZAP
Runtime Verhaltensdetektion Falco, Suricata
Korrelation ATT&CK-Mapping analytische Engine

Die Priorisierung von Schwachstellen erfolgt durch einen adaptiven Algorithmus, der Schweregrad, Kontext und Verhaltenshinweise integriert.

Priorisierungsalgorithmus:

Input: Menge von Schwachstellen V
Output: priorisierte Liste L

for each v in V:
    severity = getCVSS(v)
    exploitEvidence = queryTelemetry(v)
    context = computeContext(v)

    P_prime = alphaseverity + betaexploitEvidence + gammacontext
    risk[v] = P_prime  impact(v)

return sortDescending(risk)

Die rechnerische Komplexität beträgt $O(n \log n)$ aufgrund des Sortierschritts.

  1. Implementierung

Die Architektur wurde unter Verwendung weit verbreiteter Technologien in cloud-nativen Umgebungen implementiert.

Komponente Technologie
CI/CD-Orchestrierung GitLab CI
Container Docker
Orchestrierung Kubernetes
SAST SonarQube, Semgrep
SCA Trivy
IaC-Scanning Checkov
DAST OWASP ZAP
Beobachtbarkeit Elastic Stack
Verhaltensdetektion Falco, Suricata

Beispiel eines CI-Jobs zur Ausführung einer SAST-Analyse:

sast:
  image: returntocorp/semgrep
  script:
    - semgrep --config=auto --json > report.json
  artifacts:
    paths:
      - report.json

Beispiel einer Falco-Regel zur Erkennung der Ausführung einer Shell in einem Container:

- rule: Shell in Container
  desc: Detecta execução de shell em contêiner
  condition: container.id != host and proc.name = bash
  output: "Shell detectado (user=%user.name container=%container.id)"

Die experimentelle Umgebung wurde auf einem Kubernetes-Cluster mit 12 Knoten ausgeführt, insgesamt 96 vCPUs und 384 GB Speicher.

  1. Experimentelle Evaluierung

Die Evaluation wurde über sechs Monate in einer Unternehmensumgebung mit mehreren Microservices durchgeführt.

Parameter Wert
Analysierte Pipelines 120
Microservices 48
Codezeilen 3.2 Millionen
Zeitraum 6 Monate

Vergleich zwischen traditionellem Ansatz und vorgeschlagener Architektur:

Metrik Baseline Vorgeschlagen
MTTD 72 h 26 h
MTTR 9.8 Tage 5.8 Tage
Kritische Schwachstellen in Produktion 21 9
False-Positive-Rate 22% 13.6%

Wir beobachteten eine Reduktion der durchschnittlichen Erkennungszeit um 64% sowie eine Reduktion der durchschnittlichen Behebungszeit um 41%.

  1. Fallstudie

Wir führten eine Fallstudie in einer Organisation des Finanzsektors mit etwa zwei Millionen aktiven Nutzern durch.

Während des Build-Prozesses identifizierte das Werkzeug Trivy das Vorhandensein der Schwachstelle CVE‑2021‑44228 in einer Log4j-Abhängigkeit.

Die Ereignisabfolge war wie folgt:

  1. Trivy identifizierte die verwundbare Abhängigkeit in der SCA-Stufe.
  2. Suricata erkannte verdächtigen Traffic im Zusammenhang mit einem LDAP-Exploitschritt.
  3. Der Korrelationsmechanismus ordnete das Ereignis der ATT&CK-Technik T1190 zu.
  4. Der Priorisierungsalgorithmus erhöhte automatisch die Kritikalität der Schwachstelle.

Die Korrektur wurde etwa sechs Stunden nach der ersten Erkennung angewendet und verhinderte eine erfolgreiche Ausnutzung.

  1. Diskussion

Die Ergebnisse zeigen, dass die Korrelation zwischen Schwachstellenscannern und Verhaltens-Telemetrie die Genauigkeit der Risikopriorisierung signifikant erhöht. Die Integration mit ATT&CK bietet eine operationale Taxonomie, die die Interpretation von Sicherheitsereignissen erleichtert.

Gleichzeitig weist der Ansatz Einschränkungen auf. Die Wirksamkeit hängt von der Qualität der erfassten Telemetrie und der Überwachungstiefe der Umgebung ab. Zudem kann der kontinuierliche Einsatz mehrerer Scanner zusätzliche Rechenkosten in großskaligen Pipelines verursachen.

Eine weitere Einschränkung betrifft die Abhängigkeit von angemessener Instrumentierung in Laufzeitumgebungen. Beobachtbarkeitssysteme auf Basis von eBPF und Laufzeitsensoren sind entscheidend, um Verhaltenshinweise zuverlässig zu erfassen.

  1. Schlussfolgerung

Wir präsentierten eine bedrohungsorientierte DevSecOps-Architektur, die statische Analyse, dynamische Analyse, Abhängigkeitssicherheit und auf MITRE ATT&CK basierende Verhaltensüberwachung integriert. Wir formalisierten mathematisch die Berechnung des Restrisikos in CI/CD-Pipelines und führten einen adaptiven Priorisierungsalgorithmus ein, der technische Schwere, operativen Kontext und Ausnutzungshinweise berücksichtigt.

Die empirische Evaluierung zeigte signifikante Reduktionen bei operativen Sicherheitsmetriken, einschließlich Erkennungszeit, Behebungszeit und Auftreten kritischer Schwachstellen in Produktion. Diese Ergebnisse deuten darauf hin, dass die Korrelation zwischen Runtime-Telemetrie und Schwachstellenanalyse einen effektiveren Ansatz für das Risikomanagement in DevSecOps-Umgebungen bietet.

Die vorgestellte Architektur ist mit zeitgenössischen Praktiken der Sicherheit von Software-Lieferketten kompatibel, einschließlich der Erzeugung von SBOM und Build-Integritäts-Frameworks wie SLSA, und ermöglicht dadurch eine höhere Nachverfolgbarkeit und Zuverlässigkeit in kontinuierlichen Bereitstellungsprozessen.

References

ALLAMANIS, Miltiadis et al. A survey of machine learning for big code and naturalness. ACM Computing Surveys, v. 51, n. 4, 2018. Available at: https://doi.org/10.1145/3212695

BEHL, Abhishek; BEHL, Kanika. Cybersecurity and cyberwar: what everyone needs to know. Journal of Information Security, v. 8, n. 2, 2017. Available at: https://doi.org/10.4236/jis.2017.82008

CISA. SolarWinds supply chain compromise. 2021. Available at: https://www.cisa.gov/news-events/alerts/aa20-352a

FIRST. Common Vulnerability Scoring System v3.1 Specification. 2019. Available at: https://www.first.org/cvss/specification-document

HUTCHINS, Eric M.; CLOPPERT, Michael J.; AMIN, Rohan. Intelligence‑driven computer network defense informed by analysis of adversary campaigns. 2011. Available at: https://apps.dtic.mil/sti/citations/ADA547669

KIM, Gene et al. The DevOps Handbook. Portland: IT Revolution Press, 2016. Available at: https://itrevolution.com/product/the-devops-handbook

MITRE. ATT&CK for Enterprise Matrix. 2023. Available at: https://attack.mitre.org

MYRBATEN, Nils; COLPAERT, Pieter; PRETSCHNER, Alexander. DevSecOps: a multivocal literature review. IEEE Access, 2020. Available at: https://doi.org/10.1109/ACCESS.2020.3005717

NIST. NVD CVE‑2021‑44228 Detail. 2021. Available at: https://nvd.nist.gov/vuln/detail/CVE-2021-44228

NIST. Secure Software Development Framework (SSDF) SP 800‑218. 2022. Available at: https://doi.org/10.6028/NIST.SP.800-218

OWASP. OWASP Top 10 – 2021. 2021. Available at: https://owasp.org/www-project-top-ten

OWASP. Dependency‑Check Project. 2023. Available at: https://owasp.org/www-project-dependency-check

RAHMAN, Foyzur et al. The impact of false positives on static analysis. ACM CCS, 2019. Available at: https://doi.org/10.1145/3319535.3363202

SCARFONE, Karen; SOUZA, Ricardo. Guide to intrusion detection and prevention systems. NIST SP 800‑94. 2012. Available at: https://doi.org/10.6028/NIST.SP.800-94

SHARMA, Tushar; COYNE, Eoin. Continuous security in DevOps pipelines. IEEE Security & Privacy, 2020. Available at: https://doi.org/10.1109/MSEC.2020.2970417

SIGSTORE PROJECT. Sigstore documentation. 2023. Available at: https://www.sigstore.dev

SLSA. Supply‑chain Levels for Software Artifacts Specification. 2023. Available at: https://slsa.dev

TRIVY PROJECT. Trivy vulnerability scanner documentation. 2024. Available at: https://aquasecurity.github.io/trivy

ZALANDO. Falco runtime security project. 2023. Available at: https://falco.org

OPEN INFORMATION SECURITY FOUNDATION. Suricata IDS documentation. 2023. Available at: https://suricata.io

CNCF. Cloud Native Security Whitepaper. 2023. Available at: https://www.cncf.io/reports/cloud-native-security-whitepaper

CYCLONEDX. CycloneDX SBOM specification. 2023. Available at: https://cyclonedx.org

SCOTT, James; WILSON, Mark. Observability in cloud native systems. O’Reilly Media, 2022. Available at: https://www.oreilly.com/library/view/observability-engineering

GOOGLE. Binary Authorization and secure supply chains. 2023. Available at: https://cloud.google.com/binary-authorization

CILIUM PROJECT. eBPF-based runtime security and observability. 2023. Available at: https://cilium.io