+ All Categories
Home > Documents > Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's...

Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's...

Date post: 18-Oct-2020
Category:
Upload: others
View: 2 times
Download: 0 times
Share this document with a friend
59
Security Requirements Engineering Security Requirements Engineering for Socio-Technical Systems for Socio-Technical Systems Fabiano Dalpiaz Fabiano Dalpiaz University of Toronto, Canada University of Toronto, Canada University of Trento, Italy University of Trento, Italy www.cs.toronto.edu/~dalpiaz www.cs.toronto.edu/~dalpiaz [email protected] [email protected] September 27th, 2012 September 27th, 2012
Transcript
Page 1: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements EngineeringSecurity Requirements Engineeringfor Socio-Technical Systemsfor Socio-Technical Systems

Fabiano DalpiazFabiano Dalpiaz

University of Toronto, CanadaUniversity of Toronto, CanadaUniversity of Trento, ItalyUniversity of Trento, Italy

www.cs.toronto.edu/~dalpiazwww.cs.toronto.edu/[email protected]@cs.toronto.edu

September 27th, 2012September 27th, 2012

Page 2: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 2/59© F. Dalpiaz 2012

OutlineOutline

Part 1.Security Requirements: the landscape

● Security Requirements Engineering (SRE)

● Socio-Technical Systems (STSs)

Part 2.The Socio-Technical Security modeling language (STS-ml)

● Multi-view modeling

● Reasoning about security requirements

● Deriving the security requirements document

● Tool support: STS-Tool

Page 3: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 3/59© F. Dalpiaz 2012

1. Security Requirements: the landscape

Page 4: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 4/59© F. Dalpiaz 2012

Why Security Requirements Engineering (SRE)?Why Security Requirements Engineering (SRE)?

Different perspectives, primitives, and vocabularies

… the system shall meet thegoals of the stakeholders…

and it has to be secure!

Requirements Engineer

Security Expert

The system will use RSA-1024, SSL 3.0, RBAC, CBC-MAC, ...

Oversimplifying...

What???

Page 5: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 5/59© F. Dalpiaz 2012

Security requirements and solutionsSecurity requirements and solutions

Security requirements

● Needs concerning security that stakeholders express

● Define why security is needed and what security need

– e.g., “confidentiality”, “integrity”, …● Trade-offs with other types of requirements [Elahi 07]

● Security is a socio-technical problem

– e.g., someone leaves confidential printouts in an open space

Security solutions

● Encryption algorithms, authentication protocols, ...

Page 6: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 6/59© F. Dalpiaz 2012

Socio-Technical SystemsSocio-Technical Systems

Today's systems a complex interplay of different subsystems

● Not only technical systems, but also humans and organizations

● Each subsystem is autonomous

● Subsystems interact to fulfill their purpose

Such systems are Socio-Technical Systems

● Examples include eHealth systems, air traffic management, smart cities, disaster response, etc.

● The term was first introduced in social science [Emery 59]

[Dalpiaz 12]

Page 7: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 7/59© F. Dalpiaz 2012

An example of STS: smart homesAn example of STS: smart homes

Page 8: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 8/59© F. Dalpiaz 2012

Another example of an STSAnother example of an STS

Fabiano

trip booke

d

Cheap travels inc.

flight itinerary identified

Porter AirlinesAir Canada

Itinerary provided

CityHotel

room availability

tutorial given

social dependence

Page 9: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 9/59© F. Dalpiaz 2012

The security problem in STSsThe security problem in STSs

Interaction is everywhere!

● Technical Sys to Technical Sys

● Technical Sys to Social Actor (and viceversa)

● Social Actor to Social Actor

Subsystems are autonomous!

● No control → how to guarantee security?

● Existing approaches are not well suited

– Take a rather centralized viewpoint

– Limited account of interaction

Page 10: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 10/59© F. Dalpiaz 2012

The security requirements The security requirements engineerengineer

Security requirements

engineer

… the socio-technical system shall ensure confidentiality of

Fabiano's personal data, because...

+ =

Page 11: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 11/59© F. Dalpiaz 2012

SRE: state-of-the-artSRE: state-of-the-art

