entire contents © 2011 praetorian. all rights reserved ... · 3 entire contents © 2011...

34
Entire contents © 2011 Praetorian. All rights reserved. | Information Security Provider and Research Center | www.praetorian.com

Upload: others

Post on 20-Mar-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

Entire contents © 2011 Praetorian. All rights reserved. | Information Security Provider and Research Center | www.praetorian.com

Page 2: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

2 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

Page 3: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

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

Agenda

Introduction

Process Overview

Current State Analysis

Workshop

Page 4: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

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

INTRODUCTION

Page 5: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

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

Secu

re D

evelo

pm

en

t Life

cycle

Planning

Maintenance

Requirements

and Analysis

Architecture

and Design

Development

Testing

Deployment

Activities Core Security

Functional Requirements

Non Functional Requirements

Technical Requirements

Design Guidelines

Architecture and Design Review

Unit Tests

Code Review

Daily Builds

Integrated Testing

System Testing

Deployment Review

Risk Assessment

Penetration Testing

Security Testing

Security Code Review

Threat Modeling

Architectural Risk Analysis

Security Objectives

Page 6: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

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

Requirements $139

Design $455

Development $977

Testing $7,136

Deployment $14,102Estimates provided by IEEE Computer Society

Page 7: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

7 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 8: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

8 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 9: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

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

THREAT MODELING PROCESS

Page 10: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

10 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 11: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

11 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 12: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

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

APPLICATION UNDERSTANDING

Page 13: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

13 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 14: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

14 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 15: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

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

APPLICATION DECOMPOSITION

Page 16: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

16 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 17: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

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

Flow Chart

Page 18: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

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

Data Flow Diagram

Page 19: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

19 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 20: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

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

THREAT IDENTIFICATION

Page 21: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

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

Microsoft STRIDE Categorization

• Example: Session identifiers are incremental. Another users session id can be guessed and used

Spoofing

• Example: Data validation of user input does not occur. Database entries can be modified via SQL injection

Tampering

•Example: System does not have audit functionality of user operations to trace an improper request

Repudiation

• Example: Verbose error messages reveal database schema

Information Disclosure

• Example: Application crashes from unexpected user input

Denial of Service

• Example: User is able to obtain administrative access to application through variable change

Elevation of Privilege

Page 22: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

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

Application Security Frame CategorizationConfiguration Management

Authentication

Authorization

Data Protection In Storage & Transit

User & Session Management

Error Handling & Exception Handling

Data Validation & Parameter Manipulation

Auditing & Logging

Page 23: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

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

Steal money

Impersonate client

P

Stick up bank teller

I

Bribe bank teller

P

P – Probable

I - Improbable

Intimidate client

I

Threat Trees

Page 24: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

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

VULNERABILITY PRIORITIZATION

Page 25: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

25 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 26: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

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

• How much damage would occur if the attack was successful

Damage

• How difficult is it to reproduce the attack

Reproducibility

• What is the likelihood the threat can moved from a theoretical attack to a functional exploit

Exploitability

• What percentage of the user would be affected if the vulnerability was exploited

Affected User

• How difficult would it be for an attacker to discover the vulnerability

Discoverability

Microsoft DREAD Categorization

Page 27: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

27 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 28: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

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

CURRENT STATE ANALYSIS

Page 29: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

29 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 30: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

30 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 31: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

31 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 32: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

32 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 Toolhttp://msdn.microsoft.com/en-us/security/dd206731.aspx

Building Maturity in Security Model http://www.bsi-mm.com/

OWASP Application Threat Modelinghttp://www.owasp.org/index.php/Application_Threat_Modeling

Page 33: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

33 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 34: Entire contents © 2011 Praetorian. All rights reserved ... · 3 Entire contents © 2011 Praetorian. All rights reserved. Your World, Secured Agenda Introduction Process Overview

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

Threat Modeling

Nathan Sportsman

Founder 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