Threat-Modellierung

05.05.2025
Cyber-Security

Der Schutz vor Hackerangriffen und kriminellen Aktivitäten ist eine der zentralen Herausforderungen bei der Entwicklung zukünftiger Systeme. Durch den Einsatz optimaler Schutzmaßnahmen werden mögliche illegale Eingriffe in die Systeme frühzeitig identifiziert und diese vor schädlichen Handlungen geschützt.

1.1. Definition

Die Threat-Modellierung ist ein strukturierter Ansatz, der in der Cybersicherheit verwendet wird. Zu den Sicherheitsmechanismen gehören die Identifizierung, Bewertung, Priorisierung und Behebung potenzieller Sicherheitsbedrohungen für ein System oder eine Anwendung. Die Threat-Modellierung hilft bei der Entwicklung sicherer Systeme, indem wirksame Gegenmaßnahmen frühzeitig implementiert werden. Die Bedrohungsanalyse findet mittlerweile in allen Branchen statt, darunter auch die Automobil- und die Medizinbranche, mit Schwerpunkten in den Bereichen Informationssicherheit, Unternehmensrisikomanagement und Datensicherheit.

1.2. Motivation

Die Threat-Modellierung wird angewendet für:

  • Frühzeitige Identifizierung von Schwachstellen: Durch kontinuierliche Analyse können Sicherheitslücken bereits in der Planungsphase identifiziert und behoben werden, bevor sie sich im System verankern.
  • Kosten- und Zeiteffizienz: Die Behebung von Sicherheitsproblemen und -risiken in der frühen Entwicklungsphase ist wesentlich kostengünstiger als die Durchführung von Korrekturen nach der Systembereitstellung. Eine frühzeitige Threat-Modellierung minimiert umfangreiche Nacharbeiten und spart Zeit und Ressourcen.
  • Verbesserte Sicherheitsanforderungen: Das Verständnis potenzieller Bedrohungen hilft dabei, klare Sicherheitsanforderungen zu definieren und umzusetzen.
  • Ressourceneffizienz: Durch Priorisierung von Risiken können Unternehmen ihre Ressourcen gezielt einsetzen und den Fokus auf die kritischsten Bedrohungen legen.
  • Verbesserte Kommunikation und Zusammenarbeit: Die Threat-Modellierung ist ein proaktiver Ansatz in der Softwareentwicklung und fördert eine Kultur des Sicherheitsbewusstseins bei Entwicklern, Testern und anderen Beteiligten.

2. Umfang und Ziele

2.1. Umfang

Es soll zunächst bestimmt werden, was geschützt werden soll (z. B. Daten, Anwendungen, Netzwerke). Es handelt sich hierbei um das zu sichernde System. Dann soll identifiziert werden, wer potenziell angreifen könnte (z. B. Hacker, Insider, Wettbewerber). Dies bezieht sich auf potenzielle Angreifer des zu sichernden Systems. Dabei ist es ebenfalls sehr wichtig, die möglichen Motivationen und Ziele der Angreifer zu erkennen. Um den Ruf eines Herstellers medizinischer Geräte zu schädigen, könnten Hacker zum Beispiel Patientenergebnisse manipulieren. In einer Bank könnten Hacker Kundendaten abgreifen, um illegale Bargeldabhebungen vorzunehmen. Somit werden die Auswirkungen potenzieller Bedrohungen auf das System definiert.

2.2. Ziele

Die Ziele werden definiert. Es wird entschieden, ob z. B. potenzielle Schwachstellen identifiziert, die Sicherheitsarchitektur verbessert und gesetzliche Vorschriften eingehalten werden müssen. Die Definition und Festlegung klarer Ziele ist ein wichtiger erster Schritt im Prozess der Bedrohungsmodellierung. Die Ziele variieren je nach spezifischen Anforderungen und Kontext. Mögliche Zielsetzungen sind:

  • Identifizierung potenzieller Schwachstellen: Durch die Analyse des Systems sollen mögliche Sicherheitslücken aufgedeckt werden, die von Angreifern ausgenutzt werden könnten.
  • Verbesserung der Sicherheitsarchitektur: Es wird angestrebt, die bestehende Architektur zu optimieren, um sie robuster gegen potenzielle Bedrohungen zu machen.
  • Einhaltung von Vorschriften: Sicherstellung, dass das System den relevanten gesetzlichen und branchenspezifischen Standards entspricht.