Several concepts are to be considered

● Security goal

● Security policy

● Security requirements

● Security mechanism

● Security risk

● Threat

● Attack

● Asset

● Vulnerability

SRE approaches are not comprehensive

[Firesmith 04]

Page 12: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 12/59© F. Dalpiaz 2012

Analysis framework: SRE for STSsAnalysis framework: SRE for STSs

We review existing approaches by considering these factors

● Primitive concepts

● Modeling language

– None, informal, formal● Perspective

– Organizational, Attacker-oriented, System-oriented

● Existence of a method

● Development phase

– Early requirements, late requirements, support for design?

● Automated analysis tools

● Socio-Technical perspective

Page 13: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 13/59© F. Dalpiaz 2012

SRE methodsSRE methods

They describe how to conduct an SRE process

● Focus on the elicitation method and key concepts

● No social perspective

● No modeling language nor formal analysis

Requirements types – guidelines to elicit each type [Firesmith 03]

Threat-driven

Types: identification, authentication, authorization, immunity, integrity, intrusion detection, nonrepudiation, privacy,...

Requirements types – guidelines to elicit each type [Firesmith 03]

Threat-driven

Types: identification, authentication, authorization, immunity, integrity, intrusion detection, nonrepudiation, privacy,...

SQUARE: Security Quality Requirements Engineering [Mead 05]

9-steps methodology

Goal-based at the early stage

Includes risk assessment

Prioritization

Expressly thought for practitioners

SQUARE: Security Quality Requirements Engineering [Mead 05]

9-steps methodology

Goal-based at the early stage

Includes risk assessment

Prioritization

Expressly thought for practitioners

Page 14: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 14/59© F. Dalpiaz 2012

SRE: The “Abuse/Misuse” familySRE: The “Abuse/Misuse” family

Crux: elicit and model attack scenarios

● Focus is mainly on system to-be usage, few early concerns

● Informal modeling language, no analysis

● No social perspective (only system-user)

Abuse cases [McDermott 99]Misuse cases [Sindre 00]

Page 15: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 15/59© F. Dalpiaz 2012

SRE: Anti-modelsSRE: Anti-models

Aim at identifying which are the goals of attackers

● Higher level of abstraction, a goal comprises several scenarios

● Formal modeling language

● Automated analysis is possible: finding the “best” alternative

● No social primitives

[van Lamsweerde 04]

Page 16: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 16/59© F. Dalpiaz 2012

SRE: Context and ArgumentationSRE: Context and Argumentation

Create a context for the system, using problem frames

Develop satisfaction arguments for security requirements

● Arguments fails if (1) the security requirements are not satisfiable in the context, or (2) the context is insufficient to develop the argument

Formal language, automated reasoning is possible

● System-oriented, no social perspective

[Haley 08]

Page 17: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 17/59© F. Dalpiaz 2012

SRE: Social approaches (1)SRE: Social approaches (1)

Explicitly acknowledge that the system involves the interaction among a number of actors socially depending on one another

● Exploit variants of the i* framework [Yu 96]

● Organizational perspective

● Capture security at the early requirements stage

SI* [Zannone 07]

Formal modeling language based on delegation, permission on assets, and trust

Automated reasoning

Page 18: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 18/59© F. Dalpiaz 2012

SRE: Social approaches (2)SRE: Social approaches (2)

Secure Tropos [Mouratidis 07]

Security constraints on dependencies

Secure entities (goals, tasks, resources) to talk about security requirements

From early reqs to design

● Extends the Tropos methodology [Bresciani 2004]

● Detailed design with AUML

Privacy [Liu 03]

Puts together the organizational perspective and the attacker perspective

Detect vulnerabilities → Identify countermeasures → Specify access control

Page 19: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 19/59© F. Dalpiaz 2012

2. The Socio-Technical Security modeling language (STS-ml)

Co-authors: Elda Paja, Paolo Giorgini

Page 20: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 20/59© F. Dalpiaz 2012

STS-mlSTS-ml

Role- and goal-oriented requirements modeling language

● Organizational perspective

Models are built diagrammatically

● Multiple views, each focusing on a specific perspective

