Software in sicherheitsrelevanten Systemen

Slides:



Advertisements
Ähnliche Präsentationen
Benutzerorientierte Designprinzipien für die Microsoft-Guidelines
Advertisements

Christian Scheideler SS 2009
PG Air Seminararbeit März 2002 Jürgen Wieners
Daten - Sicherung Begriffsdefinition Arten der Datensicherung
Rekursion: Rekurrenz: Algorithmen rufen sich selbst (rekursiv) auf.
On the Criteria to Be Used in Decomposing Systems into Modules
Eingebettete Systeme Qualität und Produktivität
Seminar „Extrapolationsmethoden für zufällige Felder“
SIMATIC ET 200M Systemredundanz
Kapitel 4 Syntaktische Analyse: LR Parsing.
Prof. Dr. Holger Schlingloff
Java: Objektorientierte Programmierung
Sortierverfahren Richard Göbel.
Sortierverfahren Richard Göbel.
K-Modeler Engineering
Algorithmentheorie 04 –Hashing
Tricks mit Zahlen. Kapitel 2 © Beutelspacher Mai 2004 Seite 2 Idee / Aufgaben In jeder Woche stelle ich Ihnen einen Zaubertrick mit Zahlen vor. Ihre Aufgaben:
Deklaratives Debugging (Seminar Software Engineering) Tim Sender Deklaratives Debugging Seminar Software Engineering.
Vorlesung: 1 Betriebssysteme 2007 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebssysteme Hochverfügbarkeit (Einführung) 3. Quartal.
Vorlesung: 1 Betriebssysteme 2008 Prof. Dr. G. Hellberg Studiengang Mechatronik FHDW Vorlesung: Betriebssysteme Hochverfügbarkeit (Einführung) 2. Quartal.
PKJ 2005/1 Stefan Dissmann Ausblick Es fehlen noch: Möglichkeiten zum Strukturieren größerer Programme Umgang mit variabler Zahl von Elementen Umgang mit.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Vorwoche Methoden sind mit einem Namen versehene Programmabschnitte besitzen Rückgabetyp, Namen, Parameterliste.
Kapitel 19 Astronomie Autor: Bennett et al. Unsere Galaxis, die Milchstraße Kapitel 19 Unsere Galaxis, die Milchstraße © Pearson Studium 2010 Folie: 1.
1/25 UNIVERSITY OF PADERBORN Projektgruppe KIMAS Projektgruppe KIMAS MultiAgenten-Systeme Andreas Goebels.
Universität Heidelberg Rechenzentrum Hartmuth Heldt Sicherheitskonzept - Netzwerk 1.
Experimentaufbau und -design
Inhalte und Maßnahmen eingegeben haben,
Smartphones im Kanzleinetz Vergleich der technischen Umsetzung COLLEGA - TAG Freitag, 27. November 2009.
M A P K I T Management eines J2EE basierten eCommerce Systems am Beispiel des ATG Dynamo Applikationsservers und BMC Patrol als Managementframework.
Grundschutztools
Ralf KüstersDagstuhl 2008/11/30 2 Ralf KüstersDagstuhl 2008/11/30 3.
Vorlesung Gestaltung von soziotechnischen Informationssystemen - RequirementsEngineering und Contextual Design- Thomas Herrmann, Lehrstuhl Informations-
Eigenschaften der OLS-Schätzer
PRJ 2007/1 Stefan Dissmann Verkettete datenstruktur: Liste Problem: Liste, die eine beliebige Zahl von Elementen verwaltet Operationen: Erzeugen, Anfügen,
Variationsformalismus für das freie Teilchen
Vorgehensmodelle: Schwergewichtige Modelle
Das Wasserfallmodell - Überblick
Neue variable Lernkontrollen mit Diagnose und Förderplanung
Effiziente Algorithmen
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Polynome und schnelle Fourier-Transformation
Übung Datenbanksysteme II Index- strukturen
Präsentation läuft auch vollautomatisch ab … wie du möchtest
Auslegung eines Vorschubantriebes
STATISIK LV Nr.: 1375 SS März 2005.
Analyse von Ablaufdiagrammen
Präsentation von Lukas Sulzer
Schulentwicklung Volksschule / HS / NMS …. basierend auf dem Zahnradmodell der Bewegten Schule Stand: Sept
Ein Überblick über verschiedene Verfahren
Analyseprodukte numerischer Modelle
2014 Januar 2014 So Mo Di Mi Do Fr Sa So
Schutzvermerk nach DIN 34 beachten 20/05/14 Seite 1 Grundlagen XSoft Lösung :Logische Grundschaltung IEC-Grundlagen und logische Verknüpfungen.
Vortrag von Rechtsanwältin Verena Nedden, Fachanwältin für Steuerrecht zur Veranstaltung Wege zum bedingungslosen Grundeinkommen der Piratenpartei Rhein-Hessen.
Modellbasierte Software-Entwicklung eingebetteter Systeme
Schulentwicklung Volksschule / HS / NMS …. basierend auf dem Zahnradmodell der Bewegten Schule Stand: Sept
SIMATIC ET 200M / MP Systemredundanz
Der Erotik Kalender 2005.
Analyse der Laufzeit von Algorithmen
Projektbeschreibung Technologie
Software in sicherheitsrelevanten Systemen
2.1 Grundprinzipien der Bewegung: Die Newton‘schen Axiome
Vs61 6 Fehlertoleranz. vs62 Zuverlässigkeit (reliability) Sicherheit vor FehlernSicherheit vor Angriffen (safety)(security) WS/SS xySystemsicherheit SS.
Fehlertoleranz und Robustheit Präsentation von Thomas Schlögl
RAID-Systeme - Standards - Leistungsmerkmal - Redundanz - Datensicherheit eine Präsentation von Jochen Throm an der Berufsakademie Mosbach.
Spärliche Kodierung von Videos natürlicher Szenen Vortragender: Christian Fischer.
Software in sicherheitsrelevanten Systemen Ralf Pinger / Stefan Gerken Sommersemester 2016.
Software in sicherheitsrelevanten Systemen
Software in sicherheitsrelevanten Systemen
Software in sicherheitsrelevanten Systemen
 Präsentation transkript:

