XConf Unplugged: Secure Design with Threat Modelling

ThoughtWorks 1,800 views 35 slides Nov 30, 2018
Slide 1
Slide 1 of 35
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35

About This Presentation

XConf Unplugged is a meet up series for technologists to stay up to date with the latest tech trends and news. This event is the fourth in our series and is focused on security in software development.

No-one needs convincing that they need to write secure software and deal with their users' ...


Slide Content

Jim Gumbley - ThoughtWorks
Fraser Scott - Capital One

Thinking about things that can go wrong...
…so you can do something about them...
...before they go wrong.







The are determined by
you threat model, is
involved, and you do it

DESIGN
BUILD
DEPLOY
MAINTAIN

●Three Amigos
●Whole Team
●Multi-Team

●What are we building?

●What can go wrong?

●What are we going to do about it?

●Did we do a good enough job?

●Identity
●Authentication

●Integrity
●Injection
●Validation

●Non-Repudiation
●Logging
●Audit

●Confidentiality
●Encryption
●Leakage
●Man in the middle

●Availability
●Botnets
●DDoS / DDoSaaS

●Authorisation
●Isolation
●Blast radius
●Remote Code Execution

It would be very remarkable if any system
existing in the real world could be exactly
represented by any simple model. The only
question of interest is: "Is the model
illuminating and useful?"

Juice Shop


Juice Shop

DEMO

Welcome to the
Juice Shop!

Juice Shop




1.REVIEW THE JUICE SHOP SECURITY DEBT
2.THREAT MODEL THE DISCOUNT USER STORY

Amazon Web Services













Container Runtime
Docker / AWS ECS




SQL
AWS RDS PostgresJuice Shop
Server NodeJS
Juice
Buyer
Shop
Admin
Files
AWS EBS
Engineers
Logs
ELK Stack
Juice Shop
Frontend

AngularJS
Bootstrap CSS
Google
Oauth
Travis
CI
Github




Payment
Service NodeJS

Login
View Product
View Basket
Confirm
Order
Add item to basket
[item id]
Go to BasketReturn to products
Redirect
Checkout
Remove item
[item id]
Apply Discount
Unauthenticated
on Internet
Authenticated
Juice Buyer
[Discount Code]
Checkout













threat-modeling
/r/threatmodeling/See Reddit :) www.thoughtworks.com/xconf-eu