Threat Modelling with STRIDE/Attack Trees Flashcards

(27 cards)

1
Q

What do vulnerability-threat-control-frameworks do?

A

Describe how assets may be harmed and how to counter/mitigate that harm

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Why are threats modelled?

A

Find issues early
Improve security requirements
Mitigate risks

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Three Types of Threat Models with examples

A
  • Attacker-centric – starts with attacker/goals (e.g. attack trees)
  • System-centric – models system dynamics/logic (e.g. STRIDE)
  • Asset-centric – focuses on assets and CIA branches (e.g. ISO27005)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What does STRIDE stand for?

A

Spoofing
Tampering
Repudiation
Information Disclosure
Denial of Service
Elevation of Privileges

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Spoofing - definition, property, example

A

Definition - impersonating something/someone else
Property – authentication
Ex – pretending to be Microsoft.com

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Tampering - definition, property, example

A

Definition: modifying data/code
Property – integrity
Ex – modifying a DLL on disk

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Repudiation - definition, property, example

A

Definition - denying actions Property – non-repudiation
Ex – I didn’t send that email

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Information disclosure - definition, property, example

A

Definition - exposing data to unauthorised party
Property – confidentiality
Ex – leaking credit cards

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Denial of service - definition, property, example

A

Definition - denying or degrading services to users
Property – availability
Ex – CPU overload

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Elevation of Privileges - definition, property, example

A

Definition - gaining capabilities w/o proper authorisation
Property – authorisation
Ex – becoming admin

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Steps in STRIDE process

A

Step 1: Model the software system. Use data flow diagram (DFD) for functionality and data flow.

Step 2: Identify the threats. Apply STRIDE to DFD elements

Step 3: Mitigate the threats. Redesign to address threats (generates security requirements)

Step 4: Validate. Ensure threats are removed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

DFD Elements

A

External entity = data source/sink (e.g., user, other system)
Process = data action (e.g., transformation)
Data store = storage (e.g., DB file)
Data flow = labelled arrows (uni/bi-directional)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

DFD Levels

A

level 0 (context: overview, single process). Level 1+ (detailed processes/stores)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What are trust boundaries in DFD?

A

Dashed lines where control changes (e.g., machine/privilege); ignore threats inside trusted areas

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

DFD validation rules

A

No magic data
No sinks
Flows through processes
stick to model

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Application of STRIDE

A

Process - apply all STRIDE
Data store/data flow - apply TID
Data store with logs - apply TID+R
External entity - apply SR

17
Q

What do you do after STRIDE is applied?

A

Number each DFD element
Write the set of threats that impact that element

18
Q

What is an attack tree?

A

A tree data structure modeling attacks from attacker’s view
Root = global goal
Children = sub-goals (AND/OR)

19
Q

Benefits of attack trees

A

Structured
Visual
Modular
Reusable
Attacker-centric for likely threats

20
Q

Key questions for attacker-centric modelling

A

Adversaries? Motivations/goals? Inside info? Funding? Risk aversion?

21
Q

Motivation for using attack trees over system-based modelling

A

Avoids random/incomplete lists
Thinks like attacker for better threat identification

22
Q

Difference between AND and OR nodes in attack trees?

A

AND: All sub-goals required
OR: Any one sub-goal sufficient.

23
Q

Notation for Nodes AND

A

Graphical: straight line connecting children
Textual: Goal G0
AND G1
G2

Gn

24
Q

Notation for Nodes: OR

A

Graphical - curved/dotted line
Textual: Goal G0
OR G1
G2

Gn

25
Boolean Attrbiutes
Assign to leaf notes (e.g. possible/impossible, easy/hard, expensive/inexpensive, legal/illegal, special equipment/no special equipment) Propagate up: AND = all true; OR = any true
26
How do continuous attributes (e.g., cost) propagate?
AND = value of sum of their children OR = value of their cheapest child
27
Contrast attack trees vs STRIDE
Attack Trees: Attacker goals/paths; STRIDE: System elements via DFD/mnemonic