Software in sicherheitsrelevanten Systemen Ralf Pinger / Stefan Gerken Sommersemester 2013

Kapitel 4 - konstruktive Grundprinzipien der Sicherheit Inhaltsübersicht Mehrkanaligkeit Diversität Voting Sicherer Zustand Fallback-Mechanismen, Redundanz Umsetzung Zusammenfassung 27.03.2017 Ralf Pinger / Stefan Gerken

4.1 Mehrkanaligkeit – Prinzip Grundprinzip: Jede Funktion wird mehrfach realisiert und ausgeführt Die Ausführungen sind paarweise rückwirkungsfrei Folgerung: Fehler werden erkannt Fehler werden offenbart Fehler werden beherrscht Beherrschung heißt: „Gefährliche Auswirkungen von Fehlern werden vermieden“ Probleme: Grad der Offenbarung Reaktionszeit Sicherer Zustand muss existieren, sonst wird auch die Verfügbarkeit sicherheitsrelevant 27.03.2017 Ralf Pinger / Stefan Gerken

4.1 Mehrkanaligkeit – Unterscheidung unabhängige Wirkmechanismen: Physikalisch Logisch Algorithmen Vorgehen unabhängige Ausführungspfade: Ausfälle wirken nur in einem Kanal Unabhängige Hardware heißt in der EN50129 „physikalische Unabhängigkeit“ Unabhängige Wirkmechanismen heißen in der EN50129 in Verbindung mit physikalischer Unabhängigkeit „funktionale Unabhängigkeit“ 27.03.2017 Ralf Pinger / Stefan Gerken

4.2 Diversität – Grundpinzip Prinzip Eine Aufgabe wird auf unterschiedliche Art und Weise mehrfach realisiert Spezialfall der Mehrkanaligkeit Beispiele Geschwindigkeitsermittlung über Tacho und Radar Prozess: SW-Entwicklung und SW-Test Coded Mono Processor 27.03.2017 Ralf Pinger / Stefan Gerken

