Vorlesungsfolien "STAMP/STPA" zur Vorlesung "Sichere und zuverlässige...

Preview:

DESCRIPTION

Die Vorlesung vom 20.10.2014 über die auf Systemtheorie basierende Sicherheitsanalysetechnik STAMP und STPA.

Citation preview

www.uni-stuttgart.de

Sichere und zuverlässige Software-Systeme

Prof. Dr. Stefan WagnerInstitut für Softwaretechnologie

@prof_wagnerst

Wintersemester 2014/15

Sie dürfen diesen Vortrag

kopieren, teilen und verändern,

filmen und fotografieren,

bloggen, live-bloggen und twittern

unter der Voraussetzung, dass Sie ihn demAutor zuordnen und die Rechte undLizenzen der Teile respektieren.

basiert auf Vorlagen von @SMEasterbrook und @ethanwhite

Safety

System

Gefährdung

Safety und Zuverlässigkeit

Annahme 1: Safety erhöht man dadurch, indem man System- oder Komponentenzuverlässigkeit erhöht. Falls Komponenten oder Systeme nicht ausfallen werden auch keine Unfälle passieren.

Ein Flugzeug, das wegen einer Softwaresicherung nicht startet: sicher, aber nicht zuverlässig

Safety und Zuverlässigkeit

Neue Annahme 1: Eine hohe Zuverlässigkeit ist weder notwendig noch hinreichend für Safety.

Unfälle als eine Folge von Ereignissen

Annahme 2: Unfälle werden durch eine Folge von direkt zusammenhängenden Ereignissen ausgelöst. Wir können Unfälle verstehen und das Risiko analysieren, indem wir diese Folge von Ereignissen betrachten.

Heinrichs Dominomodell

Direkte Kausalität?

Subjektive Auswahl

Warum wird für viele Unfälle „menschliches Versagen“ des Operateurs, Fahrers oder Piloten als Ursache genannt?

Systemische Faktoren

Technologie hat immer einen Kontext, in dem sie existiert.Wieso betrachten Ereignisketten dann normalerweise nur technische Ereignisse?

Johnsons Drei-Ebenen-Modell

CONTRIBUTING FACTORS

DIRECT FACTORS

SYSTEMIC FACTORS

Neue Annahme 2: Unfälle sind komplexe Prozesse, die das ganze soziotechnische System beinhalten. Traditionelle Ereignisfolge-Modelle können diesen Prozess nicht adäquat beschreiben.

Unfälle als eine Folge von Ereignissen

Systemtheorie

• Betrachtet Systeme immer als Ganzes• Annahme: manche System-Eigenschaften können

nur ganzheitlich betrachtet werden• Verknüpft soziologische und technische Aspekte• Damit kann organisierte Komplexität analysiert

werden• Beruht auf zwei Ideenpaaren:• Emergenz und Hierarchie• Kommunikation und Regelung

Emergenz und HierarchieZwiebelform

Ringform

Zellform

Eine Regelschleife

Controlled Process

Sensors

Controller

Actuators

Disturbances

Process OutputsProcess Inputs

MeasuredVariables

ControlledVariables

Control AlgorithmsSet Points,

Systemtheorie und Sicherheit

• Unfälle entstehen aus der Interaktion der Systemkomponenten untereinander und mit der Umwelt.

• Sicherheit ist eine emergente Eigenschaft die in dieser Interaktion entsteht.

• Sicherheit wird durch eine Menge an Einschränkungen für das Verhalten der Systemkomponenten geregelt.

Einschränkung:Die Gegenschub-raketen bleiben eingeschalten,bis das Raumschiff dieOberfläche des Planetenerreicht.

Controlled Process

Sensors

Controller

Actuators

Disturbances

Process OutputsProcess Inputs

MeasuredVariables

ControlledVariables

Control AlgorithmsSet Points,

Sicherheit ist ein Regelungsproblem

Hall-Effekt-Sensor

Geräusch- lautstärke

Ausschalter Raketen

Gegen- schub

Software- Regler

Controlled Process

Sensors

Controller

Actuators

Disturbances

Process OutputsProcess Inputs

MeasuredVariables

