Software Development Life Cycle (SDLC)
Eigene Softwareänderungen über Anforderungen, Entwicklung, Test, Release und Wartung kontrollieren.
Security begleitet den Entwicklungsweg – sie wird nicht am Ende angeklebt
NIST SP 800-218, das Secure Software Development Framework (SSDF), bündelt grundlegende sichere Entwicklungspraktiken in vier Gruppen. Das Framework kann in unterschiedliche SDLC-Modelle integriert werden.
Rollen, Anforderungen, Werkzeuge und sichere Arbeitsweise vorbereiten.
Code, Artefakte und Entwicklungsumgebung vor Manipulation schützen.
Security in Design, Entwicklung, Review und Verifikation einbauen.
Schwachstellen nach Release erkennen, behandeln und Ursachen für Wiederholungen adressieren.
Beispiel: Eine kleine Änderung am internen Web-Framework
Vor der Änderung sind Verantwortlichkeit und Anforderungen klar. Der Quellstand bleibt geschützt und versioniert. Die Änderung wird in einer Entwicklungsumgebung geprüft. Nach Release bleiben Findings, Komponenten und spätere Schwachstellen weiter steuerbar.
Vertiefung: NIST SP 800-218 – SSDF Version 1.1. Eine Version 1.2 liegt derzeit nur als Entwurf vor und wird deshalb hier nicht als gültige Endfassung verwendet.
Security beginnt vor dem Code
SDLC bezeichnet den strukturierten Lebenszyklus von Software. Security wird in vorhandene Entwicklungsphasen integriert.
Vom Änderungsbedarf zur sicheren Freigabe
Security Requirements.
Architektur/Vertrauensgrenzen (Trust Boundaries).
Sichere Implementierung.
Code/Konfiguration/Verhalten.
Freigabe, Monitoring, Updates.
Eine kleine Änderung kann das Risikoprofil verändern
Ein Application Programming Interface (API)-Endpunkt erhält Zugriffsanforderungen, negative Tests und Monitoring.