4.2 Diversität – Probleme Probleme Wissenschaftliche Untersuchungen Bei festem Budget für Entwicklung einer Funktion bleibt für jede Variante ein entsprechend kleinerer Bruchteil (für alle Phasen der Entwicklung) Gleiche Ausbildung erzeugt gleiche Weltbilder und damit ähnliche Fehler; damit ist die Annahme der Unabhängigkeit systematischer Fehler nicht gegeben Fehlerhafte Voraussetzungen werden auch hier nicht offenbart Wissenschaftliche Untersuchungen Nancy Leveson et al. In IEEE Transactions on Software Engineering: 1986: „An Experimental Evaluation of the Assumption of Independence in Multiversion Programming“ 1990: „The Use of SelfChecks and Voting in Software Error Detection: An Empirical Study“ 1991: An Empirical Comparison of Software Fault Tolerance and Fault Elimination“ 27.03.2017 Ralf Pinger / Stefan Gerken

4.3 Voting Voting: Annahme: Folgerung: Mehrkanaligkeit erzeugt immer mehrere Ergebnisse Es muss das richtige Ergebnis auf den gesteuerten Prozess wirken Annahme: Ein Fehler wirkt sich nur in einem Kanal aus Folgerung: Ein abweichender Kanal muss abgeschaltet werden 27.03.2017 Ralf Pinger / Stefan Gerken

4.3 Voting Problem: Lösung: Hat die Hardware physische (zufällige) Fehler? Welcher Kanal ist defekt? Lösung: Man nimmt mehrere Kanäle Man versucht, einen Mehrheitsentscheid zu erwirken Wenn das nicht möglich ist, nimmt man einen sicheren Zustand ein Es gibt nicht für jede Systemfunktion einen sicheren Zustand. In diesem Fall muss man den am wenigsten unsicheren Zustand wählen und die Gefahr möglichst schleunigst beherrschen. 27.03.2017 Ralf Pinger / Stefan Gerken

Ein Zustand, von dem keine Gefährdung mehr ausgeht 4.4 Sicherer Zustand Ein Zustand, von dem keine Gefährdung mehr ausgeht Bei der Bahn im Regelfall der energielose Zustand (Stillstand) Im Flugzeug ein Zustand, der ein sicheres Landen erlaubt  Auch der energielose Zustand ist nicht immer sicher Auch bei der Bahn gibt es am Ablaufberg Bremsen an der Schiene, die keinen sicheren Zustand haben, da entweder ein Waggon auf der Strecke stehen bleibt oder mit viel Schwung und Energie auf bereits stehende Waggons knallt und dabei Schaden entstehen kann. Da jeder Waggon hier auch unterschiedliches Gewicht und Rollvermögen hat, gibt es keine vereinheitlichte Bremsverzögerung, die zu einer sicheren Verteilung der Waggons im Ablaufberg führen würde. 27.03.2017 Ralf Pinger / Stefan Gerken

4.5 Fallback-Mechanismen, Redundanz Rückfallebenen sind erforderlich, wenn es keinen sicheren Zustand gibt ein Stillstand des Betriebs zu teuer ist eine Bergung des ausgefallenen Gerätes nicht oder nur schwer möglich ist  Rückfallebenen ermöglichen daher, für eine gewisse Zeit weiterhin Betrieb zu machen ohne die Sicherheit übermäßig zu verschlechtern 27.03.2017 Ralf Pinger / Stefan Gerken

4.5 Fallback-Mechanismen, Redundanz Redundanz: zusätzlicher Kanal, der im Regelbetrieb nicht benötigt wird. Verwendung nur im Fehlerfall Arten von Redundanz: Hot Standby: redundanter Kanal läuft immer mit, Umschaltung kann direkt erfolgen. Cold Standby: redundanter Kanal läuft nicht mit, Hochfahren des Systems nach Umschaltung notwendig 27.03.2017 Ralf Pinger / Stefan Gerken

