Wie führen Sie eine Threat-Modeling-Übung durch?
Kurzantwort
Threat Modeling beantwortet vier Fragen: Was bauen wir, was kann schiefgehen, was tun wir dagegen und haben wir gute Arbeit geleistet. Sie diagrammieren das System (oft ein Datenflussdiagramm mit Vertrauensgrenzen), zählen Bedrohungen mit einem Framework wie STRIDE auf, priorisieren nach Risiko und weisen Gegenmaßnahmen zu. PASTA fügt eine risiko- und angreiferzentrierte Note hinzu; Angriffsbäume zerlegen ein einzelnes Ziel. Es zur Designzeit zu tun ist weit billiger, als Produktion zu patchen.
Threat Modeling ist die Praxis, Designfehler zu finden, bevor sie gebaut werden. Interviewer fragen danach, um zu sehen, ob Sie über ein System strukturell nachdenken können, statt nur auf Scan-Ausgaben zu reagieren, und ob Sie wissen, dass der billigste Ort zur Behebung eines Sicherheitsfehlers das Whiteboard ist.
Die vier Fragen
Ein gutes Modell beantwortet Adam Shostacks vier Rahmenfragen: Was bauen wir? Was kann schiefgehen? Was werden wir dagegen tun? Haben wir gut genug gearbeitet? Alles Folgende ist die Maschinerie, um sie zu beantworten.
Der Ablauf
- Das System modellieren. Ein Datenflussdiagramm zeichnen — Prozesse, Datenspeicher, externe Entitäten, Datenflüsse — und die Vertrauensgrenzen markieren, wo Daten von weniger vertrauenswürdigen zu vertrauenswürdigeren Zonen übergehen. Bedrohungen häufen sich an diesen Grenzen.
- Bedrohungen aufzählen. Ein Framework anwenden. STRIDE ist das Arbeitspferd: Spoofing, Tampering, Repudiation, Information disclosure, Denial of service, Elevation of privilege — jedes auf eine verletzte Eigenschaft abbildend (Authentifizierung, Integrität, Nichtabstreitbarkeit, Vertraulichkeit, Verfügbarkeit, Autorisierung).
- Priorisieren. Bedrohungen nach Eintrittswahrscheinlichkeit und Auswirkung bewerten, um den Aufwand dort einzusetzen, wo das Risiko am höchsten ist, und nicht auf jedes theoretische Problem.
- Mindern und verifizieren. Jeder akzeptierten Bedrohung eine Kontrolle zuweisen und dann bestätigen, dass sie tatsächlich implementiert und getestet wurde.
Eine Methode wählen
STRIDE ist großartig pro Komponente und pro Datenfluss. Angriffsbäume zerlegen ein einzelnes Angreiferziel (z. B. „die Datenbank exfiltrieren") in Äste und eignen sich hervorragend für die tiefe Analyse eines Risikos. PASTA ist ein schwererer, siebenstufiger, risiko- und angreiferzentrierter Prozess, der technische Bedrohungen an die Geschäftsauswirkung bindet — nützlich, wenn Sie die Zustimmung der Führung brauchen.
Worauf Interviewer achten
Sie wollen hören, dass Sie vom Design und den Vertrauensgrenzen ausgehen, dass Sie die STRIDE-Buchstaben auf konkrete Sicherheitseigenschaften abbilden und dass Sie das Modell am Leben halten, während sich das System weiterentwickelt, statt es als einmaliges Dokument zu behandeln.
Wahrscheinliche Anschlussfragen
- Worauf bildet jeder Buchstabe von STRIDE ab, und auf welche Sicherheitseigenschaft?
- Wann würden Sie PASTA oder Angriffsbäume statt STRIDE wählen?
- Wie halten Sie ein Threat Model am Leben, während sich die Architektur ändert?