● Formal language that supports automated reasoning about the expressed security needs

Security reqs as social contracts that constrain interactions

● Social dependence

● Documents exchange

[Dalpiaz 11]

Page 21: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 21/59© F. Dalpiaz 2012

STS-ml: outlineSTS-ml: outline

Security Requirements

Engineer

STS-ml views: social, information, authorization

Security Requirements Document

expresses security needs

automated derivation via

STS-Tool

Page 22: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 22/59© F. Dalpiaz 2012

The STS-ml methodThe STS-ml method

Modeling Activities

Phase 1. Model the Social View Step 1.1 Identify stakeholders Step 1.2 Identify assets and interactions Step 1.3 Express security needs

Phase 2. Model the Information View Step 2.1 Identify information and its owner Step 2.2 Represent information structure

Phase 3. Model the Authorization View Step 3.1 Model authorizations

[refinement needed]

Phase 5. Derive Security Requirements Step 5.1 Derive security requirements document

Phase 4. Automated analysis Step 4.1 Consistency analysis Step 4.2 Security analysis

[analysis errors/warnings]

Page 23: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 23/59© F. Dalpiaz 2012

Phase 1. Modeling the social viewPhase 1. Modeling the social view

Step 1.1 Identify stakeholders

● Agents and roles

Step 1.2 Identify assets and interactions

● Assets: goals, documents

● Interactions: goal delegations and document provisions

Step 1.3 Express security needs

● Express expectations concerning security over interactions

– Elicited from the stakeholders

Page 24: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 24/59© F. Dalpiaz 2012

Social view: an exampleSocial view: an example

role

document

goal delegation

document provision

goal

agent

Page 25: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 25/59© F. Dalpiaz 2012

Step 1.1 Identify stakeholdersStep 1.1 Identify stakeholders

Elicit roles and agents

● Role is an abstract characterization of the behavior of an active entity within some context

– Most participants are unknown at design time

– e.g., Tourist, Travel Agency Service, Hotel, …

Agents play (adopt) roles at runtime, and they can change the roles they play

● e.g., Bob, Fabiano, CheapTravels Inc.

● Some agents are known, e.g., Amadeus Flight Service

Page 26: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 26/59© F. Dalpiaz 2012

Step 1.2 Identify assets and interactionsStep 1.2 Identify assets and interactions

A goal is a state of affairs that an actor intends to achieve

● e.g., trip planned, flight tickets booked

● Used to capture motivations and responsibilities of actors

Goal can be decomposed (refined)

Or-decomposition And-decomposition

Page 27: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 27/59© F. Dalpiaz 2012

Step 1.2 Identify assets and interactionsStep 1.2 Identify assets and interactions

Goal delegation

● An actor (delegator) delegates the fulfillment of a goal (delegatum) to a different actor (delegatee)

– Lack of capability or transfer of responsibility

● e.g., Tourist is not capable of booking the tickets on his own, he depends on a Travel Agency Service to achieve this goal

● In STS-ml, only leaf goals can be delegated

Page 28: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 28/59© F. Dalpiaz 2012

Step 1.2 Identify assets and interactionsStep 1.2 Identify assets and interactions

A document represents an exchangeable entity which may contain some information

● Actors possess or manipulate documents to achieve their goals

Goal-document relationships

● An actor may need one or more documents to fulfill a goal

● An actor may produce documents while fulfilling a goal

● An actor may modify a document while fulfilling a goa

Page 29: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 29/59© F. Dalpiaz 2012

Step 1.2 Identify assets and interactionsStep 1.2 Identify assets and interactions

Document provision

● Captures an exchange of documents between a provider actor and a providee actor

● Provider: an actor that possesses the document

● Providee: an actor that might need documents to achieve its goals

Page 30: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 30/59© F. Dalpiaz 2012

Step 1.3 Express security needsStep 1.3 Express security needs

Non-delegation

The re-delegation of the fulfillment of a goal is forbidden

Non-repudiation● The delegator cannot repudiate he delegated● The delegatee cannot repudiate he accepted the delegation

Page 31: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 31/59© F. Dalpiaz 2012