In der Literatur gibt es unterschiedliche Bezeichnungen 4.6 Umsetzung In der Literatur gibt es unterschiedliche Bezeichnungen Definition: N-out-of-M oder N-von-M (z. B. 2oo2 oder 2v2) N der M Kanäle müssen funktionstüchtig sein und dasselbe Ergebnis errechnen Das Ergebnis der N gleichen Kanäle wird zur Weiterverarbeitung verwendet CENELEC und IEC 61508 haben unterschiedliche Definitionen zum Teil auch nur in Beispielen. Im Folgenden wollen wir diese Definition verwenden und verwenden NvM und NooM gleichbedeutend. 27.03.2017 Ralf Pinger / Stefan Gerken

4.6 Umsetzung – 1oo2, Redundanz Zwei Kanäle arbeiten parallel, durch eine externe Entscheidung kann zwischen dem ersten oder dem zweiten Kanal für die gültigen Ausgaben gewählt werden. Diese Architektur eignet sich nicht für die Erkennung von Hardwarefehlern, sie erhöht lediglich die Zuverlässigkeit und Verfügbarkeit des gesamten Systems, da trotz Ausfall des ersten Kanals mit dem zweiten Kanal weiterhin Betrieb gemacht werden kann (Rückfallebene). 27.03.2017 Ralf Pinger / Stefan Gerken

4.6 Umsetzung – Eigenschaften von 1oo2 Erhöhung der Zuverlässigkeit und Verfügbarkeit des Gesamtsystems Doppelte Hardwarekosten Common Cause: Gemeinsame Stromversorgung, etc. ? Hardwarefehler können innerhalb dieses Systems nicht erkannt werden. Dies obliegt dem Benutzer oder einem weiteren Teilsystem außerhalb dieser Darstellung. Common Cause, gemeinsame genutzt Ressource können zu einem gemeinsamen Fehler führen. Wird beispielsweise dieselbe Stromversorgung für beide Kanäle verwendet, so führt der Ausfall der Stromversorgung zum Ausfall beider Kanäle. Die Umschaltung bringt in diesem Falle also nicht. 27.03.2017 Ralf Pinger / Stefan Gerken

4.6 Umsetzung – 2oo2, Sicherheit Zwei Kanäle arbeiten parallel (hot), ein Voter entscheidet ob beide Kanäle dasselbe Ergebnis liefern. Nur in diesem Falle wird die Ausgabe weitergeleitet. Wird eine Abweichung erkannt, muss das gesamte System in den sicheren Zustand übergehen. 27.03.2017 Ralf Pinger / Stefan Gerken

4.6 Umsetzung – Voter Comp: Vergleicher Muxer: Multiplexer, der die Ausgabe ggf unterbrechen kann, und somit die Einleitung des sicheren Zustands hervorrufen kann. 27.03.2017 Ralf Pinger / Stefan Gerken

4.6 Umsetzung – Eigenschaften von 2oo2 Erkennung von Hardware-Fehlern durch Voter möglich Bei Abweichung: sicherer Zustand Doppelte Hardwarekosten Common Cause: Gemeinsame Stromversorgung, etc. ? Zuverlässigkeit und Verfügbarkeit geringer als bei einem Kanal, da beide Kanäle zwingend benötigt werden. Hardwarefehler können innerhalb dieses Systems nicht erkannt werden. Dies obliegt dem Benutzer oder einem weiteren Teilsystem außerhalb dieser Darstellung. Common Cause, gemeinsame genutzt Ressource können zu einem gemeinsamen Fehler führen. Wird beispielsweise dieselbe Stromversorgung für beide Kanäle verwendet, so führt der Ausfall der Stromversorgung zum Ausfall beider Kanäle. Die Umschaltung bringt in diesem Falle also nicht. 27.03.2017 Ralf Pinger / Stefan Gerken