ControlledVariables

Control AlgorithmsSet Points,

Sicherheit ist ein Regelungsproblem

Hall-Effekt-Sensor

Geräusch- lautstärke

Ausschalter Raketen

Gegen- schub

Regler

Automatischer Regler

Mensch Physisches Design

Soziale Regelung

Prozess

STAMP

• System-Theoretic Accident Model and Process• Zur Beschreibung dieser Regelprozesse• Zum Verständnis, warum die Regelung nicht

funktioniert hat• Zur Erarbeitung, wie die Regelung funktionieren

sollte• Drei Konstrukte:

• Sicherheitseinschränkungen• Hierarchische Sicherheitsregelstrukturen• Modelle des Prozesses

Controller 2

process changes,(Flaws in creation,

or adaptation)

Sensor

Component failures

Incorrect or no

Feedback Delays

missing feedbackInadequate or

control actionineffective or missing

Inappropriate,

Delayedoperation

Controller

Actuator

Controlled Process

extermal informationControl input or

wrong or missing

Changes over time

Measurement

Feedback delays

information provided

inaccuracies

InadequateOperationoperation

Inadequate

1

4

4 3

AlgorithmInadequate Control2

Process Modelinconsistent,

incomplete, orincorrect

3

Unidentified orout−of−range

Process outputcontributes to

disturbance

system hazard

Process inputmissing or wrong

Conflicting control actions

incorrect modification

Unsichere Eingaben von höheren

Ebenen

Unsichere Algorithmen

Falsches Modell des Prozesses

Falsche Prozess- ausführung

Feedback ChannelsContinual Improvement

and Assumptions

Safety Constraints,Operating Requirements,

AnalysisHazardDesign

Decisions

Leadership Culture Behavior PolicySafety Management PlanSafety Information System

Engineering Development

Investigation ReportsExperienceProblems,

Management

OperationsOperations Safety Management PlanOperational ControlsMaintenance PrioritiesChange Management

Hazard AnalysisAudits/Performance AssessmentsProblem Reporting System

Education and TrainingContinual Improvement

Accident/Incident Causal Analysis

Safety Requirements/ConstraintsDesign Rational, Assumptions

Hazards

Human Task Analysis

System Operations Analysis

PhysicalUsageOperational Environment

Hazard Analysis and

Safety Control Structure

Safety−Guided Design

Responsibility, Accountability, AuthorityControls

Notwendige Aktivitäten

• Definieren von Unfällen und unakzeptablen Verlusten

• Definieren von Gefährdungen (Hazards)• Definieren von Sicherheitsanforderungen und

Einschränkungen• Definieren der Sicherheitsregelstruktur

Accident: An undesired or unplanned event that results in a loss, including loss of human life or human injury, property damage, environmental pollution, mission loss, etc.

Leveson (2011)

Beispiel Explorer Spacecraft

A1. Menschen oder menschliche Güter auf der Erde werden getötet oder beschädigt.

A2. Menschen oder menschliche Güter werden außerhalb der Erde getötet oder beschädigt.

A3. Außerirdische Organismen werden getötet oder mutiert.

A4. Die wissenschaftlichen Daten für die Missionsziele werden nicht erhoben.

A5. Die wissenschaftlichen Daten für die Missionsziele werden unbrauchbar bevor sie untersucht werden können.

A6. Irdische Organismen werden mit außerirdischen Organismen verwechselt.

A7. Ein Störfall stört zukünftige Missionen.

Systemgefährdungen

Hazard: A system state or set of conditions that, together with a particular set of worst-case environmental conditions, will lead to an accident (loss).

Leveson (2011)

...Condition(s) Condition(s)Event2 3

Event1

Event

Identifikation der Gefährdungen

Gefährdung (Hazard)

Verlust

führt zu wird ausgelöst durch

Beispiele

Unfall Gefährdung

Menschen sterben durch Kontakt zu giftigen Chemikalien.

Giftige Chemikalien aus dem Chemiewerk sind in der Atmosphäre.

Menschen sterben durch radioaktive Verstrahlung.

Radioaktive Materialien des Kernkraftwerks sind nicht abgeschottet.