Die Definition dieser Ziele leitet den weiteren Verlauf der Threat-Modellierung und bestimmt, welche Methoden und Werkzeuge eingesetzt werden.

3. Tools der Threat-Modellierung

Hier sind einige der bekanntesten Tools, die den Prozess der Threat-Modellierung unterstützen:

  • Enterprise Architect: Ein Tool, das die Bewertung der Cybersicherheit unterstützt, indem es die Bedrohungsmodellierungsfunktion auf Grundlage der STRIDE-Methodik bereitstellt.
  • OWASP Threat Dragon: Ein Tool, das sowohl als Web- als auch als Desktop-Anwendung zur visuellen Bedrohungsmodellierung verfügbar ist.
  • Microsoft Threat Modeling Tool: Ein Tool zum Erstellen von Datenflussdiagrammen und Identifizieren von Bedrohungen mit STRIDE.
  • IriusRisk: Ein Tool zur automatisierten Bedrohungsmodellierung und Risikobewertung.

4. Frameworks der Threat-Modellierung

Es gibt mehrere etablierte Frameworks, die den Prozess der Threat-Modellierung unterstützen. Hier sind die bekanntesten:

  • STRIDE: Steht für Spoofing (Vortäuschung), Tampering (Manipulation), Repudiation (Abstreitbarkeit), Information Disclosure (Informationsoffenlegung), Denial of Service (Dienstverweigerung) und Elevation of Privilege (Rechteausweitung). Dieses Modell hilft dabei, verschiedene Bedrohungskategorien systematisch zu identifizieren.
  • DREAD: Steht für Damage (Sacheden), Reproducibility (Reproduzierbarkeit), Exploitability (Ausnutzbarkeit), Affected Users (Betroffene Nutzer) und Discoverability (Auffindbarkeit). Dieses Modell dient zur Risikobewertung von Sicherheitsbedrohungen.
  • PASTA: Steht für Process for Attack Simulation and Threat Analysis. Dieses Modell dient zur Identifizierung der Bedrohungen aus der Perspektive eines Angreifers und deren Priorisierung.
  • VAST: Steht für Visual, Agile und Simple Threat Modeling und ist skalierbar für Agile- und DevOps-Umgebungen.

Für Anfänger ist STRIDE im Bereich der Bedrohungsmodellierung oft der einfachste Einstieg, da es eine klare Struktur bietet und leicht verständlich ist. Es hilft dabei, potenzielle Schwachstellen frühzeitig zu identifizieren und zu adressieren, was zu sichereren Systemen führt.

STRIDE steht für folgende Kategorien von Bedrohungen:

  1. Spoofing: Sich für eine andere Person ausgeben, um Zugang zu Systemen oder Daten zu erhalten.
  2. Tampering: Modifizierung oder Manipulation von Daten oder Code, was die Integrität des Systems beeinträchtigt.
  3. Repudiation: Möglichkeit für Benutzer, durchgeführte Aktionen abzustreiten, ohne dass das System dies nachweisen kann.
  4. Information Disclosure: Weitergabe vertraulicher Informationen an nicht berechtigte Parteien.
  5. Denial of Service: Beeinträchtigung der Verfügbarkeit eines Systems oder Dienstes.
  6. Elevation of Privilege: Erlangen eines Zugriffs auf einer höheren Ebene als zulässig.

5. Grundlegende Schritte der Threat-Modellierung