4.6 Umsetzung – 1oo1D, Sicherheit Die Diagnosekomponente überprüft die Ausgaben des Kanals ständig auf Plausibilität. Falls die Ausgabe nicht schlüssig sind, wird die Ausgabe abgeschaltet und die Sicherheitsfunktion ausgeführt. Die Diagnosekomponente kann beispielsweise eine Referenzimplementierung sein oder auch nur ein Plausibilitätscheck, der die Ausgaben auf Konsistenz prüft. Im letzteren Fall muss dann sichergestellt werden, dass eine defekte Hardware keine als gültig angesehenen Daten mehr liefern kann. Darüber hinaus muss der Einfluss der defekten Hardware auf die Funktion der Diagnose ausgeschlossen werden können. Ansonsten könnte beispielsweise ein Hardwaredefekt eine falsche Ausgabe verursachen und derselbe Defekt führt dazu, dass die Diagnose diesen Fehler nicht als solchen erkennt. Kanal und Diagnose müssen also hinreichend unabhängig sein. Dieses Verfahren steht und fällt mit der Unabhängigkeit von Kanal und Diagnose. Eine Unabhängigkeit kann nur dann angenommen werden, wenn Kanal und Diagnose hinreichend unterschiedliche Aufgaben haben und die für die Berechnung der jeweiligen Funktionen eingesetzte Hardware ebenfalls hinreichend unabhängig sind. 27.03.2017 Ralf Pinger / Stefan Gerken

4.6 Umsetzung – Eigenschaften von 1oo1D 1D steht für 1 Kanal + Diagnose-Kanal, in diesem Sinne eigentlich auch 2 Diagnosekomponente führt eine Selbstprüfung durch Falls ein Fehler erkannt wird, erfolgt die Ausführung einer Sicherheitsfunktion (z. B. Abschalten, eingeschränkte Funktion) Fehlerhafte Ausgaben werden nicht sofort unwirksam (Diagnose muss erst arbeiten!) Gemeinsame Hardware für Haupt- und Prüfprogramm: Was passiert wenn beide gleichermaßen versagen (Common Cause) Überprüfung kann auch auf Ausgabebaugruppen verlagert werden Geringe Kosten für zusätzlich Hardware, falls D einfach aufgebaut werden kann Das Erkennen eines HW-Fehlers kann in dieser Varianten einige Zeit in Anspruch nehmen. Das Verfahren ist also nur dann einsetzbar, wenn für die Einnahme des sicheren Zustand genügend Zeit zur Verfügung steht. Der Vorteil dieser Variante ist die vergleichsweise günstige Ausführung, da nur eine Diagnoseeinheit hinzugefügt werden muss. 27.03.2017 Ralf Pinger / Stefan Gerken

4.6 Umsetzung – 2 mal 2oo2, Sicherheit und Redundanz Zwei Kanäle arbeiten parallel (hot), ein Voter entscheidet ob beide Kanäle dasselbe Ergebnis liefern. Nur in diesem Falle wird die Ausgabe weitergeleitet. Wird eine Abweichung erkannt, muss das gesamte System in den sicheren Zustand übergehen. 27.03.2017 Ralf Pinger / Stefan Gerken

4.6 Umsetzung – Eigenschaften von 2 x 2oo2 Redundanz als hot oder cold möglich Erhöhung der Zuverlässigkeit und Verfügbarkeit des Gesamtsystems Vierfache Hardwarekosten plus Umschaltungen Common Cause: Gemeinsame Stromversorgung, Sensorik, Aktorik etc. ? Diese Architektur wird teilweise bei Fahrzeuggeräte eingesetzt: Eine zweite komplette Rechnergarnitur wird im Fahrzeug eingebaut, in der Regel als cold standby System. Bei Funktionsversagen des ersten Rechners kann manuell umgeschaltet werden. 27.03.2017 Ralf Pinger / Stefan Gerken

4.6 Umsetzung – 2 x 1oo1D, Sicherheit und Redundanz Zwei Kanäle arbeiten parallel (hot), ein Voter entscheidet ob beide Kanäle dasselbe Ergebnis liefern. Nur in diesem Falle wird die Ausgabe weitergeleitet. Wird eine Abweichung erkannt, muss das gesamte System in den sicheren Zustand übergehen. 27.03.2017 Ralf Pinger / Stefan Gerken