Fahrzeug kollidiert mit anderem Fahrzeug. Fahrzeug hält nicht den minimalen Abstand zum anderen Fahrzeug ein.

Menschen sterben durch Lebensmittelvergiftung.

Verkaufte Lebensmittel enthalten gefährliche Stoffe.

Sicherheitsanforderungen

Gefährdung (Hazard)

Sicherheitsanforderungen und Einschränkungen

ableiten aus verhindern

Beispiele

Gefährdung Systemsicherheitseinschränkung

Giftige Chemikalien aus dem Chemiewerk sind in der Atmosphäre.

Giftige Chemikalien dürfen nicht aus dem Chemiewerk in die Atmosphäre gelassen werden.

Radioaktive Materialien des Kernkraftwerks sind nicht abgeschottet.

Radioaktive Materialien des Kernkraftwerks müssen abgeschottet sein.

Fahrzeug hält nicht den minimalen Abstand zum anderen Fahrzeug ein.

Fahrzeug muss immer den minimalen Abstand zum anderen Fahrzeug einhalten.

Verkaufte Lebensmittel enthalten gefährliche Stoffe.

Lebensmittel mit gefährlichen Stoffen dürfen nicht verkauft werden.

Aufgabe

Sie sind verantwortlich für die Entwicklung von Türen einer neuen S-Bahn. Sammeln Sie Gefährdungen und passende Einschränkungen!

8 Minuten

3

Train starts with door open.

SAFETY DESIGN CONSTRAINT

1

Door opens while train is in motion

Door opens while impropertly

2

aligned with station platform

HAZARD

Train must not be capable of movingwith any door open.

Doors must remain closed while trainis in motion.

Door must be capable of opening onlyafter train is stopped and properly alignedwith platform unless emergency exists(see hazard 6 below)

Door closes while someoneis in the doorway.

Door areas must be clear beforedoor closing begins.

Door that closes on an obstructiondoes not reopen or reopened doordoes not reclose.

An obstructed door must reopen to permit removal of obstruction and thenautomatically reclose.

emergency evacuationDoors cannot be opened for Means must be provided to open doors

anywhere when the train is stopped foremergency evacuation.

6

5

4

System-Theoretic Process Analysis(STPA) • Methode zur Gefährdungsanalyse• Erkennen von Szenarien, die zu Verlusten führen• Einsatz möglichst früh in der Systementwicklung• Basis für Systementwurf und Systemzertifizierung• Herkömmliche Methoden zur

Gefährdungsanalyse• Fehlerbaumanalyse• HAZOP• FMEA

Voraussetzungen schaffen• Unfälle definieren• Gefährdungen definieren• Gefährdungen zu Sicherheitseinschränkungen

umformulieren• Sicherheitsregelstruktur zeichnen

Schritt 1Identifikation des Potentials für inadäquate Regelung des Systems, die zu einer Gefährdung führen kann• Eine notwendige Regelungsaktion wird nicht

angeboten oder befolgt.• Eine inkorrekte oder unsichere Regelungsaktion

wird angeboten.• Eine potentiell sichere Regelungsaktion wird zur

falschen Zeit oder Reihenfolge angeboten.• Eine richtige Regelungsaktion wird zu früh

beendet.

Schritt 2Bestimmung, unter welchen Umständen jede potentiell gefährliche Regelungsaktion auftreten kann.• Ergänzung der Regelstruktur um Prozessmodelle

für jede Komponente• Überprüfung aller Teile der Regelschleife, ob sie

die unsichere Regelungsaktion verursachen• Betrachtung, wie die Regelung über die Zeit

nachlassen kann und Einbau von Schutzmaßnahmen

Controller 2

process changes,(Flaws in creation,

or adaptation)

Sensor

Component failures

Incorrect or no

Feedback Delays

missing feedbackInadequate or

control actionineffective or missing

Inappropriate,

Delayedoperation

Controller

Actuator

Controlled Process

extermal informationControl input or

wrong or missing

Changes over time

Measurement

Feedback delays

information provided

inaccuracies

InadequateOperationoperation

Inadequate

1

4

4 3

AlgorithmInadequate Control2