Step 1.3 Expressing security needsStep 1.3 Expressing security needs

Redundancy

Alternative ways of achieving a goal

Different redundancy types

● True and Fall-back

● Single- and Multi-Actor

Combine/Incompatible

Two goals shall be achieved by different (the same) actors

● e.g., two people required to open a safebox

Two roles are incompatible, i.e., cannot be played by the same agent

● e.g., one cannot process his own loan application!

Page 32: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 32/59© F. Dalpiaz 2012

Step 1.3 Expressing security needsStep 1.3 Expressing security needs

Integrity of transmission

The document shall not be altered during the transmission from the sender to the receiver

Page 33: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 33/59© F. Dalpiaz 2012

Social view: expressing security needsSocial view: expressing security needs

non-delegationIntegrity of transmission

non-repudiationredundancy

Incompatibility (separation of duties)

Page 34: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 34/59© F. Dalpiaz 2012

Phase 2. Modeling the information viewPhase 2. Modeling the information view

Step 2.1 Identify information and its owner

● Confidentiality requirements are concerned with protecting the disclosure and usage of information

● Documents represent information

● Represent the owners of different information

Step 2.2 Represent information structure

● Tangible By: information → document

● Part Of: info (doc)→ info (doc)

Page 35: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 35/59© F. Dalpiaz 2012

Information view: an exampleInformation view: an example

information

ownership

Page 36: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 36/59© F. Dalpiaz 2012

Phase 3. Modeling the authorization viewPhase 3. Modeling the authorization view

Step 3.1 Model authorizations

● Transfer of rights/permission between actors

Authorizations about information, specifying

● Scope of usage (a set of goals)

– The customer permits the travel agency to use her personal data only to book the tickets

● Allowed operations: use (read), modify, produce, distribute

● Transferability

– Further propagate rights to other actors

Page 37: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 37/59© F. Dalpiaz 2012

Authorization view: an exampleAuthorization view: an example

Allowed operations: Use, Modify, Produce, Distribute

information

scope

Page 38: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 38/59© F. Dalpiaz 2012

Expressing security needs via authorizationsExpressing security needs via authorizations

Security needs about confidentiality are expressed by allowing only certain operations and limiting the scope

● Need-to-know ← limiting the scope

● Non-usage ← not allowing usage

● Non-modification ← not allowing modification

● Non-production ← not allowing production

● Non-disclosure ← not allowing distribution

Page 39: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 39/59© F. Dalpiaz 2012

Need-to-know: can use personal data only in the scope of hotel booked

Non-production: cannot produce documents that represent personal data or itinerary

Security needs via authorizations

Page 40: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 40/59© F. Dalpiaz 2012

Non-disclosure: documents representing personal data or itinerary cannot be distributed

Non-modification: cannot modify documents representing personal data

Security needs via authorizations

Page 41: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 41/59© F. Dalpiaz 2012

Phase 4. Automated analysisPhase 4. Automated analysis

Step 4.1 Consistency analysis

● Does the model comply with the semantics of STS-ml?

● E.g., part-of cycles, contribution cycles

Step 4.2 Security analysis

● Security requirements cannot be fulfilled in the modeled STS

● E.g., Non-delegation, non-usage, non-disclosure

Page 42: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 42/59© F. Dalpiaz 2012

Security analysisSecurity analysis

It relies upon generating possible worlds

● Identify and visualize possible problems

● The engineer fixes the problem

● Behind-the-scenes: formalization in disjunctive datalog

warning

error

Page 43: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 43/59© F. Dalpiaz 2012

Phase 5. Derive Security RequirementsPhase 5. Derive Security Requirements

Requirements models are useful for communication purposes with the stakeholders

Requirements specifications tell designers what the system has to implement

● In STS-ml, security requirements specifications are automatically derived from requirements models

● Output: security requirements document

Page 44: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 44/59© F. Dalpiaz 2012

Requirements specifications via commitmentsRequirements specifications via commitments

In STS-ml

● Security requirements constrain interactions in contractual terms

● These contracts are expressed as social commitments

Social commitment: a promise with contractual validity

● made by a debtor actor to a creditor actor

