SAST und DAST in CI/CD-Pipelines
Integrieren Sie SonarQube, Semgrep oder Bandit für statische Analysen und OWASP ZAP für dynamische Scans in Pipelines.
SAST und DAST in CI/CD-Pipelines ist eine kostenlose Cyber Security Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Cyber Security Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Cyber Security Academy-Kurs umfasst insgesamt 4 Lektionen.
Was ist Application Security Testing?
Application Security Testing identifiziert Schwachstellen, bevor Code in die Produktion gelangt. Zwei sich ergänzende Ansätze sind: SAST (statisch, ohne den Code auszuführen) und DAST (dynamisch, durch Testen einer laufenden Anwendung). Beide Ansätze lassen sich für eine frühzeitige Verankerung der Sicherheit in CI/CD-Pipelines integrieren.
SAST: Statisches Testen der Anwendungssicherheit
SAST analysiert Quellcode, Bytecode oder Binärdateien auf Sicherheitslücken, ohne den Code auszuführen. Es kann bei jedem Commit ausgeführt werden und liefert dadurch schnelles Feedback.
Stärken: Erkennt Fehler frühzeitig, vollständige Codeabdeckung, keine laufende Umgebung erforderlich.
Schwächen: Hohe Rate an Falschpositiven, sprachspezifisch, erkennt Probleme der Laufzeitkonfiguration nicht.
Beliebte SAST-Tools
SAST-Tools aus dem Open-Source-Bereich:
# Semgrep (multi-language, rule-based):
semgrep --config auto ./src
# Bandit (Python):
bandit -r ./src
# ESLint security plugin (JavaScript):
npx eslint --plugin security ./src
# SpotBugs + FindSecBugs (Java):
mvn spotbugs:checkSAST in CI/CD integrieren
Beispiel für einen SAST-Schritt in GitHub Actions:
# .github/workflows/security.yml
- name: Run Semgrep
uses: returntocorp/semgrep-action@v1
with:
config: p/owasp-top-ten
auditOn: push
# Fail build if HIGH severity findings presentDAST: Dynamisches Testen der Anwendungssicherheit
DAST testet eine laufende Anwendung von außen und simuliert dabei einen Angreifer. Es erkennt Schwachstellen, die nur zur Laufzeit sichtbar sind: Authentifizierungsprobleme, Fehler in der Sitzungsverwaltung und Fehler bei der Eingabevalidierung.
Stärken: Wenige Falschpositive, sprachunabhängig, erkennt Probleme der Laufzeitkonfiguration.
Schwächen: Eine laufende Umgebung ist erforderlich, möglicherweise werden nicht alle Codepfade erfasst.
Beliebte DAST-Tools
DAST-Tools für CI/CD:
# OWASP ZAP (free, scriptable):
docker run -t owasp/zap2docker-stable zap-baseline.py -t https://staging.app.com
# Nikto:
nikto -h https://staging.app.com
# Nuclei (template-based):
nuclei -u https://staging.app.com -t cves/IAST: Interaktives Testen der Anwendungssicherheit
IAST instrumentiert die Anwendung zur Laufzeit mithilfe von Agents, die während funktionaler Tests die Codeausführung überwachen. Es verbindet die Genauigkeit von SAST mit der Abdeckung von DAST. Beispiele: Contrast Security, Seeker. Sprachspezifische Agents und die Ausführung von Tests sind erforderlich.
Security nach links verlagern
Shift left bedeutet, Sicherheitstests im Entwicklungszyklus früher durchzuführen – idealerweise bereits in der IDE der Entwickler und beim Commit statt als separate Prüfungsstufe vor der Veröffentlichung. Je früher ein Problem erkannt wird, desto günstiger ist seine Behebung.
Kostenmultiplikator: Ein Fehler in der Entwicklung kostet 1x, in der Staging-Umgebung 10x und in der Produktion 100x.
Umgang mit Falschpositiven
SAST-Tools erzeugen Falschpositive. So gehen Sie damit um:
- Verwenden Sie
nosec(Bandit) oder Inline-Kommentare zur Unterdrückung, wenn es sich nachweislich nicht um ein Problem handelt - Passen Sie die Regelsätze an den Anwendungskontext an
- Dokumentieren Sie die Begründung für Unterdrückungen in Kommentaren im Code
- Überprüfen Sie Unterdrückungen regelmäßig
Architektur der CI/CD-Sicherheitspipeline
Eine vollständige Sicherheitspipeline:
- Pre-Commit-Hooks: Scannen auf Secrets (gitleaks), SAST (semgrep)
- PR-Prüfungen: SAST-Ergebnisse, Scannen von Abhängigkeiten (Dependabot)
- Bereitstellung in der Staging-Umgebung: DAST-Scan (ZAP baseline)
- Produktion: Überwachung zur Laufzeit (RASP, WAF)
Wirksamkeit von AppSec messen
Wichtige AppSec-Kennzahlen in CI/CD:
- Durchschnittliche Zeit bis zur Behebung von Sicherheitsbefunden
- Anzahl der Befunde pro 1000 Codezeilen
- Rate der Falschpositiven (beeinflusst das Vertrauen der Entwickler)
- Rate der durchgerutschten Schwachstellen (in der Staging-Umgebung im Vergleich zur Produktion gefunden)
Schnelltest: SAST vs. DAST
Welche Art von Sicherheitstests analysiert den Quellcode, ohne ihn auszuführen, und liefert bei jedem Commit direkt Feedback in der CI-Pipeline?
Zusammenfassung der Lektion
SAST analysiert Code statisch (frühes Feedback, viele Falschpositive), während DAST laufende Anwendungen dynamisch testet (Genauigkeit zur Laufzeit, Umgebung erforderlich). Beide Ansätze gehören in CI/CD-Pipelines. Durch die Verlagerung von Sicherheitstests nach links werden Schwachstellen erkannt, wenn ihre Behebung am günstigsten ist. Beliebte Tools: Semgrep, Bandit (SAST); OWASP ZAP, Nuclei (DAST). Passen Sie die Regelsätze an und dokumentieren Sie Unterdrückungen, um mit Falschpositiven umzugehen.
Lerne Cyber Security Academy mit einem KI-Tutor — kostenlos
Schreibe und führe echten Code in deinem Browser aus, bekomme sofortige Hilfe von einem 24/7 KI-Tutor und setze dein Lernen im Web oder in der App fort.
- Kurse
- 76
- Lektionen
- 303
Häufig gestellte Fragen
Ist die Lektion „SAST und DAST in CI/CD-Pipelines“ kostenlos?
Ja — der vollständige Text von „SAST und DAST in CI/CD-Pipelines“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Cyber Security Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Cyber Security Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „SAST und DAST in CI/CD-Pipelines“?
Integrieren Sie SonarQube, Semgrep oder Bandit für statische Analysen und OWASP ZAP für dynamische Scans in Pipelines. Du übst Cyber Security Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Cyber Security Academy zu starten?
Keine Vorkenntnisse erforderlich. Cyber Security Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.
Wie lange dauert die Lektion „SAST und DAST in CI/CD-Pipelines“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Cyber Security Academy-Lektion Code schreiben und ausführen?
Ja. Jede Cyber Security Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- SAST und DAST in CI/CD-Pipelines
- Software Composition Analysis (SCA)
- Scannen von Secrets und fest codierte Zugangsdaten
- Security Champions und Threat Modeling