Im Bereich der Sicherheit von Webanwendungen und mobilen Apps ist die Bedrohungsmodellierung (engl. Threat Modeling) vor allem eine Methode, ein bewusstes Risikomanagement durchzuführen. Dabei gibt es viele verschiedene Möglichkeiten, Bedrohungen zu identifizieren und zu bewerten. Obwohl sich die Techniken unterscheiden: Das Grundprinzip besteht immer darin, mit ihrer Hilfe die Risiken einer Anwendung oder eines IT-Systems zu ermitteln und – noch wichtiger – sich darüber zu einigen, welche Risiken im Detail bestehen.

Kurz & knapp

  • Die Modellierung von Bedrohungen bietet sowohl organisatorische als auch sicherheitstechnische Vorteile im Unternehmensumfeld.
  • Bedrohungsmodelle können auf die Besonderheiten von Organisationen zugeschnitten werden, indem man die potenziellen Auswirkungen von Bedrohungen betrachtet.
  • Standardbedrohungsmodelle lassen sich je nach Anwendungsfall auch miteinander kombiniert.

Beim Threat Modeling geht es darum, die jeweiligen Risiken besser zu verstehen. Alle an der IT-Infrastruktur beteiligten Expertinnen und Experten sollen eine gemeinsame Sichtweise der Bedrohungen und der am besten geeigneten Gegenmaßnahmen erreichen können.

In diesem Artikel erfahren Sie mehr über die Antriebsfaktoren für die Modellierung von Bedrohungen und einige der wichtigsten heute verwendeten Modellierungsmethoden. Außerdem befassen wir uns mit Bedrohungsquellen und der Angriffsmodellierung im Bereich der Cybersicherheit.

Hinweis: Die Modellierung von Bedrohungen kann auf verschiedenen Ebenen durchgeführt werden, sei es für Anwendungen oder IT-Systeme. In diesem Beitrag verwende ich beide Begriffe.

Was wird für die Modellierung von Bedrohungen benötigt?

Die Modellierung von Bedrohungen ermöglicht es einer Organisation, die Risiken, denen sie ausgesetzt ist, besser zu verstehen. Gleichzeitig hilft die Methode bei dem Verständnis, welche Risiken sie abmildern wird und welche sie möglicherweise nicht abmildern wird, weil dies wirtschaftlich nicht vertretbar wäre. Darüber hinaus sollten Unternehmen und Organisationen die Möglichkeit haben, innerhalb ihrer Teamstrukturen zu bestimmen, wer wofür zuständig ist. So könnte ein Team damit beauftragt werden, die Abwehrmaßnahmen gegen bestimmte Arten von Angriffen aufrechtzuerhalten. Im Gegensatz dazu ist ein anderes Team für die Überwachung eines bestimmten Teils der IT-Infrastruktur zuständig. Unterschiedliche Organisationen werden unterschiedliche Prioritäten haben, die sich aus ihrer Bedrohungsmodellierung ergeben. Aber sie alle benötigen bestimmte Dinge, um ein Bedrohungsmodellierungsprogramm durchzuführen. Einfachheitshalber lassen sich diese in vier verschiedene Voraussetzungen unterteilen.

  1. Voraussetzung: volles Anwendungsverständnis

Zunächst müssen Bedrohungsmodellierer ihre Anwendung vollständig verstehen. In der Regel bedeutet das, eine Übersicht der Architektur aller Komponenten und Verbindungen innerhalb einer Anwendung zu erstellen. Die meisten Bedrohungsmodelle enthalten dafür ein schematisches Diagramm der Anwendungsarchitektur. Es dient nicht nur dazu, Angriffsmöglichkeiten zu ermitteln, sondern auch, um die Verantwortlichkeiten innerhalb der Struktur zuzuordnen. So kann bestimmt werden, wer wofür zuständig ist und wo die Zuständigkeiten enden.

  1. Voraussetzung: Definition der Vermögenswerte

Zweitens setzt die Modellierung von Bedrohungen eine vollständige Definition der Vermögenswerte voraus. Dies bedeutet, dass der Wert von Daten und Anwendungen als wichtigste Vermögenswerte des Systems verstanden werden muss. Die Definition von Vermögenswerten wird zudem für jedes Bedrohungsmodell unterschiedlich sein, da der Wert bestimmter Arten von Daten und Anwendungen zwangsläufig von einer Organisation zur anderen unterschiedlich ist.

  1. Voraussetzung: Festlegen von Vertrauensgrenzen

