33
1 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Threat Modeling "Threat modeling at the design phase is really the only way to bake security into the SDLC.” – Michael Howard, Microsoft Nathan Sportsman Founder and Chief Executive Officer

Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

Embed Size (px)

DESCRIPTION

Over the last few years, significant progress has been made in back end SDLC security controls. Vendors have developed sophisticated analysis tools focusing on code inspection and application testing and organizations are incorporating both automated and manual assessment methods into the latter half of their development process. However, adoption of architectural risk analysis has not been as widespread. Although threat modeling is not a new concept and approaches such as Microsoft's STRIDE are well known, companies have not internalized and adopted design related security controls with the same vigor. The purpose of this presentation is to provide an understanding of what threat modeling is, why it is important, and champion its benefits. Praetorian's goal is to help our clients understand minimize their overall security exposure and liability. Through our services, your organization can obtain an accurate, independent security assessment.

Citation preview

Page 1: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

1 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Threat Modeling"Threat modeling at the design phase is really the only way to bake

security into the SDLC.” – Michael Howard, Microsoft

Nathan SportsmanFounder and Chief Executive Officer

Page 2: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

2 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Agenda

Introduction Process Overview Current State Analysis Workshop

Page 3: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Introduction

Page 4: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

4 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Secu

re Develo

pm

ent

Lifecycle

Planning

Maintenance

Requirements and Analysis

Architecture and Design

Development

Testing

Deployment

Activities Core Security

Functional RequirementsNon Functional RequirementsTechnical Requirements

Design GuidelinesArchitecture and Design Review

Unit TestsCode ReviewDaily Builds

Integrated TestingSystem Testing

Deployment Review

Risk Assessment

Penetration Testing

Security Testing

Security Code Review

Threat ModelingArchitectural Risk Analysis

Security Objectives

Page 5: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

5 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Requirements $139Design $455Development $977Testing $7,136Deployment $14,102Estimates provided by IEEE Computer Society

Page 6: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

6 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Threat Modeling Is …a security control performed during the architecture and

design phase of the SDLC to identify and reduce risk within software» Also called architectural risk analysis depending what camp you talk to» Sit down between security experts and architects & development

leads» Performed through white boarding and thoughtful discussion» Accomplished over 2 to 5 day time period depending on application

complexity

Page 7: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

7 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Threat Modeling Benefits Improves Security

» Champions threat analysis» Uncovers logical/architectural vulnerabilities» Reduces risk and minimizes impact

Drives Testing» Validates design meets security requirements» Reduces scope of code inspection» Serves as a guide for verification testing

Reduces Cost» Identifies expensive mistakes early on» Improve understanding and structure of application » Decreases new hire ramp up time

Page 8: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

8 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Threat Modeling Process

Page 9: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

9 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Threat Modeling Approaches Attack Centric

» Evaluates from the point of view of an attacker

Defense Centric» Evaluates weakness in security controls

Asset Centric» Evaluates from asset classification and value

Hybrid» Evaluates application design using combination of methodologies to

meet security objectives

Page 10: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

10 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Threat Modeling Process

» Identify Security Objectives

» Application Overview

» Decompose Application

» Identify Threats (and Countermeasures)

» Identify Vulnerabilities

» Repeat

Page 11: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

11 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Application Understanding

Page 12: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

12 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Application Overview Review any related documentation provided before the

threat model Documentation is usually out of date, but can still provide an overview

of the application

Developers should give an overview of the applications purpose and key features

Review security requirements and how the design fulfills those specifications

Page 13: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

13 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Characterize The System Scenarios are very useful in identifying threats

Common use and abuse cases should be understood

Cases should come from security requirements, If cases are not available, create and analyze your own abuse cases with developers

Page 14: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

14 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Application Decomposition

Page 15: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

15 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Application Modeling Flow Chart

» Less commonly used» Difficult to overlay threats

Data Flow Diagrams (DFD)» Hierarchical in nature» Focused on data input» Representation used by Microsoft

Universal Modeling Language (UML)» Familiar to developers» OO and component diagramming

Page 16: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

16 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Flow Chart

Page 17: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

17 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Data Flow Diagram

Page 18: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

18 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Universal Modeling Language (Functional)

Teller

DepositCheck

BalanceWithdrawal

Authenticate

Authorize

Update Account

Log Transaction

Client

Process

Page 19: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

19 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Threat Identification

Page 20: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

20 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Microsoft STRIDE Categorization

Page 21: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

21 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Application Security Frame Categorization

Page 22: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

22 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Steal moneySteal money

Impersonate clientP

Impersonate clientP

Stick up bank tellerI

Stick up bank tellerI

Bribe bank tellerP

Bribe bank tellerP

P – ProbableI - Improbable

Intimidate clientI

Intimidate clientI

Threat Trees

Page 23: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

23 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Vulnerability Prioritization

Page 24: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

24 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

General Risk Approach

Risk = Threat X Vulnerability X Cost

Threat = An action intended to do damage or harm

Vulnerability = Likelihood of success of a threat

Cost = Total impact or cost of the incident

Page 25: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

25 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Microsoft DREAD Categorization

Page 26: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

26 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Structured Lists Round table discussion

Prioritization based on consensus

Utilize Praetorian Risk Approach

Numbered list generated

Page 27: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

27 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Current State Analysis

Page 28: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

28 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Activities Organizations Are Doing Now

Only a handful of companies are actually introducing security into the SDLC in any meaningful way

Prior focus by vendors, security service providers, and clients tended to be on back end security controls

Other than industry thought leaders, little effort is being paid to the importance of front end controls such as security requirement reviews and threat modeling

Backwards approach due to lack of awareness, preexisting systems, and legacy code

Page 29: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

29 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Adoption Constraints In its current form threat modeling generally requires outside

security expertise

Expensive cost limits threat modeling to one off expenditures for only the most critical applications

Difficult to internalize and reproduce process across application portfolios

Tools limited functionality and to scalability inhibits development team empowerment

Page 30: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

30 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Future Predictions Software security initiatives at more and more organizations

will mature and incorporate threat modeling

Threat modeling tools will become more sophisticated and enterprise ready

Page 31: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

31 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

References Frank Swiderski and Window Snyder. Threat Modeling. Microsoft Press, 2004. Michael Howard and David LeBlanc. Writing Secure Code 2nd Edition. Microsoft

Press, . Microsoft Application Threat Modeling Blog

http://blogs.msdn.com/threatmodeling/ Microsoft SDL Threat Modeling Tool

http://msdn.microsoft.com/en-us/security/dd206731.aspx Building Maturity in Security Model

http://www.bsi-mm.com/ OWASP Application Threat Modeling

http://www.owasp.org/index.php/Application_Threat_Modeling

Page 32: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

32 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Unlock Conundrum Workshop Cell Phone Manufacturer is caught with its pants down and has found

out that $6,000,000 worth of unlock codes have been sold by their overseas support personnel

Using a internal, web based tool, support personnel are able to query unlock codes used to unlock the phone for diagnostic purposes

Unfortunately, employees are abusing the system and setting up websites and selling unlock codes out of band to customers for personal profit

Manufacturer has asked a threat model be performed on the new design of the application which they hope will stop the abuse

Page 33: Threat Modeling - Improve Security, Drive Testing, & Reduce Costs

33 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured

Threat Modeling

Nathan SportsmanFounder and Chief Executive Officer

“In fact, during the Windows Security Push (and all pushed that followed at Microsoft, we found that the most important aspect of the software design process, from a security viewpoint, is threat modeling.”

– Michael Howard, Microsoft, Writing Secure Code 2nd Edition