5.1. Systembeschreibung

  • Identifikation von Assets: Bestimmung, welche Hardware, Software und Daten zu schützen sind (z. B. Server, geistiges Eigentum, Patente, geschützte Dokumente).
  • Akteure aufzählen: Auflistung aller Benutzer, Administratoren, externe Systeme und Angreifer, die mit dem System interagieren.
  • Informationeneinholen: Das Threat-Modell erlaubt nur die Analyse der Zusammenhänge zwischen Systemkomponenten, nicht die Analyse der Systemkomponenten an sich. Es ist entscheidend, zu wissen, über welche Ports, Verbindungsarten und Protokolle die Systemkomponenten verbunden sind und wie die Authentifizierung geregelt ist.

 

5.2. Erstellung eines Datenflussdiagramms

Datenflussdiagramme spielen eine zentrale Rolle bei der Analyse und Dokumentation der Architektur eines Systems. Sie bieten eine visuelle Darstellung der Datenbewegungen innerhalb einer Anwendung oder eines Netzwerks und veranschaulichen, wie Informationen zwischen verschiedenen Komponenten, Benutzern oder externen Geräten fließen.

Durch die Erstellung eines detaillierten Datenflussdiagramms erhalten Entwickler und Sicherheitsexperten wertvolle Einblicke in die Struktur und Funktionsweise eines Systems. Dies ermöglicht es ihnen, kritische Schnittstellen zu identifizieren, an denen sensible Daten verarbeitet oder weitergeleitet werden. Indem solche potenziellen Schwachstellen frühzeitig erkannt werden, können gezielte Maßnahmen zur Absicherung dieser Punkte ergriffen werden.
Ein gut strukturiertes Datenflussdiagramm dient nicht nur als technische Dokumentation, sondern ist auch eine essenzielle Grundlage für eine fundierte Sicherheitsbewertung. Es unterstützt dabei, Bedrohungsszenarien systematisch zu analysieren und darauf aufbauend effektive Sicherheitsstrategien zu entwickeln. Ein besonderer Fokus sollte dabei auf Bereichen liegen, in denen ungesicherte Datenübertragungen stattfinden oder wo externe Einflüsse das System potenziell gefährden könnten.
Darüber hinaus erleichtert eine klare und verständliche Darstellung der Datenflüsse die Zusammenarbeit zwischen verschiedenen Akteuren. Entwickler, Sicherheitsverantwortliche und Fachabteilungen können anhand des Diagramms besser nachvollziehen, wie Daten innerhalb des Systems bewegt werden und an welchen Stellen zusätzliche Sicherheitsmaßnahmen erforderlich sind. Eine regelmäßige Überprüfung und Aktualisierung des Datenflussdiagramms stellt sicher, dass es stets den aktuellen Systemanforderungen und Bedrohungslagen entspricht.

Bsp. Datenflussdiagramm des Systems

5.3. Identifikation von Bedrohungen

Die Identifikation von Bedrohungen ist ein entscheidender Schritt innerhalb der Threat-Modellierung. Um Sicherheitsrisiken frühzeitig zu erkennen, ist es notwendig, das gesamte System umfassend zu analysieren und strukturierte Methoden oder bewährte Frameworks anzuwenden. Diese systematische Herangehensweise ermöglicht es, potenzielle Angriffspunkte und Schwachstellen zu identifizieren, bevor sie von Angreifern ausgenutzt werden können.
Ein bewährtes Modell zur Identifizierung von Bedrohungen ist zum Beispiel das bereits beschriebene STRIDE-Modell.

Graphisches Beispiel für den Angriffstyp „Elevation of Privilege“

Beispiel eines "Elevation of privilege" Angriffts

5.4. Klassifizierungsmerkmale

Für die Normenkonforme Entwicklung von Produkten, z. B. von Medizinprodukten, müssen im Rahmen des Risikomanagements Klassifizierungsmerkmale definiert werden, die die Wahrscheinlichkeit und den Schweregrad der Bedrohung bewerten.