Eine weitere Voraussetzung für die Modellierung von Bedrohungen ist das Festlegen von Vertrauensgrenzen. In einem Bedrohungsmodell werden die Vertrauensgrenzen oft durch die Identifizierung der architektonischen Aspekte, die Teil derselben Organisationsstruktur sind, und der externen Anteile definiert, beispielsweise in der Cloud. Für diesen Teil der Bedrohungsmodellierung ist technisches Know-how erforderlich.

  1. Voraussetzung: Folgenabschätzung

Die Bedrohungsmodellierung erfordert ein gutes Verständnis dafür, was passieren könnte, wenn etwas nicht optimal läuft. Das bedeutet: Die Bedrohungsmodellierer machen sich Gedanken über die Art der Angriffe, denen ein Unternehmen ausgesetzt sein könnte, und über die möglichen Folgen. Wenn sie dies verstanden haben, ist es möglich, rationale Entscheidungen über Gegenmaßnahmen, deren Intensität, Tiefe und Umfang zu treffen.

Ein Bedrohungsmodell entwerfen

Ein Bedrohungsmodell nur einmal zu entwerfen, würde in der Regel bedeuten, dass in der Entwurfsphase einer Anwendung oder eines Systems ein klassischer Wasserfallansatz gewählt wird. Je nach Geschäftsmodell ist dies nicht immer möglich, und es kann notwendig sein, einen anderen Ansatz zu wählen. Sind alle der vier genannten Voraussetzungen für ein Bedrohungsmodell erfüllt, ist ein lineares Wasserfallmodell durchaus möglich. Wie Systemingenieure in vielen Bereichen wissen, bedeutet Wasserfallmodellierung, einen Entwurf zu fixieren. Obwohl dies bei IT-Anwendungen vorkommen kann, ist es nicht so verbreitet, weil sich digitale Systeme in der Regel auch nach ihrer Einführung weiterentwickeln und anpassen lassen.

Daher sind bei der Bedrohungsmodellierung andere Planungsansätze häufiger anzutreffen, etwa ein zyklischer bzw. agiler Ansatz. Bei der zyklischen Bedrohungsmodellierung durchläuft die Planung folgende Phasen:

  • Analyse
  • Entwurf
  • Implementierung
  • Schulung
  • Integration

Danach geht sie in eine Wartungsphase über, bevor sie wieder zur Planung zurückkehrt. Die zyklische Bedrohungsmodellierung ist damit kontinuierlich und entspricht darüber hinaus in der Regel vielen Softwareentwicklungszyklen. Daher ist sie aus der Perspektive eines Cybersicherheitssystems sehr nützlich.

Ausgangspunkt: Anwendungsdarstellung

Ein guter Ausgangspunkt für die Entwicklung eines Bedrohungsmodells nach beiden Ansätzen ist die schematische oder systemische Darstellung der Anwendung. Auf diese Weise können Bedrohungsmodellierer die Integration von Anwendungen und Ressourcen in die breitere digitale Landschaft visuell darstellen. Die Einbeziehung von Kommunikationsverbindungen bietet der Modellierung folgende Vorteile:

  • Benutzer und Rollen identifizieren
  • Login-Workflows definieren
  • die möglicherweise eingesetzten Technologien erkennen
  • auf bereits bekannte Bedrohungen und Schwachstellen hinweisen und
  • Sicherheitskonzepte hinzufügen, wenn sie verfügbar sind.

Es ist wichtig, alle Vermögenswerte wie beispielsweise Quellcode, persönliche und private Daten, Betriebsgeheimnisse sowie geistiges Eigentum in den Entwurf einzubeziehen.

Ein guter Entwurf eines Bedrohungsmodells berücksichtigt in der Regel außerdem die sogenannte CIA-Triade (Vertraulichkeit, Integrität und Verfügbarkeit), um die Sicherheitseigenschaften jedes der zuvor identifizierten Werte zu verstehen. Dies ist eine klassische Methode, die heute in der Bedrohungsmodellierung weit verbreitet ist und die Modellierer dazu veranlasst, jeden Vermögenswert auf drei Arten zu betrachten – damit sie nicht davon ausgehen, dass sich ein Risiko nur auf eine Weise manifestieren kann. So könnten beispielsweise personenbezogene Daten aus einer Anwendung gestohlen werden, was ein Vertraulichkeitsrisiko darstellen würde. Sie könnten zudem manipuliert werden, etwa durch missbräuchliche Änderung von Datensätzen. In diesem Fall würde dies ein Integritätsrisiko darstellen.

PASTA, STRIDE und LINDDUN