4.6 Umsetzung – Eigenschaften von 2 x 1oo1D Alternative Darstellung mit 1oo1D Hier als Hot-Standby-System mit Muxer realisiert. Dieser Muxer schaltet nur durch Sicherheit steckt in den einzelnen 1oo1D-Kanälen. Realisierungsvarianten hängen Architektur, Kosten, Nutzen, Einsatzzweck usw. ab Diese Architektur wird teilweise bei Fahrzeuggeräte eingesetzt: Eine zweite komplette Rechnergarnitur wird im Fahrzeug eingebaut, in der Regel als cold standby System. Bei Funktionsversagen des ersten Rechners kann manuell umgeschaltet werden. 27.03.2017 Ralf Pinger / Stefan Gerken

4.6 Umsetzung – 2oo3 Ein Voter ist ein Vergleicher der Ausgaben der jeweiligen Kanäle. Tritt eine Abweichung in einem Kanal auf, so wird aufgrund der Gleichheit der anderen Kanäle angenommen, dass dieser Kanal fehlerhaft ist. Fehlerhaft erkannte Kanäle werden abgeschaltet und der Betrieb kann zweikanalig weiterlaufen. Erst beim nächsten Fehler (Abweichung des Vergleichs im Voter) muss die Sicherheitsfunktion ausgeführt werden. Denn dann kann nicht mehr entschieden werden, welcher der beiden letzten Kanäle noch korrekt arbeitet. Verfügbarkeit hoch, da nach erstem Fehler weitergearbeitet werden kann. Unabhängigkeit gegenüber 1oo1D-Problematik hier weiter reduziert. 2oo3 ist Standard bei Stellwerken der höchsten Sicherheitsanforderungsstufe. 27.03.2017 Ralf Pinger / Stefan Gerken

4.6 Umsetzung – 2oo3-Voter Muxer kann die Ausgabe wieder „unterdrücken“ 27.03.2017 Ralf Pinger / Stefan Gerken

4.6 Umsetzung – Eigenschaften von 2oo3 Verdreifachung der HW Fehlerhafter Kanal kann erkannt werden Weiterarbeiten nach erstem Fehler möglich Synchronisation noch schwieriger 27.03.2017 Ralf Pinger / Stefan Gerken

4.7 Zusammenfassung - Umsetzungen genannten Prinzipien sind nur Beispiele und können beliebig erweitert bzw. verändert werden Notwendigkeit der einzusetzenden Architektur sollte aus einer Risiko-Analyse abgeleitet werden Vollständige Zweikanaligkeit verringert common cause Ausfälle Hohes Maß an Ausfalloffenbarung durch Zwei- bzw. Mehrkanaligkeit möglich Durch HW-Vergleicher extrem schnelle Ausfalloffenbarung möglich Unabhängiges Abschalten durch Vergleicher möglich Natürlich können auch die Übertragungsmedien mehrkanalig ausgelegt werden! 27.03.2017 Ralf Pinger / Stefan Gerken

4.7 Zusammenfassung - Allgemeines Probleme: Enge Synchronisation und dichte Nachbarschaft der Kanäle machen das System empfindlich für common cause Einflüsse: Einflüsse über die Peripherie Einflüsse über die Stromversorgung Elektromagnetische Felder Temperatur (von außen, aber auch durch Nachbarkanal) Gegenmaßnahmen „Sichere“ Trennung der Peripherie vom Rechnerkern Hoch überwachte Stromversorgung Hochwirksame Schirmung 27.03.2017 Ralf Pinger / Stefan Gerken

4.7 Zusammenfassung - Allgemeines Mehrkanaligkeit kann eingesetzt werden für: Redundanz: Weiterarbeiten nach Ausfall von Kanälen Sicherheit: Erkennung von physischen Fehlern der Hardware Sicherheit und Redundanz Architekturen müssen die Ziele sicherstellen in Bezug auf R: Zuverlässigkeit A: Verfügbarkeit M: Wartbarkeit S: Sicherheit 27.03.2017 Ralf Pinger / Stefan Gerken