Presentation is loading. Please wait.

Presentation is loading. Please wait.

AppSec USA 2014 Denver, Colorado Threat Modeling Made Interactive! Eunsuk Kang Software Design Group CSAIL, MIT.

Similar presentations


Presentation on theme: "AppSec USA 2014 Denver, Colorado Threat Modeling Made Interactive! Eunsuk Kang Software Design Group CSAIL, MIT."— Presentation transcript:

1 AppSec USA 2014 Denver, Colorado Threat Modeling Made Interactive! Eunsuk Kang Software Design Group CSAIL, MIT

2 Software Design Group, Computer Science and Artificial Intelligence Laboratory (CSAIL) Leader: Prof. Daniel Jackson Research interests: Architecture, modeling, requirements, security, safety, program analysis, verification, testing Systems: Electronic voting, radiation therapy system, network protocols, biometric access control, web application, smart grids… Introduction

3 “What could possibly go wrong with my system?” Three components – Policy: What customers care about – System model: Not just the software! – Environment model: Both good & bad agents What are possible ways in which the system, operating under the specified environment, may fail to satisfy its security policy? What is Threat Modeling?

4 “All models are wrong, but some models are useful.” (George Box) Identify & prioritize risks early in development Explore security implications of design decisions Build mitigations into the design BUT not intended for: – Finding implementation bugs (e.g., SQL injection) – Proving that your system is 100% secure Why Threat Model?

5 Threat Modeling Today

6 Whiteboards & diagramming tools SDL Threat Modeling Tool (Microsoft) Elevation of Privilege (Adam Shostack) TRIKE (Saitta, Larcom, Eddington) ThreatModeler (myappscurity.com) Threat Modeling Today

7 Diversity of threats – Multiple types of attacks, chained together Initial unknowns about system & threats – Design decisions impact knowledge Throw away once used Expressing & checking policy What Makes Threat Modeling Hard?

8 Interactive & incremental modeling – Start small, evolve model & re-analyze Reusable models – Capture & reuse domain knowledge – Extensible attack library Automated analysis – Find subtle, corner cases with exhaustive analysis Visualization – Generate & step through sample attack scenarios Threat Modeling With Poirot

9 Demo Poirot

10 Dataflow for basic representation Attack trees (Bruce Schneier) – Chaining together attacker’s actions CVE, CWE, CAPEC, and other databases Information flow labels (Dorothy Denning) – Specifying security policies Techniques from program verification – Exhaustive checking of properties Ideas We’re Borrowing From

11 How Poirot Work

12 Access control through API operations – Constraints on parameters Partiality – Start with underspecified design & strengthen Knowledge reuse through instantiation Automation – Attack generation as constraint solving Poirot: Key Ideas

13 Cannot check implementation for security vulnerabilities Cannot tell you about attacks outside the attack library Cannot tell you whether your system model is accurate What Poirot Can’t Do

14 How can Poirot be useful to you? Looking beyond the Web – Poirot is generic, and can be populated with knowledge from other domains – Medical devices – Internet of Things What’s Next?

15 Try Poirot at: sdg.csail.mit.edu/poirot Questions? eskang@mit.edu


Download ppt "AppSec USA 2014 Denver, Colorado Threat Modeling Made Interactive! Eunsuk Kang Software Design Group CSAIL, MIT."

Similar presentations


Ads by Google