Definition von Klassifizierungsmerkmalen:

Klassifizierungsmerkmale sind spezifische Kriterien, die verwendet werden, um die Wahrscheinlichkeit des Eintretens eines Risikos sowie den potenziellen Schweregrad der Auswirkungen dieses Risikos zu bewerten. Diese Merkmale ermöglichen eine objektive und nachvollziehbare Einschätzung von Risiken und sind die Grundlage für die Priorisierung von Risikomanagementmaßnahmen.

Beispiele für Klassifizierungsmerkmale:

  1. Wahrscheinlichkeit:
    • Bekanntheit der Schwachstelle: Wie verbreitet ist das Wissen über eine spezifische Schwachstelle?
    • Motivation potenzieller Angreifer: Wie attraktiv ist das Ziel für potenzielle Angreifer?
    • Zugangsmöglichkeiten: Wie leicht können Angreifer auf das System zugreifen?
    • Verfügbarkeit von Exploits: Gibt es öffentlich zugängliche Werkzeuge oder Methoden, die die Ausnutzung der Schwachstelle erleichtern?
  2. Schweregrad:
    • Auswirkungen auf die Gesundheit: Beispielsweise Tod, dauerhafte Behinderung oder vorübergehende Beeinträchtigung.
    • Notwendigkeit medizinischer Intervention: Erfordert der Vorfall ärztliche Behandlung oder Krankenhausaufenthalt?
    • Auswirkungen auf die Lebensqualität: Beispielsweise dauerhafte Schmerzen oder Einschränkungen.
    • Verkürzung der Lebenserwartung: Reduziert das Risiko die erwartete Lebensdauer des Patienten?

Prozess der Definition von Klassifizierungsmerkmalen:

  1. Identifikation relevanter Merkmale: Bestimmung der Kriterien, die für die spezifischen Risiken des Produkts am relevantesten sind.
  2. Festlegung von Bewertungsskalen: Definition von Skalen oder Kategorien zur Bewertung der identifizierten Merkmale, beispielsweise numerische Werte oder qualitative Beschreibungen.
  3. Zuweisung von Werten: Bewertung der Wahrscheinlichkeit und des Schweregrads jedes identifizierten Risikos anhand der festgelegten Skalen.
  4. Dokumentation und Kommunikation: Sorgfältige Dokumentation der Bewertungen und Kommunikation der Ergebnisse an alle relevanten Stakeholder.

Regulatorische Anforderungen:

Gemäß der ISO 14971, der internationalen Norm für das Risikomanagement von Medizinprodukten, sind Hersteller verpflichtet, Risiken systematisch zu identifizieren, zu bewerten und zu kontrollieren. Die Norm betont die Bedeutung der Definition von Schweregradklassen und der Festlegung von Kriterien zur Bewertung der Wahrscheinlichkeit von Risiken. Ein strukturierter Ansatz zur Festlegung von Klassifizierungsmerkmalen unterstützt die Einhaltung dieser Norm und erleichtert die Durchführung von Risikoanalysen.

Schlussfolgerung:

Die sorgfältige Definition und Anwendung von Klassifizierungsmerkmalen zur Bewertung der Wahrscheinlichkeit und des Schweregrads von Risiken sind grundlegende Schritte im Risikomanagementprozess für Medizinprodukte. Sie tragen dazu bei, potenzielle Gefährdungen frühzeitig zu identifizieren und angemessene Maßnahmen zur Risikominderung zu implementieren, um die Sicherheit und Wirksamkeit der Produkte zu gewährleisten.

5.5. Bewertung der Risiken und Priorisierung der Gegenmaßnahmen 

Nachdem potenzielle Bedrohungen identifiziert wurden, ist der nächste Schritt die Bewertung der damit verbundenen Risiken. Dies geschieht durch die Analyse zweier entscheidender Faktoren: der Eintrittswahrscheinlichkeit und des potenziellen Schadensausmaßes (Schweregrad). Um diese Faktoren strukturiert darzustellen, wird häufig eine Risikomatrix verwendet.

