Trustworthy Computing Security Development Lifecycle (Abgekürzt SDL, zu Deutsch Entwicklungszyklus für vertrauenswürdigen Computereinsatz) ist ein 2004 von Microsoft veröffentlichtes Konzept zur Entwicklung von sicherer Software und richtet sich an Softwareentwickler, die Software entwickeln, die böswilligen Angriffen standhalten muss. Stark vereinfacht handelt es sich dabei um Gebote und Verbote, Tipps und Tools.Steve Lipner und Michael Howard: Entwicklungszyklus für sichere Software. In: MSDN. 30. Mai 2005. Es kam erstmals bei der Entwicklung von Windows Vista zum Einsatz.Beschreibung der Verbesserungen in Windows Vista durch Nutzung des Security Development Lifecycle

SDL ist weiterhin in die Softwareentwicklung bei Microsoft eingebunden; 2011 zog die Trustworthy Computing Group des Unternehmens eine Zwischenbilanz über die bisher erreichten Ergebnisse mit dieser Methode.

Grundsätze Microsoft geht bei SDL von folgenden Grundsätzen aus:

Secure by design Schon in der Planungsphase sollte auf die Sicherheitsbelange der Software eingegangen werden. Secure by default Trotz sorgfältigster Planung sollte ein Entwickler von dem Vorhandensein von Sicherheitslücken ausgehen. Aus diesem Grund sollten die Standardeinstellungen (z. B. erforderliche Privilegien) möglichst niedrig gewählt werden und selten benutzte Features standardmäßig deaktiviert werden. Secure in deployment Die mitgelieferten Dokumentationen und Tools sollen die Administratoren dabei unterstützen, die Software möglichst optimal einzurichten. Communications (Software) Die Entwickler sollten offen mit möglichen Sicherheitslücken umgehen und den Endanwendern schnell Patches oder Workarounds zur Verfügung stellen. Privacy by design Schon in der Planungsphase sollten Datenschutzbelange der Software berücksichtigt werden. Privacy by default Die Standardeinstellungen der Software sollten konservativ gewählt werden. Privacy in deployment Datenschutzmechanismen sollten offengelegt werden, um es Administratoren zu ermöglichen, die internen Datenschutzrichtlinien des Unternehmens umzusetzen. Communications (Privacy) Datenschutzerklärungen sollten transparent formuliert werden. Ein Team für Datenschutzvorfälle sollte eingerichtet werden.

Der SDL-Prozess Die untenstehende Liste entstammt der Dokumentation von Microsoft: Anforderungsphase: Identifikation der Sicherheitsanforderungen und Schutzziele der zu erstellenden Software und deren Schnittstellen Entwurfsphase: Identifikation der Komponenten, die grundlegend für die Sicherheit sind; Risikomodellierung Implementierung: Verwendung von Tools und Test-Methoden sowie Code Reviews Überprüfungsphase: Beta Test mit Nutzern, systematische Suche nach Sicherheitsmängeln Veröffentlichung: Ist die Software auch wirklich reif für die Auslieferung Schaffung der Möglichkeit auf entdeckte Fehler und Schwachstellen schnell zu reagieren

Einzelnachweise

Weblinks Microsoft Security Development Lifecycle A Look Inside the Security Development Lifecycle at Microsoft: Michael Howard in MSDN Magazine, 11/2005 Der Microsoft-SDL: Niklaus Schild in heise Developer, 19. August 2009 SDL für Dummys: Uli Ries in heise Security, 2. Februar 2010 Microsoft stellt SDL für Agile-Softwareentwicklung vor: Daniel Bachfeld in heise Security, 10. November 2009

Kategorie:IT-Sicherheit Kategorie:Microsoft