● that a state of affairs will be brought about [consequent]

● (optional) provided that another state of affairs holds [antecedent]

e.g., C(Fabiano, RE12-Chairs, slot allocated, tutorial presented)

[Singh 99]

Page 45: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 45/59© F. Dalpiaz 2012

Commitments as requirementsCommitments as requirements

Commitments can express requirements

● Rather than specifying a single system, they specify the interaction among systems

Security requirements via commitments

● Debtor actor = Responsible

● Creditor actor = Requester

● Antecedent = Precondition

● Consequent = Security requirement

Page 46: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 46/59© F. Dalpiaz 2012

Deriving security requirements: an exampleDeriving security requirements: an example

3. non-delegation 4. Integrity of transmission

1. non-repudiation2. redundancy

5. Incompatibility (separation of duties)

Page 47: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 47/59© F. Dalpiaz 2012

Derived security requirementsDerived security requirements

Responsible Security Requirement Requester

TASNon-repudiation-of-acceptance (delegated(Tourist,TAS,tickets booked))

Tourist

TouristNon-repudiation-of-delegation (delegated(Tourist,TAS,tickets booked))

TAS

TAS True-redundancy-multiple-actor (tickets booked) Tourist

Hotel Non-delegation (hotel booked) Tourist

Amadeus Service