Eine Risikomatrix hilft dabei, Risiken visuell zu erfassen und leichter zu priorisieren. Dabei werden Bedrohungen anhand ihrer Wahrscheinlichkeit und ihres Schadenspotenzials in Kategorien wie „gering“, „mittel“ oder „hoch“ eingestuft. Diese Kategorisierung ermöglicht es, gezielt Ressourcen für die wichtigsten Sicherheitsmaßnahmen einzuplanen und die dringendsten Schwachstellen zuerst zu adressieren.

Durch die Priorisierung von Risiken lassen sich gezielte Gegenmaßnahmen effizient umsetzen. Kritische Sicherheitslücken sollten vorrangig behandelt werden, um potenzielle Schäden für das System oder die Organisation zu minimieren. Dabei können verschiedene Maßnahmen ergriffen werden, wie zum Beispiel die Implementierung zusätzlicher Sicherheitskontrollen, die Schulung von Mitarbeitern oder die Einführung von Monitoring-Systemen zur frühzeitigen Erkennung von Angriffen.

Risikomatrix

Entsprechend des Risikowertes wird die Priorität der Gegenmaßnahme festgelegt.

Priorisierung der Risiken

5.6. Abwehr von Bedrohungen

Um die Sicherheit eines Systems zu gewährleisten, ist es entscheidend, identifizierte Bedrohungen durch geeignete Gegenmaßnahmen zu mitigieren. Zu den grundlegenden Sicherheitsmechanismen zählen:

  • Eingabevalidierung: Überprüfung und Bereinigung von Benutzereingaben, um sicherzustellen, dass nur erwartete und sichere Daten verarbeitet werden. Dies verhindert Angriffe wie SQL-Injektionen oder Cross-Site-Scripting (XSS).
  • Verschlüsselung: Sicherung der Vertraulichkeit von Daten durch Umwandlung in ein unlesbares Format, das nur mit dem entsprechenden Schlüssel wiederhergestellt werden kann. Verschlüsselung schützt sowohl Daten während der Übertragung als auch im Ruhezustand vor unbefugtem Zugriff.
  • Authentifizierung: Verifizierung der Identität von Benutzern oder Systemen, um sicherzustellen, dass nur berechtigte Entitäten Zugriff auf bestimmte Ressourcen haben. Gängige Methoden sind Passwörter, biometrische Daten oder Zwei-Faktor-Authentifizierung.
  • Autorisierung: Festlegung und Durchsetzung von Zugriffsrechten basierend auf der authentifizierten Identität, um sicherzustellen, dass Benutzer nur auf die Ressourcen zugreifen können, für die sie berechtigt sind.
    Diese Mechanismen arbeiten zusammen, um ein robustes Sicherheitsnetz zu schaffen, das sowohl die Integrität als auch die Vertraulichkeit und Verfügbarkeit von Systemen und Daten schützt.

5.7. Best Practices

Die Threat-Modellierung ist ein essenzieller Bestandteil der Software- und Systemsicherheit. Um ihre Wirksamkeit zu maximieren, sollte sie nicht als einmalige Aufgabe betrachtet werden, sondern als fortlaufender Prozess in den gesamten Entwicklungszyklus integriert sein.

Frühzeitige Einbindung in den Entwicklungsprozess

Der optimale Zeitpunkt für die Erstellung eines Threat-Modells ist so früh wie möglich, idealerweise bereits in der Planungsphase eines Projekts. Durch eine frühzeitige Analyse potenzieller Bedrohungen können Sicherheitsrisiken erkannt und entsprechende Maßnahmen zur Risikominderung frühzeitig implementiert werden. So lassen sich spätere, oft kostspielige Sicherheitsprobleme vermeiden.

Kontinuierliche Pflege und Anpassung

