BRINGING RAPID
PROTOTYPING TO THE
THREAT MODEL PROCESS
GEOFF HILL
TUTAMANTIC
OR... WHAT I HAVE DONE TO MAKE MY THREAT MODELLING LIFE
EASIER
LICENSE FOR USE
This work is licensed under the Creative Commons Attribution-
NonCommercial-ShareAlike 4.0 International License. To view a copy
of this license, visit http://creativecommons.org/licenses/by-nc-
sa/4.0/ or send a letter to Creative Commons, PO Box 1866,
Mountain View, CA 94042, USA.
https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode
WHO IS THIS GUY?!?
DEVELOPED A…
• fair-value options model
in NYC commodities
floor in the early 90s
RAN
AROUND
…
• the world,
being a
developer in
mid-late 90s
Will
code
for
food
STARTED
WITH…
• Microsoft in 2002,
jumped into
appSec right away
DEVELOPED
A…
• SDL for ‘customers
using Agile’ in
2004 at Microsoft
UK
CREATED A…
• project security
tracker using
modified financial
models to score
risk
WORKED
WITH…
• Visa Europe for 4
years as the only
appSec architect
CURRENTLY WORKING…
• at Photobox as the acting global
head of appSec
CREATOR OF…
THE TUTAMEN
AUTOMATED THREAT
MODELLING SYSTEM
LET’S
ROLL…
• Steps in traditional TM
• Why traditional TM fails in DevOps/CI world
• Overview of Agile Architecture
• Introduction to rapid prototyping
• Introduction to Rapid TM prototyping
STEPS IN A TRADITIONAL THREAT MODEL
PROCESS
LOTS OF
TALKS WITH
LOTS OF
STAKEHOLDERS
FIGURING OUT THE UNDERLYING
MODEL
DFDS AND EPHEMERAL TRUST BOUNDARIES
Rapid Threat Model Prototyping methodology
DOES THIS
LOOK LIKE
ANY
UNDERLYING
ARCHITECTU
RE?
Add Mitigations and Threats
…By consensus?
OTHER
DEMANDS
OF YOUR
TIME
OEH NOEZ!!!
FINAL
SPRINT!!!
MEMORABLE QUOTE
• Threat modeling a complex system is a time-
consuming exercise and requires a lot
of planning and coordination.
• Don’t get disheartened; remember that your work group probably
includes people with no formal threat modeling training, and they
likely have their own workloads and operational priorities outside of
the threat modeling effort.
WHY TRADITIONAL THREAT MODELLING
FAILS IN A DEVOPS/CI WORLD
• Can’t do it fast enough
• More detail than is necessary
• Not consistent with terminologies
• Can’t plug into a CI pipeline easily
OVERVIEW OF AGILE ARCHITECTURE
• First part
• Intentional architecture
• Consistency for changing
environments
• Enabling cross-team design
• reduces redundancies
OVERVIEW OF AGILE ARCHITECTURE
• Second part
• Emergent design
• Organic grown by team
• Continuous Integration and Testing
steps
• Changing requirements will change
design
INTRODUCTION TO RAPID PROTOTYPING
• Identify basic requirements
• Conceaptual Design
• test the prototype and provide feedback
• Revise and enhance
RAPID THREAT MODEL PROTOTYPING -
GOAL
• Reduce confusing
………back-and-forth
talks with the stakeholders
• GOAL - Reduce steps in doing threat
modelling
RAPID THREAT MODEL PROTOTYPING -
GOAL
• quickly identify
ELEVATION OF PRIVILEGE threats
• Reduce misinterpretation of
designs
ATTACK KILL CHAIN
RAPID THREAT MODEL PROTOTYPING -
GOAL
• Build on current
INTENTIONAL architecture
• Don’t create new DFDs
RAPID THREAT MODEL PROTOTYPING -
GOAL
• CONSISTENT data
• REPEATABLE data
• MEASURABLE data
For CI/CD & DevOps
RAPID THREAT MODEL PROTOTYPING -
PURPOSE
• Start the conversation
• 80/20 rule
• Just-enough information
• Not comprehensive… initially
GOOD CANDIDATE FOR AUTOMATION
AGREE UPON A BASE FRAMEWORK
TO COMMUNICATE ISSUES ACROSS GROUPS
INTRODUCING A CONTROVERSIAL
CHANGE…
Rapid Threat Model Prototyping methodology
BUILD ON A CURRENT CONTEXT OR PROCESS
DIAGRAM
• Model
Storming to
adapt new
requirements
• No Ack/Nack flows
• No data repetition
• Save TM data in these diagrams
• Run TM through process per diagram
change
WE WILL BE USING
THIS
• (example is
loosely
mapped to
OSI Layer 6)
DOESN’
T
FOLLOW
80/20
RULE
FOR
EFFORT
TO
REWARD
DISCOVER THE ZONES OF TRUST
(AKA… NUMBERED TRUST BOUNDARIES)
• Finds
Elevation of
Privilege
issues
quickly
• Data stores ==
highest
0
1
0
2
3
APPLY ZONE RULES
(GUIDELINES TO CALCULATE BASE ATTACKS)
• Rules are
meant to
kickstart
analysis
process
• From Lower
to Higher –
Elevation of
Privilege
• From Higher to Lower – Information
Disclosure
• Intial values on all flows are CIA values
• From 0 (or less) to greater than 0 –
Spoofing (happens at both ends)
• + Repudiation (at target)
• Denial of
Service
happen
where 0 (or
less) to
greater than
0 (flows and
target)
PROVIDE MINIMUM
DETAILS
0
1
0
2
3
SE
SRE
SRE
SRE
SE
T(R)ID
T(R)ID
T(R)ID
T(R)ID
T(R)ID
T(R)ID
RELATIVE PROBABILITY
VALUES
(TO DIAGRAM)
0
1
0
2
3
SE
SRE
SRE
SRE
SE
TID
TID
TID
TID
TID
TID
2/6
3/6
3/6
3/6
3/6
2/6
3/6
3/6
3/6
3/6
3/6
2/6
3/6
.33
.5
CRUDE WEIGHTING FOR
ATTACK PROBABILITY
DO ZONE MATH TO FIND THREAT IMPACT
• biggest
differences
from lowest
to highest
are MOST
dangerous
flows
• Perfect for automation!
• One-time entry of values
• Model dangerous Actors
with negative values
THREAT IMPACT
MULTIPLIER
0
1
0
2
3
DANGEROUS?
3/3
3/1
2/1
How do you want
to model this
role?
3/3
2/1
1.0
2.0
3/1 3.0
CRUDE RISK VALUES
(FACTOR UP BY 10)
0
1
0
2
3
FLOW1
.33
1
2
(((6*.5) +.33)/7)*1=
4.8
(((2*.5) +.33)/3)*2=
8.8
3
(((2*.5) +.33)/3)*3=
13.2
.5
.5
.5
.5
.5
.5
.33
.5
.5
MAP MITIGATIONS BASED
ON ANTI-STRIDE
PROPERTIES
0
1
0
2
3
SE
SE
SE
SE
SE
TID
TID
TID
TID
TID
TID
SE OIDC, OAUTH2
TID
SE
TLS, CONSTRAIN
OIDC, SSH
MITIGATIONS CAN BE
MAPPED IN A TABLE TO
ATTACK ELEMENTS
MITIGATIONS
• Triage on calculated Risk
• T-shirt-size on calculated
• Send this output to sprint
backlog (e.g. Jira)
THREATS
• Generate automated test
cases
• Send this output to risk
register/threat db (e.g.
ONE-PAGE SECURITY TESTING GUIDE
• Spoofing
(Authentication)
• Elevation of Privilege
(Authorization)
• Information
Disclosure (Sensitive
Data)
• Tampering (Data
validation)
• Spoofing
(Authentication)
• Elevation of Privilege
(Authorization)
• Information Disclosure
(Sensitive Data)
CLIENT SERVER
ROLES TO USE QUESTIONS TO ASK
• God
• Authenticated user
• Anonymous
• Can I READ it?
• Can I GUESS it?
• Can I CHANGE it?
SEND THREAT MODEL INFORMATION TO
PIPELINE
• JSON, XML,
CSV…
• Any
consumable
format
REPORTING
• Create
human-
readable
reports
from data!
• Attach data to release
SORT OTHER TOOLS TO INGEST TM DATA
• Risk tools
• dashboards
• Track issues in deployment
versus threats in register
MODEL STORMING AGAIN!
Rapid Threat Model Prototyping methodology

More Related Content

PPTX
2 vm provisioning
PPTX
Distributed Systems
PPT
Cloud Computing Security Challenges
PDF
Zero Trust Model Presentation
PDF
DevOpsDays Taipei 2019 - 新創導入資安?從 DevSecOps 開始
PDF
Cloud Migration
PPTX
Cloud computing and Cloud security fundamentals
PPTX
DevOps Torino Meetup - SRE Concepts
2 vm provisioning
Distributed Systems
Cloud Computing Security Challenges
Zero Trust Model Presentation
DevOpsDays Taipei 2019 - 新創導入資安?從 DevSecOps 開始
Cloud Migration
Cloud computing and Cloud security fundamentals
DevOps Torino Meetup - SRE Concepts

What's hot (20)

PDF
Streaming systems - Part 1
PDF
Migrate to Microsoft Azure with Confidence
PPT
Role based access control - RBAC
PDF
Cloud Security: A New Perspective
PPTX
Site reliability engineering
PPTX
Cloud Computing Security Issues
PPTX
Optimistic concurrency control in Distributed Systems
PDF
Managing privileged account security
PDF
MegaStore and Spanner
PPTX
CLOUD NATIVE SECURITY
PDF
Introduction to Apache Sqoop
PPTX
Moving to the cloud: cloud strategies and roadmaps
PPTX
Azure Identity and access management
PDF
Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks
PDF
Introduction to Spark Internals
PPT
Load Balancing In Cloud Computing newppt
PPTX
Cloud computing and migration strategies to cloud
PDF
Dev(Sec)Ops - Architecture for Security and Compliance
PPTX
Cloud migration
PPTX
Virtualization- Cloud Computing
Streaming systems - Part 1
Migrate to Microsoft Azure with Confidence
Role based access control - RBAC
Cloud Security: A New Perspective
Site reliability engineering
Cloud Computing Security Issues
Optimistic concurrency control in Distributed Systems
Managing privileged account security
MegaStore and Spanner
CLOUD NATIVE SECURITY
Introduction to Apache Sqoop
Moving to the cloud: cloud strategies and roadmaps
Azure Identity and access management
Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks
Introduction to Spark Internals
Load Balancing In Cloud Computing newppt
Cloud computing and migration strategies to cloud
Dev(Sec)Ops - Architecture for Security and Compliance
Cloud migration
Virtualization- Cloud Computing
Ad

Similar to Rapid Threat Model Prototyping methodology (20)

PDF
[DevSecOps Live] DevSecOps: Challenges and Opportunities
PPT
Final spiralmodel97
PPT
50500113 spiral-model
PDF
Straight Talk on Machine Learning -- What the Marketing Department Doesn’t Wa...
PPT
spiralmodel -1
PPTX
Scaling Your Architecture for the Long Term
PPTX
Software Development Life Cycle
PDF
Secure Because Math: A Deep-Dive on Machine Learning-Based Monitoring (#Secur...
PDF
Scaling security in a cloud environment v0.5 (Sep 2017)
PDF
DevSecCon London 2017: Threat modeling in a CI environment by Steven Wierckx
PDF
Goto Chicago; Journeys To Cloud Native Architecture: Sun, Sea And Emergencies...
PDF
Continuous delivery is more than dev ops
PDF
Let's not rewrite it all
PPTX
Cleaning Code - Tools and Techniques for Large Legacy Projects
PPTX
Practical Cyber: Lessons from 500,000 Miles of Security Evangelism
PPTX
Cybersecurity model and top cloud security controls for product development e...
PPTX
Threat Modeling All Day!
PPTX
TRANSFORM FROM PROJECT TO PRODUCT TO SURVIVE THE AGE OF DIGITAL DISRUPTION
PDF
New Era of Software with modern Application Security v1.0
PPTX
Site (Service) Reliability Engineering
[DevSecOps Live] DevSecOps: Challenges and Opportunities
Final spiralmodel97
50500113 spiral-model
Straight Talk on Machine Learning -- What the Marketing Department Doesn’t Wa...
spiralmodel -1
Scaling Your Architecture for the Long Term
Software Development Life Cycle
Secure Because Math: A Deep-Dive on Machine Learning-Based Monitoring (#Secur...
Scaling security in a cloud environment v0.5 (Sep 2017)
DevSecCon London 2017: Threat modeling in a CI environment by Steven Wierckx
Goto Chicago; Journeys To Cloud Native Architecture: Sun, Sea And Emergencies...
Continuous delivery is more than dev ops
Let's not rewrite it all
Cleaning Code - Tools and Techniques for Large Legacy Projects
Practical Cyber: Lessons from 500,000 Miles of Security Evangelism
Cybersecurity model and top cloud security controls for product development e...
Threat Modeling All Day!
TRANSFORM FROM PROJECT TO PRODUCT TO SURVIVE THE AGE OF DIGITAL DISRUPTION
New Era of Software with modern Application Security v1.0
Site (Service) Reliability Engineering
Ad

Recently uploaded (20)

PDF
Five Habits of High-Impact Board Members
PDF
A review of recent deep learning applications in wood surface defect identifi...
PPTX
Final SEM Unit 1 for mit wpu at pune .pptx
PDF
A contest of sentiment analysis: k-nearest neighbor versus neural network
PDF
Consumable AI The What, Why & How for Small Teams.pdf
PDF
1 - Historical Antecedents, Social Consideration.pdf
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
Improvisation in detection of pomegranate leaf disease using transfer learni...
PDF
Zenith AI: Advanced Artificial Intelligence
PDF
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
PDF
“A New Era of 3D Sensing: Transforming Industries and Creating Opportunities,...
PDF
Convolutional neural network based encoder-decoder for efficient real-time ob...
PDF
CloudStack 4.21: First Look Webinar slides
PDF
Comparative analysis of machine learning models for fake news detection in so...
PPT
What is a Computer? Input Devices /output devices
PDF
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
PDF
Taming the Chaos: How to Turn Unstructured Data into Decisions
PPTX
Custom Battery Pack Design Considerations for Performance and Safety
PDF
Produktkatalog für HOBO Datenlogger, Wetterstationen, Sensoren, Software und ...
PDF
Credit Without Borders: AI and Financial Inclusion in Bangladesh
Five Habits of High-Impact Board Members
A review of recent deep learning applications in wood surface defect identifi...
Final SEM Unit 1 for mit wpu at pune .pptx
A contest of sentiment analysis: k-nearest neighbor versus neural network
Consumable AI The What, Why & How for Small Teams.pdf
1 - Historical Antecedents, Social Consideration.pdf
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
Improvisation in detection of pomegranate leaf disease using transfer learni...
Zenith AI: Advanced Artificial Intelligence
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
“A New Era of 3D Sensing: Transforming Industries and Creating Opportunities,...
Convolutional neural network based encoder-decoder for efficient real-time ob...
CloudStack 4.21: First Look Webinar slides
Comparative analysis of machine learning models for fake news detection in so...
What is a Computer? Input Devices /output devices
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
Taming the Chaos: How to Turn Unstructured Data into Decisions
Custom Battery Pack Design Considerations for Performance and Safety
Produktkatalog für HOBO Datenlogger, Wetterstationen, Sensoren, Software und ...
Credit Without Borders: AI and Financial Inclusion in Bangladesh

Rapid Threat Model Prototyping methodology

Editor's Notes

  • #4: You’re probably thinking, what does this person have that makes him a bloody expert? Well, not much really ;-)
  • #10: Talk about the fox guarding the chicken coop!
  • #13: Based on lots of personal experience!
  • #16: DFD starts off ok
  • #17: But starts to look messy
  • #18: And ultimately messy, silly and unmaintainable HINT – YOU’RE GOING TO GET IT WRONG
  • #21: Finally… getting the model out in time… oh no, it’s the final sprint 
  • #23: NOT MANY OF THE THREAT MODEL OUTPUTS ARE DIRECTLY MEASURABLE… THEY AREN’T NUMBERS!
  • #24: Intentional architecture needed where many changes happen in many environments provides a framework for cross-team design and implementation synchronization reduces the production of redundant and/or conflicting code and designs
  • #25: Emergent design Grown incrementally by those who are closest Evolves by constant testing and Continuous Integration steps Design grows in accordance with the currently known requirements
  • #29: Why you want to identify Elevation of Privilege threats first… the most dangerous attack step is the C&C step.
  • #30: Build on the current Intentional architecture instead of creating additional diagrams to support
  • #31: Make inputs and outputs consistent to enable inclusion in an automated CI/CD & DevOps environment
  • #32: Remember the purpose of rapid prototyping… to start a conversation, not create a complete in-depth threat and mitigation listing!
  • #36: In digital security, non-repudiation means: A service that provides proof of the integrity and origin of data. An authentication that can be said to be genuine with high confidence
  • #37: Find a representative context or process diagram with help from the relevant architect/designer Model storming at beginning of sprint – define work items in diagram You don’t need Ack/Nack flows! Same protocol over same communication = same threat vectors! Put in a process to upload the diagram into the DevOps process on each diagram change. The TM will show the differences (lack of data or added metadata)
  • #38: This example loosely maps to OSI Layer 6 (presentation layer) Again looking broadly, Layer 7 (application) would be apps inside AWS (example) Equivalent of Layer 5 (session) would be network communication diagram https://searchnetworking.techtarget.com/definition/OSI
  • #39: Attack trees are too fiddly and too time consuming for little reward.
  • #42: Rules are meant as a kickstart to get you started
  • #43: These values are a starting CONVERSATION point, to get discussing going. There is no need to go into detail… keep it lean.
  • #44: The values in-and-of-themselves are meaningless, but provide a crude weight for attack probability
  • #45: Rules are meant as a kickstart to get you started
  • #46: The difference in zones between endpoints provides a crude impact measure. Higher gaps will provide more critical areas of concern.
  • #51: This shows a quick guide for functional testers to quickly create security tests by asking some simple questions about data on client and server, and using certain roles to see the data.
  • #52: You are sending across the minimum amount of data to get the job done.