Zum Inhalt springen

Services, Wiki-Artikel, Blog-Beiträge und Glossar-Einträge durchsuchen

↑↓NavigierenEnterÖffnenESCSchließen
Secure Development Glossar

Threat Modeling (Bedrohungsmodellierung)

Strukturierter Prozess zur systematischen Identifikation von Sicherheitsbedrohungen in der Softwareentwicklung oder IT-Architektur. STRIDE, PASTA und DREAD sind die bekanntesten Methoden. Ziel: Sicherheitslücken finden bevor Code geschrieben wird.

Threat Modeling ist das systematische Nachdenken über Sicherheitsbedrohungen - idealerweise in der Design-Phase, bevor Code geschrieben wird. Es beantwortet vier fundamentale Fragen:

  1. Was bauen wir? (System verstehen)
  2. Was kann schiefgehen? (Bedrohungen identifizieren)
  3. Was tun wir dagegen? (Gegenmaßnahmen planen)
  4. Haben wir einen guten Job gemacht? (Validation)

STRIDE - Microsofts Bedrohungsklassifikation

STRIDE ist das bekannteste Threat-Modeling-Framework. Jeder Buchstabe repräsentiert eine Bedrohungskategorie:

BuchstabeBedrohungVerletzt…Beispiel
SSpoofingAuthentizitätAngreifer gibt sich als Admin aus
TTamperingIntegritätDatenbank-Einträge manipulieren
RRepudiationNicht-Abstreitbarkeit”Ich habe die Transaktion nie gemacht”
IInformation DisclosureVertraulichkeitSQL-Injection liest alle Kundendaten
DDenial of ServiceVerfügbarkeit100.000 Anfragen → Server überlastet
EElevation of PrivilegeAutorisierungNormaler User wird Admin

STRIDE anwenden - Beispiel Login-Formular

Komponente: Login-Formular mit Datenbank

STRIDEBedrohungGegenmaßnahme
S (Spoofing)Angreifer gibt sich als anderer User ausMFA, sichere Session-Tokens
T (Tampering)Passwort-Hash in Datenbank manipuliertDB-Benutzer hat keine UPDATE-Rechte auf user-Tabelle
R (Repudiation)User bestreitet erfolgreiche LoginsAudit-Log mit Timestamp, IP, User-Agent (unveränderbar)
I (Information Disclosure)SQL-Injection enthüllt alle Passwort-HashesParameterized Queries, Least Privilege DB-Account
D (Denial of Service)10.000 Login-Versuche/Sekunde → Server überlastetRate Limiting, CAPTCHA nach X Versuchen
E (Elevation of Privilege)Normaler User greift Admin-Seiten zuServer-side Auth-Check auf JEDEM Admin-Endpoint

PASTA - Process for Attack Simulation and Threat Analysis

PASTA ist risikobasiert und business-orientierter als STRIDE:

  1. Define Objectives: Business Impact definieren - was ist schützenswert?
  2. Technical Scope: System-Diagramme, Datenflüsse, Vertrauensgrenzen
  3. Application Decomposition: DFDs (Datenflussdiagramme), Komponenten-Inventar
  4. Threat Analysis: Welche Bedrohungsakteure? APT, Insider, Script Kiddies?
  5. Vulnerability Analysis: Schwachstellen im System identifizieren
  6. Attack Modeling: Angriffsbäume für jede Bedrohung
  7. Risk Analysis: Risiko = Wahrscheinlichkeit × Business Impact

DREAD - Risiko-Scoring

DREAD bewertet identifizierte Bedrohungen auf einer Skala von 1-10:

BuchstabeKriteriumFrage
DDamageWie groß der Schaden?
RReproducibilityWie einfach wiederholbar?
EExploitabilityWie einfach ausnutzbar?
AAffected UsersWie viele betroffen?
DDiscoverabilityWie leicht zu finden?

Beispiel SQL-Injection auf Login-Formular: Damage 9, Reproducibility 10, Exploitability 8, Affected Users 10, Discoverability 7 → DREAD Score: 44/50 = kritisch.

Threat Modeling in der Praxis

Microsoft Threat Modeling Tool

Kostenloses Tool von Microsoft:

  • Grafische DFD-Erstellung
  • Automatische STRIDE-Bedrohungsidentifikation
  • Empfehlungen für Gegenmaßnahmen
  • Export-Reports

OWASP Threat Dragon

Open-Source-Alternative:

  • Web-basiert oder Desktop
  • GitHub-Integration
  • STRIDE-basiert

Wann Threat Modeling?

Früh im SDLC:

  • Bei neuen Features im Design-Review
  • Vor Start der Implementation (2h können Wochen Nacharbeit sparen)
  • Bei Architekturänderungen

Regelmäßig:

  • Jährlich für bestehende Systeme aktualisieren
  • Nach Penetrationstest: Threat Model aktualisieren
  • Nach Security-Incidents: Was haben wir übersehen?

Threat Modeling ist der kosteneffektivste Sicherheitsmechanismus: Ein 2-Stunden-Workshop im Design findet Lücken die im Pentest Tausende Euro kosten würden.

Cookielose Analyse via Matomo (selbst gehostet, kein Tracking-Cookie). Datenschutzerklärung