Bedrohungslandschaften ändern sich stetig, weshalb eine einmalige Modellierung nicht ausreicht. Eine regelmäßige Aktualisierung des Threat-Modells stellt sicher, dass neue Bedrohungen erkannt und bewältigt werden können. Dies bedeutet, dass das Modell nicht nur bei der initialen Entwicklung, sondern auch bei jeder wesentlichen Änderung des Systems überprüft und angepasst werden sollte.

Zusammenarbeit zwischen verschiedenen Teams

Ein erfolgreiches Threat-Modell entsteht durch die enge Zusammenarbeit verschiedener Stakeholder. Entwickler, Sicherheitsexperten und Fachabteilungen sollten sich kontinuierlich austauschen, um eine umfassende Analyse potenzieller Risiken zu gewährleisten. Diese interdisziplinäre Zusammenarbeit führt zu einer tieferen Sicherheitsbewertung und besseren Schutzmaßnahmen.

Regelmäßige Schulungen und Sensibilisierung

Ein generelles Sicherheitsbewusstsein bei allen Verantwortlichen ist eine der wirksamsten Verteidigungslinien gegen Cyberbedrohungen. Durch kontinuierliche Sensibilisierungsmaßnahmen und Schulungen können alle Beteiligten ihre Kenntnisse über aktuelle Bedrohungen und Best Practices erweitern. Dies befähigt Akteure dazu, potenzielle Schwachstellen früher zu identifizieren und angemessen darauf zu reagieren.
Durch die Beachtung dieser Best Practices kann eine nachhaltige und effektive Bedrohungsmodellierung etabliert werden, die nicht nur die Sicherheit der Systeme verbessert, sondern auch das Bewusstsein für Cybersicherheit im gesamten Unternehmen stärkt.

6. Fazit

Die Threat-Modellierung stellt einen strukturierten und proaktiven Ansatz dar, um Systeme frühzeitig gegen potenzielle Sicherheitsbedrohungen zu schützen. Durch die systematische Analyse von Schwachstellen, die Bewertung von Risiken und die Priorisierung geeigneter Gegenmaßnahmen können Sicherheitslücken bereits in der Entwicklungsphase erkannt und behoben werden. Dies führt nicht nur zu einer verbesserten Sicherheitsarchitektur, sondern spart auch langfristig Zeit und Kosten.

Der Einsatz etablierter Frameworks wie STRIDE, DREAD, PASTA oder VAST sowie spezialisierter Tools (z. B. Microsoft Threat Modeling Tool, OWASP Threat Dragon) unterstützt die effiziente Umsetzung der Modellierung. Besonders STRIDE bietet sich für Einsteiger an, da es eine klare Kategorisierung der häufigsten Bedrohungen liefert.

Zentrale Elemente des Prozesses sind die Beschreibung des Systems, die Visualisierung mittels Datenflussdiagrammen, die strukturierte Bedrohungsanalyse sowie die risikobasierte Priorisierung von Abwehrmaßnahmen. Ergänzt wird dies durch die Definition von Klassifizierungsmerkmalen, die insbesondere in regulierten Branchen wie der Medizintechnik – im Einklang mit Normen wie ISO 14971 – erforderlich sind.

Die Threat-Modellierung ist jedoch kein einmaliger Vorgang, sondern sollte als kontinuierlicher Prozess in den gesamten Lebenszyklus eines Systems integriert werden. Nur so kann gewährleistet werden, dass neue Bedrohungen rechtzeitig erkannt und adressiert werden. Ebenso entscheidend ist die enge Zusammenarbeit aller beteiligten Akteure sowie die kontinuierliche Schulung und Sensibilisierung für IT-Sicherheit.

Insgesamt trägt die Threat-Modellierung wesentlich dazu bei, Systeme widerstandsfähiger, gesetzeskonform und langfristig sicher zu gestalten – und schafft gleichzeitig eine gemeinsame Sicherheitsgrundlage innerhalb von Entwicklungsteams und Organisationen.