Integrity-of-transmission (provided(TAS,Amadeus Service,Itinerary details)

TAS

any Not-achieve-both(eticket generated,credit card verified)

Org

2.

3.

4.

1.

5.

Page 48: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 48/59© F. Dalpiaz 2012

Non-modification, Non-production, Non-disclosure, Need-to-know

Deriving security requirements: an example

Page 49: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 49/59© F. Dalpiaz 2012

Derived security requirementsDerived security requirements

Responsible Security Requirement Requester

TAS need-to-know(personal data ∧ itinerary, tickets booked)

Tourist

TAS non-modification(personal data ∧ itinerary) Tourist

TAS non-production(personal data ∧ itinerary) Tourist

TAS non-disclosure(personal data ∧ itinerary) Tourist

Page 50: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 50/59© F. Dalpiaz 2012

STS-ToolSTS-Tool

STS-Tool is the modeling and analysis support tool for STS-ml

● Built on top of Eclipse

– Standalone Eclipse RCP application● Freely available for download: http://www.sts-tool.eu

● Derivation of sec. requirements

● Report generation

● Multi-platform (Win, Linux, Mac)

Page 51: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 51/59© F. Dalpiaz 2012

The STS-ml Security Requirements DocumentThe STS-ml Security Requirements Document

STS-Tool automatically generates a security requirements document, which includes

● Social, Information, and Authorization views

● Automatically generated textual description of the models

● Tables listing the main concepts

● Security requirements

How to produce a high quality document?

● Use descriptive fields in STS-Tool

Page 52: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 52/59© F. Dalpiaz 2012

The STS-ml Security Requirements DocumentThe STS-ml Security Requirements Document

Authorizations

Security requirements

Page 53: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 53/59© F. Dalpiaz 2012

Beyond the STS-ml methodBeyond the STS-ml method

Each participant is developed independently (due to autonomy)

Each participant is concerned with the security requirements related to the role it plays

Example: the implementation of a TAS has to ensure that

● The delegation of tickets booked will not be repudiated

● Personal data will not be modified

● Personal data will be used only for booking the trip

● The itinerary will not be further redistributed

Page 54: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 54/59© F. Dalpiaz 2012

Commitments at runtimeCommitments at runtime

Commitments are not only a primitive that captures the contractual nature of requirements at design-time

They arise and evolve due to the exchanged messages between debtor and creditor at runtime

● Messages are interpreted is in terms of creation, fulfilment, and violation of commitments (i.e., here, security requirements)

● Thus, they can be monitored to check compliance

Page 55: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 55/59© F. Dalpiaz 2012

ConclusionsConclusions

On Security Requirements Engineering

● The importance of security requirements is widely agreed

● Existing approaches are not well suited for STSs

SRE in the era of Socio-Technical Systems

● Security cannot be guaranteed in a centralized fashion

– Due to the autonomy of participants and their interactions

● Security requirements constrain the interaction among participants

● STS-ml is an SRE method expressly suited for STSs

Security Requirements

Engineer

+ =

Page 56: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 56/59© F. Dalpiaz 2012

AcknowledgementsAcknowledgements

The STS team @Univ. Trento

● Prof. Paolo Giorgini

● Elda Paja

● Dr. Pierluigi Roberti

● Mauro Poggianella

Valuable suggestions concerning this tutorial from John Mylopoulos, Eric Yu, and Arnon Sturm

The research leading to these results has received funding from the European Union Seventh Framework Programme (FP7/2007-2013) under grant no 257930 (Aniketos)

Page 57: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 57/59© F. Dalpiaz 2012

Thanks!Thanks!

Contact: [email protected]

More? See you at the demo track at 3.30pm

Page 58: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 58/59© F. Dalpiaz 2012

BibliographyBibliography

[Dalpiaz 11] Fabiano Dalpiaz, Elda Paja, Paolo Giorgini (2011) Security Requirements Engineering via Commitments. In Proceedings of the First Workshop on Socio-Technical Aspects in Security and Trust (STAST'11)[Dalpiaz 12] Fabiano Dalpiaz, Paolo Giorgini, John Mylopoulos (2012) Adaptive Socio-Technical Systems: a Requirements-driven Approach. Requirements Engineering Springer London. To appear[Elahi 07] Golnaz Elahi, Eric S. K. Yu: A Goal Oriented Approach for Modeling and Analyzing Security Trade-Offs. ER 2007: 375-390[Emery 59] Fred E. Emery: Characteristics of Socio-Technical Systems. Technical Report 527, London, Tavistock Institute (1959)[Firesmith 03] Donald Firesmith: Security Use Cases. Journal of Object Technology 2(3): 53-64 (2003)[Firesmith 04] Donald Firesmith: Specifying Reusable Security Requirements. Journal of Object Technology 3(1): 61-75 (2004)[Haley 08] Charles B. Haley, Robin C. Laney, Jonathan D. Moffett, Bashar Nuseibeh: Security Requirements Engineering: A Framework for Representation and Analysis. IEEE Trans. Software Eng. 34(1): 133-153 (2008)[Liu 03] Lin Liu, Eric S. K. Yu, John Mylopoulos: Security and Privacy Requirements Analysis within a Social Setting. RE 2003: 151-161[McDermott 99] John P. McDermott, Chris Fox: Using Abuse Case Models for Security Requirements Analysis. ACSAC 1999: 55-64

Page 59: Security Requirements Engineering for Socio-Technical Systems · Socio-Technical Systems Today's systems a complex interplay of different subsystems Not only technical systems, but

Security Requirements Engineering -- September 27, 2012 59/59© F. Dalpiaz 2012

BibliographyBibliography

[Mead 05] Nancy R. Mead, Ted Stehney: Security quality requirements engineering (SQUARE) methodology. ACM SIGSOFT Software Engineering Notes 30(4): 1-7 (2005)[Mouratidis 07] Haralambos Mouratidis, Paolo Giorgini: Secure Tropos: a Security-Oriented Extension of the Tropos Methodology. International Journal of Software Engineering and Knowledge Engineering 17(2): 285-309 (2007)[Sindre 00] Guttorm Sindre, Andreas L. Opdahl: Eliciting Security Requirements by Misuse Cases. TOOLS (37) 2000: 120-131[Singh 99] Munindar P. Singh: An Ontology for Commitments in Multiagent Systems. Artif. Intell. Law 7(1): 97-113 (1999)[van Lamsweerde 04] Axel van Lamsweerde: Elaborating Security Requirements by Construction of Intentional Anti-Models. ICSE 2004: 148-157[Yu 96] Eric S.K. Yu: Modelling Strategic Relationships for Process Reengineering. Ph.D. Thesis, University of Toronto (1996)[Zannone 07] Nicola Zannone: A Requirements Engineering Methodology for Trust, Security, and Privacy. PhD Thesis. Department of Information and Communication Technology, University of Trento, March 2007


Recommended