Wenn man einige der heute üblichen Modelle für das Risiko- und Bedrohungsmanagement näher betrachtet, stößt man auf PASTA. Dieses Akronym steht für “Process for Attack Simulation and Threat Analysis” (Prozess für Angriffssimulation und Bedrohungsanalyse). Diese Methode der Bedrohungsmodellierung kann in sieben grundlegende Schritte unterteilt werden:

  1. Die Zieldefinition ist der erste Schritt, in dem die kommerziellen Ziele, die Einhaltung von Vorschriften und die Analyse der geschäftlichen Auswirkungen festgelegt werden.
  2. Der nächste Schritt ist die Definition des technischen Umfangs, der darauf abzielt, die Anwendungsinfrastruktur, Softwareabhängigkeiten und die Grenzen der zu modellierenden technischen Umgebung zu erfassen.
  3. Der dritte Schritt befasst sich mit der Dekomposition der Anwendung, die unter anderem potenzielle Einstiegspunkte, Vertrauensstufen, Anwendungsfälle, Datenquellen, Datenflussdiagramme und Vertrauensgrenzen umfasst.
  4. Der nächste Schritt innerhalb von PASTA ist die Bedrohungsanalyse, die gegebenenfalls auch die STRIDE-Methode umfassen kann. In diesem vierten Schritt betrachten die Modellierer Risikoszenarien von Angriffen und ihre relativen Wahrscheinlichkeiten zusammen mit einer Regressionsanalyse von Sicherheitsereignissen sowie der Korrelation und Analyse von Bedrohungsdaten.
  5. Im fünften Schritt werden die Schwachstellen durch eine Schwachstellenanalyse ermittelt. Dies beinhaltet die Abfrage vorhandener Schwachstellenberichte und die Verfolgung aktueller Probleme, die Abbildung von Schwachstellen auf Bedrohungsbäume und Ähnliches. Sie kann auch die Analyse von Entwurfsfehlern und die Bewertung von Schwachstellen nach verschiedenen Methoden umfassen.
  6. Der vorletzte Schritt in PASTA ist schließlich die Angriffsmodellierung und umfasst unter anderem die Entwicklung eines Angriffsbaums, die Ausnutzungsanalyse und die Analyse der Angriffsoberfläche.
  7. Am Ende steht die Risiko- und Folgenabschätzung, die Qualifizierung und Quantifizierung der Auswirkungen auf das Unternehmen zum Gegenstand hat. Zu den Risiko- und Folgenabschätzungen gehören in der Regel auch die Analyse des Restrisikos, die Ermittlung von Strategien zur Risikominderung und von geeigneten Gegenmaßnahmen.

Dieser kurze Überblick über PASTA zeigt beispielhaft eine Art von Threat Modeling. Es gibt weitere, wie STRIDE, welches für Spoofing, Manipulation, Repudiation, Information Disclosure, Denial of Service und Elevation of Privilege steht. Einige Bedrohungsmodelle verwenden STRIDE ohne PASTA, aber wie bereits erwähnt, lässt sich STRIDE unter bestimmten Umständen in Schritt vier von PASTA für die Zwecke der Bedrohungsanalyse verwenden.

Ein weiteres Beispiel für eine recht verbreitete Methode zur Bedrohungsmodellierung ist LINDDUN, was für Linkability (Verknüpfbarkeit), Identifiability (Identifizierbarkeit), Non-Repudiation (Nichtabstreitbarkeit), Detectability (Aufdeckbarkeit), Disclosure of Information (Offenlegung von Informationen), Unawareness (Unkenntnis) und Non-Compliance (Nichtbefolgung) steht.

Obwohl jede Methode ihre Vor- und Nachteile hat, sollte man bei der Modellierung von Anwendungsbedrohungen vor allem berücksichtigen, dass mehrere Techniken zur Verfügung stehen. Sie tragen dazu bei, den verschiedenen kommerziellen Erfordernissen innerhalb unterschiedlicher Systemarchitekturen gerecht zu werden.

Identifizierung von Bedrohungsquellen

Einer der wichtigsten Teile jeder Bedrohungsmodellierung ist die Identifizierung von Bedrohungsquellen. PASTA, STRIDE und LINDDUN behandeln alle diesen entscheidenden Aspekt der Bedrohungsmodellierung auf ihre eigene Weise. Bedrohungsmodellierer sollten jedoch wissen, dass sie auch eine Reihe von Ressourcen für bekannte Sicherheitsbedrohungen nutzen können, die derzeit verfügbar sind. Diese helfen den Modellierern dabei, über alle Bedrohungsarten nachzudenken, die heutzutage die Anwendungssicherheit betreffen.

So gibt es beispielsweise ein Softwaresystem namens Threat Dragon, das von der OWASP entwickelt wurde. In der Regel wird es dazu verwendet, Bedrohungsmodelldiagramme im Rahmen eines sicheren Entwicklungszyklus zu erstellen. Als visuelles Modellierungswerkzeug lässt es sich leicht mit einem Systemarchitekturdiagramm verbinden. Es ermöglicht den Modellierern, Vertrauensgrenzen, Kommunikationskanäle, verschiedene Arten von Vermögenswerten und natürlich verschiedene Arten von Bedrohungen hinzuzufügen. Diese Software ist in erster Linie für die Arbeit mit den oben erwähnten Bedrohungsmodellierungsmethoden STRIDE und LINDDUN konzipiert.

