220 likes | 394 Views
Microsoft Trustworthy Computing Security Development Lifecycle. Presented by Jonathan Howell. Source. “The Trustworthy Computing Security Development Lifecycle” http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsecure/html/sdl.asp Authors Steve Lipner Michael Howard.
E N D
Microsoft Trustworthy Computing Security Development Lifecycle Presented by Jonathan Howell
Source • “The Trustworthy Computing Security Development Lifecycle” • http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsecure/html/sdl.asp • Authors • Steve Lipner • Michael Howard
Outline • Source • Introduction • SD3 + C • Processes • SDL Phases • SDL at Microsoft • Conclusion
Introduction • Need more secure software with less patching • Provided through a repeatable process with measurable results • Requires: • Repeatable process • Engineer education • Metrics and Accountability
SD3+ C • Secure by Design • Secure by Default • Secure in Deployment • Communications
Processes Figure 1. Baseline process and SDL Improvements
SDL Phases • Requirements Phase • Design Phase • Implementation Phase • Verification Phase • Release Phase • Support and Servicing Phase
Requirements Phase • Request Security Advisor • Security Milestones • Exit Criteria • Documentation • Security Feature Requirements
Design Phase • Define security architecture and design guidelines • Document the elements of the software attack surface • Conduct threat modeling • Define supplemental ship criteria
Implementation Phase • Apply coding and testing standards • Apply security-testing tools including fuzzing tools • Apply static-analysis code scanning tools • Conduct code reviews
Verification Phase • “Security push” • Security reviews • Testing of high priority code
Release Phase • Final security review • Independent Review • Performed by central security team • Penetration testing • Not pass/fail!
Support and Servicing Phase • Evaluate Reports • Release Security Advisories • Issue updates to fix problems • Update code scanning tools
SDL at Microsoft • Mandatory application • Mandatory education • Metrics for product team • Role of central security team
Mandatory Application • Mandatory for software: • processing personal or sensitive information • used in an enterprise or other organization • connected to a network or the internet • Platform security
Mandatory Education • Security changes constantly • Annual security education • Books: • Threat Modeling • Secure Design
Metrics • “can’t manage what you can’t measure” • Proxy metrics • Aggregate metrics for executives
Central Security Team • Secure Windows Initiative (SWI) • Develop, maintain, enhance SDL • Develop, enhance, deliver engineer education • Provide “security advisors” • Subject matter experts • Execute Final Security Reviews
Observations at Microsoft • Threat modeling • Code reviews, automated tools, fuzz testing • Penetration testing • Investments
Conclusion • Appear to see improvements • Iterative cycle • Initially expensive • Worth the cost!