Building Security Into The Software Life Cycle
A Business Case
Marco M. Morana Senior Consultant Foundstone Professional Services a Division of McAfee Email: [email protected]
Outline
Glossary Application Security Risks Software Security and Application Security Costs and Return Of Security Investment (ROSI) Software Security Development Life Cycle (S-SDLC) Process Models and Frameworks Business Risks, Technical Risks and Strategies Summary Resources
Glossary
Information Security Risks: the probability that a particular threat-source will exercise a particular information system vulnerability and the resulting impact if this should occur (NIST publication 800-27) Software Security: a way to defend against software exploits by building software to be secure (McGraw Exploiting Software) Application Security: a way to defend against software exploits in a post-facto way after deployment is complete (McGraw Exploiting Software) Return Of Security Investment in Security (ROSI): The total amount of money that an organization is expected to save in a year by implementing a security control (Microsoft Security Risk Management Guide)
3
What is at risk?
92% of reported vulnerabilities are in applications not in networks
36%
Target Applications At Risk
Server Applications Network Protocol Stack
41%
Other Communication Protocol
15%
3%
2%
2%
1%
Hardware Operating System
Source: NIST
Non Server Applications
How we approach risk?
Application Security
Issue-based, short-term approach * Penetrate and Patch * Threat Modeling * Code Reviews
Software Security
Holistic, long-term approach * Root Cause Analysis * Organizational Change
What are the costs?
Application Security Costs: Defect Management: 5 defects/KLOC, $ 30,000/KLOC (Business week) Patch Management: 1000 servers, $ 300,000 to test and deploy a patch (Gartner) Loss of productivity due of loss of service: $ 500 ML lost from DoS attack (Microsoft) Software Security Costs: Unbudgeted time to fix security problems:1000 man-hours (Microsoft) Cost of training software developers in security: $100 Million (Microsoft) Inadequate software testing costs: $3.3 billion (NIST)
6
When we do address the problem?
Today most people test after software is built!
7
ROSI = [( RiskExposu re % RiskMitiga ted ) SolutionCo st ] /( SolutionCo st )
When is more cost effective to build security in?
Assume the following data from a study (IBM): - Secure Software Engineering Expense Per Phase - Number of Security Defects found Per Phase - Percentage of Vulnerabilities Fixed The Return Of Security Investment (ROSI) in dollar savings for every $ 100,000 spent is: - $ 21,000 when defects are fixed and identified during design - $ 15,000 when defects are fixed during implementation - $ 12,000 when defects are fixed during tests
Software Risk Management and Secure Software Development Life Cycles (S-SDLC)
How do we get there?
1. Adopt an activity driven approach 2. Document security activities derived by best practices 3. Define dependencies and prerequisites 4. Define entry scenarios for the activities 5. Define strategic and tactical tracks for the activities 6. Define the roadmaps for software security 7. Position the activities with respect to different SDLC methodologies
10
Security-Enhancing Lifecycle Process Models
1. Enhance security through a repeatable and measurable process 2. Provide guidance on secure software activities 3. Provide secure software development reviews 4. Include tactical resources 5. Provision the use of automation tools 6. Suggest roles for conducting the activities 7. Integrate with foundational software development activities
11
Security Enhancing Process Models
Microsofts Trustworthy Computing Security Development Lifecycle
12
Comprehensive Lightweight Application Security Process (CLASP)
Security Enhancing Process Models
13
Security Enhancing Process Models
Gary McGraw Touch-Point Model
14
Security Enhancing Process Models
SEI Team Software Process for Secure Software Development
15
Software Security Frameworks
16
Business Risks, Technical Risks and Strategies
Business Risk Factors: - Business impact - Value of the assets - Information risk management Technical Risks Factors: - Technical impacts - Value of data - Software risks associated to threats and vulnerabilities Risk Remediation Strategies: - Cost to fix vulnerabilities vs. cost of exploitation - Translate technical risks to business risks - Assess, evaluate and prioritize by business impact
17
In Summary
1. Make the initial business case - Costs - Return Of Security Investment (ROSI) 2. Adopt a formal process to build security into the SDLC - Security Enhancing Process Models - Software Security Frameworks 3. Have a plan for the implementation - Tactical and strategic plans - Roadmaps: short term and long term 4. Integrate Software Security with Information Security Risks - Assess business impacts - Factor technical and business impacts in overall risks 5. Review the business case and commit to it - Measure overall risk and decide strategies - Commit people, process and technology
18
Questions?
19
Foundstone Links
Foundstone Software Application Security Services (SASS) www.foundstone.com/sass Foundstone Resources www.foundstone.com/resources.overview.htm
Thank you for listening!
20