Misuse Case
Inhaltsverzeichnis: Idee – Vorteile – Visualisierung und Implementierung – Vorlage – Konzept zur Risikominimierung – Beispiele – Erstellung – Download – Hinweise
Wissen kompakt: Ein Misuse Case ist ein missbräuchlicher Anwendungsfall, der kein erwünschtes Verhalten sondern eine Aktion beschreibt, die das System verhindern soll.
Die Idee von Misuse Cases
Die Verwendung von Misuse Cases ergänzt die Idee der Use Cases um einen zusätzlichen Blickwinkel. Ein Misuse Case ist ein missbräuchlicher Anwendungsfall. Er beschreibt eine Interaktion, die ein System nicht zulassen und sogar verhindern sollte.
Erstmals beschrieben wurden missbräuchliche Anwendungsfälle 2001 von zwei norwegischen Professoren. Guttorm Sindre und Andreas Lothe Opdahl waren im Bereich der Entwicklung von Informationssystemen aktiv und veröffentlichten „Capturing Security Requirements through Misuse Cases“¹. Genau wie ein Use Case eine Interaktionsfolge mit dem System darstellt, durch die ein Akteur ein Ziel verfolgt und die einen Wert für ihn schafft, beschreibt auch ein Misuse Case eine Interaktionsfolge – allerdings eine, die mit einem Verlust für den Akteur, für die Organisation, die das System zur Verfügung stellt, oder für Stakeholder endet.
Vorteile von Misuse Cases
Misuse Cases bieten eine Reihe von Vorteilen:
- Die Qualität der Entwicklung steigt, da sich nicht-funktionale Anforderungen leichter identifizieren lassen.
- Projektbeteiligte verstehen das zu entwickelnde System besser und umfassender.
- Eine Gefahrenanalyse ist frühzeitig möglich und ein Wertverlust für die Organisation bzw. Stakeholder lässt sich verhindern.
- Potentielle Angriffspunkte und Schwächen im System lassen sich leichter identifizieren.
- Misuse Cases sind durch Testfälle prüfbar – im Sinne von: Verhinderung einer unerwünschten Funktionalität.
Darüber hinaus sind sie leicht anzuwenden und zu verstehen.
Visualisierung und Implementierung
Misuse Cases lassen sich in Form von Use Case Diagrammen am Flipchart oder mit einer professionellen Software erstellen. Manche Tools bieten die Verwendung von Sub-Stereotypen der Enthält- und Erweiterungsbeziehung an: Aus «include» und «extend» werden «attacks» und «prevents». Idealerweise handelt es dabei nicht nur um „freien Text“, denn dadurch lassen sich Misuse Cases und ihre Beziehungen auswerten und in der Folge Qualitätsanforderungen ableiten. Der Akteur im Misuse Case, der einen Schaden verursacht, wird übrigens als MisActor bezeichnet.
Misuse Cases werden nicht implementiert und eine Beschreibung mit Hilfe von Use Case Storys ist auch nicht sinnvoll, aber der etwas andere Blickwinkel auf ein System ermöglicht es, zusätzliche Anforderungen zu ermitteln. Gerade im Bereich Safety & Security ist diese Herangehensweise leicht zu verstehen und anzuwenden. Sie bietet Organisationen die Chance, wichtige Qualitätsanforderungen für die Entwicklung von sicheren Systemen zu entdecken. Laut dem Kano-Modell haben solche Anforderungen eine große Bedeutung für die Zufriedenheit der Kunden.
Ein Konzept zur Risikominimierung
Mit Use Cases lässt sich ein System aus Anwendersicht gut beschreiben. Misuse Cases ergänzen herkömmliche Anwendungsfälle um eine wertvolle Perspektive. Diese Perspektive lässt sich gut nutzen, um über Bedienungs- und Sicherheitsaspekte nachzudenken und entsprechende Anforderungen zu ermitteln. Ein Misuse Case selbst wird weder in Teilen noch als Ganzes in einem Backlog landen, die durch ihn ermittelten Anforderungen hingegen schon. Durch die Verwendung von Misuse Cases entsteht ein vollständigeres Bild eines Systems, zumal mögliche Schwachstellen frühzeitig identifiziert werden können. Somit sind Misuse Cases auch ein Konzept zur Risikominimierung. Und: jeder der ein wenig Erfahrung in der Anwendung von Use Cases hat, wird das Konzept der Misuse Cases leicht und schnell verstehen.
Grundsätzlich bietet das Arbeiten mit Use Cases, Anwendungsfalldiagrammen, Use Case 2.0 und Misuse Cases ein umfassendes Konzept, um Systeme nicht nur im Detail sondern als Ganzes gut zu verstehen. Unternehmen müssen lediglich die Konzepte konsequent und passend zur Organisation anwenden.
Beispiele für Misuse Cases
Gerade im Bereich Safety & Security sind Misuse Cases leicht zu verstehen und anzuwenden. Sie bieten Organisationen die Chance, wichtige Qualitätsanforderungen für die Entwicklung von sicheren Systemen zu entdecken. Hier finden Sie eine Liste mit einigen Misuse Cases – die Namensgebung orientiert sich am Ziel des MisActors:
- Daten und Identitäten von Internetnutzern nutzen, um …
- Mit fremden Kreditkartendaten Waren bestellen und bezahlen.
- Die Bewegungsdaten von Handys oder Autos ohne Zustimmung verwenden, um …
- Mit Abmahnungen wegen möglicher Urheberrechtsverletzungen Geld verdienen.
- Autos mittels Signalverlängerungen bei „Keyless“-Systemen entwenden, um …
Im Wesentlichen lässt sich jede Zweckentfremdung eines Produkts und jeder Diebstahl als Misuse Case verstehen. Bei manchen Misuse Cases werden Unternehmen versuchen, sichernde Maßnahmen zu ergreifen. Anfang 2018 eröffnete in China die weltweit erste Solar-Autobahn. Kurze Zeit später wurden die ersten Solar-Panel gestohlen. Gegen solche Missbräuche werden sich Organisationen sicherlich schützen, bei anderen kann der Staat Regeln und Gesetze erlassen (Spraydosen nur an Lackierereien verkaufen und somit Sachbeschädigungen durch Graffiti reduzieren) und bei manchen kann nichts dagegen unternommen werden (mit Benzin werden Autos angetrieben und mancherorts auch angezündet).
Misuse Cases erstellen
Häufig werden Sicherheitsanforderungen an ein System sehr allgemein formuliert. Dadurch sind sie schwer zu realisieren und zu überprüfen. Selbst die Erstellung von Use Cases fällt so schwer, denn normalerweise eignen sich Anwendungsfälle nur für die Ermittlung von funktionalen Anforderungen. Hier hilft eine Frage: Was soll das System nicht können? Oder: was soll das System verhindern?
Folgendes Vorgehen hat sich etabliert:
- Use Cases definieren und visualisieren, sowie Anforderungen ermitteln.
- Potenzielle Gefahren auf Basis der einzelnen Use Cases inklusive der MisActors ableiten.
- Misuse Cases mit den bedrohten Use Cases in Beziehung setzen.
- Ableiten von Anforderungen, die Misuse Cases verhindern.
- Beschreiben von Testfällen – dabei ist zu bedenken, dass ein Misuse Case in einer Weise überprüft wird, ob eine unerwünschte Funktionalität erfolgreich verhindert wird.
Jetzt das Use Case Whitepaper kostenlos downloaden.
Alles Wichtige über Use Cases auf einen Blick.
- Was sind Anwendungsfälle und wie werden sie erstellt?
- Welche Bestandteile haben Anwendungsfalldiagramme?
- Was ist Use Case 2.0 und wie lassen sie sich in der agilen Entwicklung nutzen?
- Was sind Misuse Cases und warum sind sie nützlich?
- Herausforderungen und Tipps
Wissen auf 15 Seiten zum Mitnehmen.
Die Inhalte auf dieser Seite dürfen Sie gerne teilen oder verlinken. Und falls Sie sich für Tipps aus der Praxis interessieren, dann testen Sie unseren beliebten Newsletter mit neuen Beiträgen, Downloads, Empfehlungen und aktuellem Wissen. Vielleicht wird er auch Ihr Lieblings-Newsletter!
[1] Capturing Security Requirements through Misuse Cases
Wie Sie mit Misuse Cases Anforderungen ermitteln, erläutert dieser Beitrag: Der destruktive Weg zu Anforderungen.
Hier finden Sie ergänzende Informationen aus unserer Rubrik Wissen kompakt: