Safety, Security und Privacy – Abgrenzung in Definition, Bedrohung und Risikoanalyse | Institut für Automatisierungs­technik und Softwaresysteme | Universität Stuttgart (2025)

Safety

Der Begriff der Safety [3] ist vor allem im Bereich von Softwarelösungen in Verbindung mit Maschinen, und damit in der Automatisierunstechnik, besonders wichtig. Er beschreibt den Schutz vor einer Fehlfunktion, hier eine Fehlfunktion, die durch Fehler der Entwickler entsteht und nicht durch Bösartigkeit anderer Menschen, der Software und/oder Maschine bei bestimmungsgemäßer Verwendung, welche zu einer Bedrohung von Menschen oder anderen physikalischen Objekten (anderen Maschinen zum Beispiel) führen könnte.

In der Automatisierungstechnik sind solche Funktionalitäten das Loslösen von menschengesteuerten Aktionen hin zu computergesteuerten Aktionen basierend auf gemessenen Daten.

So wird beispielsweise die Überprüfung einer Anlage in festen Intervallen ausgelagert, dass der Verschleiß der Anlage gemessen wird und die Anlage aufgrund dieser Daten entscheidet, wann gewartet werden muss.

Solche automatisierte Mechanismen müssen daraufhin überprüft und zertifiziert werden, dass sie bei korrekter Bedienung auch nur das machen, was spezifiziert und programmiert wurde.

Diese Überprüfung entspricht dann einer Überprüfung, ob die gegebene IST-Funktionalität der spezifizierten SOLL-Funktionalität entspricht. Dies erfordert damit allerdings, dass der gewünschte Zustand jeder Funktionalität auch spezifiziert und festgehalten wurde, damit dagegen geprüft werden kann.

Auch die Prüfung der Funktionalität muss ein solches Verfahren sein, welches alle benötigten Spezifikationen auf eine standardisierte (und eventuelle zertifizierte) Weise überprüfen kann und die Resultate auch replizieren kann.

Für die Softwarekomponenten haben sich schon verschiedene Normen [8] oder Verfahren etabliert (Test-Driven Development, Testautomatisierung, Pareto-Prinzipien im Testen, u.v.m.) welche auf eine standardisierte Weise vorschreiben, wie Softwareartefakte geprüft werden müssen, um die Safety [3] der Anwendung oder Maschine sicherzustellen. Durch systematische Testvorgänge können Fehler zwar erkannt und behoben werden, jedoch kann ein Test nur das Vorhandensein von Fehler feststellen, niemals die völlige Abwesenheit davon. Dennoch müssen unterschiedliche Testverfahren einen erheblichen Teil der Softwareentwicklung ausmachen, um die Safety [3] zu gewährleisten.

Security

Die Securtiy [2] definiert sich dazu als der Schutz von Software/Anlagen gegen absichtliche Angriffe auf die Vertraulichkeit, Integrität und Verfügbarkeit von Informationen, die von der Software/Anlage verwendet/verwaltet werden. Es wird also der Angriff durch einen anderen Menschen oder ein anderes System dadurch beschrieben, welche Schwachstellen in der Programmierung ausnutzen, um Schaden anzurichten oder den eigenen Vorteil unrechtmäßig zu erhöhen.

Auch für die Security [2] müssen die Schutzziele vorher definiert werden, damit gegen diese Ziele geprüft werden kann. Und auch hier gibt es schon bereits bestehende Verfahren (Functional Testing, Vulnerability Scanning, Systematic Fuzzing, Penetration Testing, CVE, CAPEC (siehe Grafik), CWE, u.v.m.), welche das Testen der Safety [3] erweitern, um Angriffsaspekte erkennen zu können, oder bereits definierte Standards (CERT, (MISRA C*, u.v.m.) sowie bestehende Risikomanagementanalysesysteme für Softwaresysteme.

Safety, Security und Privacy – Abgrenzung in Definition, Bedrohung und Risikoanalyse | Institut für Automatisierungs­technik und Softwaresysteme | Universität Stuttgart (1)

Abbildung 2: CAPEC Angriffserkennung

Foto: (c) capec.mitre.org

Allerdings sind diese Standards nicht vollständig, da sie nicht alle Angriffsvektoren abdecken können.

In der Kryptographie gibt es mathematische Modelle (wie das Modell nach Dolev-Yao [5] zur Überprüfung von (Netzwerk)-Protokollen auf Angriffsmuster), welche dann für gegebene Umstände beweisen, dass eine Softwarelösung sicher ist.

Diese Modelle sind allerdings in der Realität nicht immer umzusetzen, da sie von Annahmen ausgehen können, welche auf Industrieanlagen nicht gegeben sein müssen.

Standardisierte Protokolle können allerdings die Anlage vor einer Manipulation schützen, wenn sie denn korrekt umgesetzt und betrieben werden.

Privacy

Der Begriff der Privacy [1] beschreibt, dass die Daten, die in einem System erstellt werden (Benutzungsdaten von Nutzern oder Geschäftsdaten der Anlage/Firma), nicht in die Hände Unbefugter gelangen, die die Sensordaten einer Anlage an den Endpunkt der Konkurrenz weiterleiten.

Dies kann bei der Entwicklung der Software durch die Verwendung von standardisierten Designentscheidungen [7] und Techniken, die die Daten schützen (Authentifizierung, Zero-Knowlegde-Beweise („Beweise dass ich ich bin oder ein Geheimnis weiß, ohne zu zeigen, dass ich ich bin oder das Geheimnis zu zeigen“) [6], korrekte Anonymisierung und Pseudonymisierung, u.v.m.), erreicht werden.

Safety, Security und Privacy – Abgrenzung in Definition, Bedrohung und Risikoanalyse | Institut für Automatisierungs­technik und Softwaresysteme | Universität Stuttgart (2025)
Top Articles
Latest Posts
Recommended Articles
Article information

Author: Amb. Frankie Simonis

Last Updated:

Views: 5910

Rating: 4.6 / 5 (76 voted)

Reviews: 91% of readers found this page helpful

Author information

Name: Amb. Frankie Simonis

Birthday: 1998-02-19

Address: 64841 Delmar Isle, North Wiley, OR 74073

Phone: +17844167847676

Job: Forward IT Agent

Hobby: LARPing, Kitesurfing, Sewing, Digital arts, Sand art, Gardening, Dance

Introduction: My name is Amb. Frankie Simonis, I am a hilarious, enchanting, energetic, cooperative, innocent, cute, joyous person who loves writing and wants to share my knowledge and understanding with you.