Ein weiteres Beispiel für eine Bedrohungsquelle ist das Microsoft Threat Modeling Tool. Dieses weit verbreitete Tool läuft unter Windows und wird häufig von Bedrohungsmodellierern verwendet, die die STRIDE-Methodik anwenden. Es ist ebenfalls visuell und erlaubt ihnen, ihr Architekturmodell zu zeichnen oder zu importieren. Das MS-System kann im Hintergrund Bedrohungen hinzufügen, wenn dem Schema Verbindungen von Vermögenswerten hinzugefügt werden. Das Tool ermöglicht es den Benutzern, die Bedrohung auszuwählen, die am relevantesten erscheint. Das erlaubt ihnen, zu entscheiden, ob Abhilfemaßnahmen hinzugefügt werden sollen oder nicht. Allerdings sind die Standardbedrohungen sehr allgemein gehalten, so dass es einiger Überlegungen bedarf, um maßgeschneiderte Risiken hinzuzufügen.

Die Rolle der Angriffsmodellierung in der Cybersicherheit

Man benötigt jedoch nicht zwingend Software-Tools, um Angriffsmodelle in einer Cybersicherheitsumgebung zu erstellen. Eine der ältesten Methoden ist ein so genannter Angriffsbaum, der sich mit Stift und Papier oder in einem Zeichenprogramm modellieren lässt. Im Wesentlichen laufen Angriffsbäume darauf hinaus, die verschiedenen Methoden abzubilden, die einem Angreifer zur Verfügung stehen könnten, um sein Ziel zu erreichen. In diesem Szenario wird das Ziel durch den Stamm eines Baumes dargestellt, die Zweige stellen die verschiedenen Wege dorthin dar. Am anderen Ende des “Baumes” befinden sich einzelne Blätter. Diese stellen alle Wege dar, auf denen Angreifer einen Angriff starten können. Dadurch kann das Bedrohungsmodell die Anzahl der potenziellen Einstiegspunkte für eine Cyber-Bedrohung aufzählen.

Darüber hinaus können Bedrohungsmodelle auf Angriffsanalysen zurückgreifen, bei denen einzelne Bedrohungen bewertet werden. Dabei wird jede Bedrohung in der Regel auf zwei Arten bewertet:

  1. Wie wahrscheinlich ist die Bedrohung?
  2. Wie viel Schaden kann sie anrichten?

Durch die Kombination dieser Bewertungen lassen sich die wichtigsten und die unwichtigeren Bedrohungen ermitteln. Auf diese Weise können Unternehmen entscheiden, welche Bedrohungen sie als erstes angehen müssen und für welche sie bei Bedarf am wenigsten dringend Abhilfemaßnahmen umsetzen müssen.

Einige Bedrohungsmodelle können auch das Common Vulnerability Scoring System (CVSS) enthalten. Bei diesem Ansatz wird eine Punktzahl ermittelt, indem Angriffsvektoren und Komplexität mit Systemprivilegien und Benutzerinteraktionen gemessen und mit einer Zahl für „Scope“, Vertraulichkeit, Integrität und Verfügbarkeit von Daten kombiniert werden. Je höher die Zahl im CVSS-Scoring-System ist, desto größer ist der Grad der Bedrohung.

Security Threat Modeling im Überblick

Zusammenfassend lässt sich sagen, dass sich die Bedrohungsmodellierung unter Verwendung bewährter Methoden auf die spezifischen organisatorischen Anforderungen zuschneiden lässt. Zu den Sicherheitsvorteilen der Bedrohungsmodellierung gehören die Identifizierung von Risiken, die Bewertung von Abhilfemaßnahmen und eine faktenbasierte Entscheidungsfindung. Darüber hinaus führt die vollständige Inventarisierung aller Vermögenswerte zu wirtschaftlichen und organisatorischen Vorteilen. Zudem wird ein besseres Verständnis dafür erreicht, wo die Verantwortlichkeiten für die Sicherheit liegen, und die Einhaltung von Vorschriften und der Schutz des guten Rufs werden verbessert.

Weitere Informationen:

 

Experten-Kontakt

Dr. Bastian Braun, Senior Consultant bei mgm security partners

Haben Sie Fragen zur Threat Modeling-Expertise von mgm? Nehmen Sie Kontakt per E-Mail auf, rufen Sie uns an oder nutzen Sie unser Kontaktformular.