Process Modelinconsistent,

incomplete, orincorrect

3

Unidentified orout−of−range

Process outputcontributes to

disturbance

system hazard

Process inputmissing or wrong

Conflicting control actions

incorrect modification

Unsichere Eingaben von höheren

Ebenen

Unsichere Algorithmen

Falsches Modell des Prozesses

Falsche Prozess- ausführung

(2) When the door is closed, turn on the power

PowerController

PowerHumanOperator

Actuator

Source

Sensors

Turn off powerTurn on power

Door position is openDoor position is closed

Open DoorClose Door

FUNCTIONAL REQUIREMENTS of the Power Controller:

HAZARD: Human exposed to high energy source

SYSTEM SAFETY CONSTRAINT: The energy source must be off wheneverthe door is not completely closed.

(1) Detect when the door is opened and turn off the power

Beispiel Verriegelung

Process Model

OnOffUnknown

Power

OnOffUnknown

Power

Fully ClosedUnknown

Open or partially openDoor Position

Power Controller

ActuatorSensors

SourcePower

Human Operator

Turn off powerTurn on power

Door position is open

Open DoorClose Door

Door position is closed

Process Model

Beispiel Verriegelung

not followed

Power off Power turned offwhen door closed Applicable

Not

Given IncorrectlyStoppedtoo soonWrong Timing or orderControl Action

ApplicableNot

openedwhen door closed orPower not turned onPower on

Power not turnedoff when door opened

Door opened, controllerwaits too long to turn

Power turned onwhile door opened

Power turned on tooearly; door not fully

closed

off power

Not Given or

Beispiel Verriegelung

executed in wrong order

Actuator failure Sensor failure

HAZARD: Door opened, power not turned off.

door open

Requirement not passed to designers/developersor incompletely specifiedRequirement not implemented correctly in softwareProcess model incorrect (says door closed and/or poweroff when it is not)

not received by actuator

Controller

state of door or power

Door opening not detected

Missing or spuriousfeedback about

or detection delayed

Power on;

Power off issued but

Actuator delays turning power off

Power on and power off commands

Beispiel Verriegelung

• Lämpchen zeigt Energie an/aus → Audits prüft Wissen und Verhalten der Bediener

• Verstärkung der Energiequelle → Änderungsprozess mit Prüfung, ob Abschaltzeiten ausreichen

• Ungewollter Energieaustritt → Analyse der Gefährdung und Überarbeitung des Designs

Werkzeugunterstützung

Vergleich

• FMEA und Fehlerbäume vor allem für Ausfälle (Failures) geeignet

• HAZOP betrachtet darüber hinaus auch Gefährdungen (Hazards)

• STPA betrachtet Gesamtsystem und ist auch für organisatorische Teile geeignet

• STPA hat klares Endekriterium (alle Regelungsaktionen abgehandelt)

• STPA erlaubt Priorisierung darüber, welche Regelungsaktionen die größte Rolle in einem Übergang zu Gefährdungen spielen

Weiterführende Literatur

N.  Leveson.  Engineering  a  Safer  World.  Systems  Thinking  Applied  to  Safety.  MIT  Press,  2012  P.  Checkland.  Systems  Thinking,  Systems  Practice.  John  Wiley,  1999  W.  Young,  N.G.  Leveson.  An  integrated  approach  to  safety  and  security  based  on  systems  theory.  Communications  of  the  ACM,  2014  http://sourceforge.net/projects/astpa/

Verwendete Bilder in diesem Foliensatz

Weite  Teile  dieses  Foliensatzes  basieren  auf  dem  Buch  „Engineering  a  Safer  World“  von  Nancy  Leveson.  „Airasia  plane“  by  JohnIeemk  (http://commons.wikimedia.org/wiki/File:Airasia_plane.jpg)  „Red  onion  sliced  to  the  heart“  by  anolobb  (https://flic.kr/p/8Wxwmz)  „Red  Onion“  by  Like_the  Grand_Canyon  (https://flic.kr/p/8m2Pep)  „Red  onion  cells  -­‐    in  a  salt  solution“  by  tjmwatson  (https://flic.kr/p/aiBUc9)  

Recommended