Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model...

17
Dr. Raimundas Matulevičius email: [email protected] Lecture 2: Security Modelling Understanding security goals and secure business activities 1 Security Risk Management Domain Model 2

Transcript of Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model...

Page 1: Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model Phenomena not true in the world 8" Modelling Languages "9"" KAOS (goals for software

Dr. Raimundas Matulevičius email: [email protected]

Lecture 2:

Security Modelling

Understanding security goals and secure business activities

1"

Security Risk Management Domain Model

"2""

Page 2: Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model Phenomena not true in the world 8" Modelling Languages "9"" KAOS (goals for software

Goals and Questions

•  What is modelling?

•  What is Tropos –  Secure Tropos

–  Security Risk-aware Secure Tropos

•  What is BPMN

–  Security risk-oriented BPMN

3"

What is Modelling?

"5""

Page 3: Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model Phenomena not true in the world 8" Modelling Languages "9"" KAOS (goals for software

Modelling… •  Modelling can guide elicitation:

–  It can help you figure out what questions to ask –  It can help to surface hidden requirements

•  i.e. does it help you ask the right questions?

•  Modelling can provide a measure of progress: –  Completeness of the models -> completeness of the elicitation (?)

•  i.e. if we’ve filled in all the pieces of the models, are we done?

•  Modelling can help to uncover problems –  Inconsistency in the models can reveal interesting things…

•  e.g. conflicting or infeasible requirements •  e.g. confusion over terminology, scope, etc •  e.g. disagreements between stakeholders

•  Modelling can help us check our understanding –  Reason over the model to understand its consequences

•  Does it have the properties we expect? –  Animate the model to help us visualise/validate the requirements

"6""

•  A model is more than just a description –  it has its own phenomena, and its own relationships among those

phenomena. •  The model is only useful if the model’s phenomena correspond in a

systematic way to the phenomena of the domain being modelled

Source: Adapted from Jackson, 1995, p120-122

For every B, at least one P exists such that R(P, B)

The application

domain

Designations for the application

domain

Common Properties

The modelling domain

Designations for the model’s domain

B = Book P = Person R = Wrote

Book: entity Person: entity

author: relation

Systems involves a lot of modelling

Booktitle

author (0,n)(1,n)

nameISBN

Person

"7""

Page 4: Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model Phenomena not true in the world 8" Modelling Languages "9"" KAOS (goals for software

“It’s only a model” •  There will always be:

–  phenomena in the model that are not present in the application domain –  phenomena in the application domain that are not in the model

•  A model is never perfect –  “If the map and the terrain disagree, believe the terrain” –  Perfecting the model is not always a good use of your time...

Source: Adapted from Jackson, 1995, p124-5

…every book has at least one author… …every book has a

unique ISBN…

Common Phenomena

…ghost writers……pseudonyms…

…anonymity…

…no two people born on same date with same name…

Booktitle

author (0,n)(1,n)

nameISBN

Person

DOB

Phenomena not captured in the model

Phenomena not true

in the world

8"

Modelling Languages

"9""

KAOS (goals for software spec.)

i* (actor and goal modelling)

Use cases

Activity diagrams

Class diagrams

Component diagrams

BPMN

Early requirements

Late requirements

Architectural design

Detailed design

Implementation and testing

Page 5: Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model Phenomena not true in the world 8" Modelling Languages "9"" KAOS (goals for software

Security Modelling Languages

"10""

KAOS extension to security

Secure TROPOS

Misuse cases

Mal-activity diagrams

UMLsec

SecureUML

Early requirements

Late requirements

Architectural design

Detailed design

Implementation and testing

Security Risk-oriented BPMN

Security Modelling Languages

"11""

KAOS extension to security

Secure TROPOS

Misuse cases

Mal-activity diagrams

UMLsec

SecureUML

Early requirements

Late requirements

Architectural design

Detailed design

Implementation and testing

Security Risk-oriented BPMN

Page 6: Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model Phenomena not true in the world 8" Modelling Languages "9"" KAOS (goals for software

Goal modelling •  Approach

–  Focus on why a system is required –  Use goal refinement to arrive at specific

requirements –  Goal analysis

•  document, organize and classify goals –  Goal hierarchies show refinements and

alternatives •  Advantages

–  Reasonably intuitive –  Explicit declaration of goals provides sound

basis for conflict resolution

•  Disadvantages –  Captures a static picture - what if goals

change over time? –  Can regress forever up (or down) the goal

hierarchy

13

•  Goals:-–  Describe"func2ons"that"

must"be"carried"out"

•  Actors:-–  Owners"of"goals"

•  Tips:-–  Mul2ple"sources"?"be@er"

goals"–  Associate"stakeholders"with"

each"goal"–  Use"scenarios"to"explore"

how"goals"can"be"met"

Tropos Constructs

14"

Page 7: Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model Phenomena not true in the world 8" Modelling Languages "9"" KAOS (goals for software

"15""

Tropos Constructs

16"

Page 8: Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model Phenomena not true in the world 8" Modelling Languages "9"" KAOS (goals for software

Secure Tropos

"17""

•  Security constraint –  Restriction related to

the security of the system

–  Influence the analysis and design of a system

–  Restricts alternative design solutions

•  Secure dependency –  Introduces security

constraint(s) that must be fulfilled for the dependency to be satisfied

"19""

Security risk management process

Page 9: Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model Phenomena not true in the world 8" Modelling Languages "9"" KAOS (goals for software

"20""

Context and Assets Identification

•  Description of organisation and its environment –  sensitive activities related to information security

20"

"21""

Security Objectives Determination •  Determine the security objectives to be reached

–  Confidentiality, Integrity, Availability

21"

Page 10: Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model Phenomena not true in the world 8" Modelling Languages "9"" KAOS (goals for software

"22""

Risk Analysis and Assessment

•  Identify risks and estimate them qualitatively or quantitatively

22"

"23""

Risk Analysis and Assessment

•  Identify risks and estimate them qualitatively or quantitatively

23"

Page 11: Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model Phenomena not true in the world 8" Modelling Languages "9"" KAOS (goals for software

"24""

Risk Treatment Decisions

Risk-treatment-decisions-

Defini?on-

Avoiding-risk- Decision"not"to"be"involved"in,"or"to"withdraw"from"a"risk"

Transferring-risk- Sharing"with"another"party"the"burden"of"loss"for"a"risk"

Retaining-risk- Accep2ng"the"burden"of"loss"from"a"risk"

Reducing-risk- Ac2on"to"lessen"the"probability,"nega2ve"consequences,"or"both,"associated"with"a"risk"

24"

"25""

Security Requirements Definition •  Security requirements - security solutions to

mitigate the risks

•  If security requirements are unsatisfactory –  Revise the risk treatment step –  Revise all of the preceding steps

25"

Page 12: Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model Phenomena not true in the world 8" Modelling Languages "9"" KAOS (goals for software

"26""

Control Selection and Implementations •  Implement system countermeasures within

organisation

26"

Business Process Modelling •  Approach

–  What organisation needs to do to achieve their business objectives?

•  Advantages –  Reasonably intuitive –  Explicit declaration of business

activities, processes and sub-processes

•  Disadvantages –  Captures only

a dynamic picture –  Not focussed on the business

support by technology

28

Page 13: Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model Phenomena not true in the world 8" Modelling Languages "9"" KAOS (goals for software

Business Process Model and Notation version 2.0

•  Descriptive Modelling •  Analytical Modelling •  Executable Modelling

"29"" (White, 2004, http://www.bpmn.org/)

Business Process Model and Notation Simple example

"30"" (White, 2004, http://www.bpmn.org/)

Page 14: Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model Phenomena not true in the world 8" Modelling Languages "9"" KAOS (goals for software

31"

"34""

Asset identification // Security objectives determination

34"

Page 15: Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model Phenomena not true in the world 8" Modelling Languages "9"" KAOS (goals for software

"35""

Risk Analysis

35"

"36""

Risk Treatment Decisions

Risk-treatment-decisions-

Defini?on-

Avoiding-risk- Decision"not"to"be"involved"in,"or"to"withdraw"from"a"risk"

Transferring-risk- Sharing"with"another"party"the"burden"of"loss"for"a"risk"

Retaining-risk- Accep2ng"the"burden"of"loss"from"a"risk"

Reducing-risk- Ac2on"to"lessen"the"probability,"nega2ve"consequences,"or"both,"associated"with"a"risk"

36"

Page 16: Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model Phenomena not true in the world 8" Modelling Languages "9"" KAOS (goals for software

"37""

Security Requirements Definition •  Security requirements - security solutions to

mitigate the risks

•  If security requirements are unsatisfactory –  Revise the risk treatment step –  Revise all of the preceding steps

37"

"38""

Control Selection and Implementation

38"

Page 17: Lecture 2: Security Modelling(0,n) (1,n) name ISBN Person DOB Phenomena not captured in the model Phenomena not true in the world 8" Modelling Languages "9"" KAOS (goals for software

Message to take home

•  Security Modelling •  Security Modelling Languages

–  Security risk-aware Secure Tropos –  Security risk-oriented BPMN –  Misuse cases –  Mal-activity diagrams

40"