Empfehlungen für die Bedrohungsanalyse

Gilt für diese Empfehlung für die Azure Well-Architected Framework-Sicherheitsprüfliste:

SE:02 Erstellen Sie eine Sicherheitsbaseline, die an Complianceanforderungen, Branchenstandards und Plattformempfehlungen ausgerichtet ist. Messen Sie regelmäßig Ihre Workloadarchitektur und -vorgänge anhand der Baseline, um Ihren Sicherheitsstatus im Laufe der Zeit aufrechtzuerhalten oder zu verbessern.

Verwandter Leitfaden: Empfehlungen zum Schützen eines Entwicklungslebenszyklus

Eine umfassende Analyse zum Identifizieren von Bedrohungen, Angriffen, Sicherheitsrisiken und Gegenmaßnahmen ist in der Entwurfsphase einer Workload von entscheidender Bedeutung. Die Bedrohungsmodellierung ist eine technische Übung, die das Definieren von Sicherheitsanforderungen, das Identifizieren und Abmildern von Bedrohungen sowie die Überprüfung dieser Abhilfemaßnahmen umfasst. Sie können diese Technik in jeder Phase der Anwendungsentwicklung oder -produktion verwenden, ist aber während der Entwurfsphasen neuer Funktionen am effektivsten.

In diesem Leitfaden werden die Empfehlungen für die Bedrohungsmodellierung beschrieben, damit Sie Sicherheitslücken schnell identifizieren und Ihre Sicherheitsmaßnahmen entwerfen können.

Definitionen 

Begriff Definition
Softwareentwicklungslebenszyklus (SDLC) Ein mehrstufiger, systematischer Prozess zur Entwicklung von Softwaresystemen.
SCHRITT Eine von Microsoft definierte Taxonomie zum Kategorisieren von Bedrohungstypen.
Bedrohungsmodellierung Ein Prozess zum Identifizieren potenzieller Sicherheitsrisiken in der Anwendung und im System, zum Minimieren von Risiken und zum Überprüfen von Sicherheitskontrollen.

Wichtige Entwurfsstrategien

Die Bedrohungsmodellierung ist ein entscheidender Prozess, den ein organization in seine SDLC integrieren sollte. Die Bedrohungsmodellierung ist nicht nur aufgabe eines Entwicklers. Dies ist eine gemeinsame Verantwortung zwischen:

  • Das Workloadteam, das für die technischen Aspekte des Systems verantwortlich ist.
  • Geschäftsbeteiligte, die die Geschäftsergebnisse verstehen und ein berechtigtes Interesse an Sicherheit haben.

Häufig besteht hinsichtlich der geschäftlichen Anforderungen für kritische Workloads eine Diskrepanz zwischen der Unternehmensführung und technischen Teams. Diese Trennung kann zu unerwünschten Ergebnissen führen, insbesondere bei Sicherheitsinvestitionen.

Wenn das Workloadteam eine Bedrohungsmodellierung durchführt, sollten sowohl geschäftliche als auch technische Anforderungen berücksichtigt werden. Das Workloadteam und die Geschäftsbeteiligten müssen sich auf sicherheitsspezifische Anforderungen der Workload einigen, damit sie angemessene Investitionen in die Gegenmaßnahmen tätigen können.

Die Sicherheitsanforderungen dienen als Leitfaden für den gesamten Prozess der Bedrohungsmodellierung. Um dies zu einer effektiven Übung zu machen, sollte das Workloadteam über eine Sicherheitsmentalität verfügen und in Tools zur Bedrohungsmodellierung geschult werden.

Verstehen des Umfangs der Übung

Ein klares Verständnis des Umfangs ist für eine effektive Bedrohungsmodellierung von entscheidender Bedeutung. Es hilft dabei, Anstrengungen und Ressourcen auf die kritischsten Bereiche zu konzentrieren. Diese Strategie umfasst das Definieren der Grenzen des Systems, die Bestandsaufnahme der zu schützenden Ressourcen und das Verständnis des Investitionsniveaus, das in Sicherheitskontrollen erforderlich ist.

Sammeln von Informationen zu den einzelnen Komponenten

Ein Workloadarchitekturdiagramm ist ein Ausgangspunkt für das Sammeln von Informationen, da es eine visuelle Darstellung des Systems bietet. Das Diagramm zeigt die technischen Dimensionen des Systems. Es zeigt beispielsweise Benutzerflows, wie Daten durch das Netzwerk verschoben werden, Datensensibilitätsebenen und Informationstypen sowie Identitätszugriffspfade.

Diese detaillierte Analyse kann häufig Einblicke in potenzielle Sicherheitsrisiken im Entwurf liefern. Es ist wichtig, die Funktionalität jeder Komponente und ihre Abhängigkeiten zu verstehen.

Bewerten der potenziellen Bedrohungen

Analysieren Sie jede Komponente aus einer Außenperspektive. Wie einfach kann sich ein Angreifer beispielsweise Zugriff auf vertrauliche Daten verschaffen? Wenn Angreifer Zugriff auf die Umgebung erhalten, können sie sich lateral bewegen und möglicherweise auf andere Ressourcen zugreifen oder diese sogar manipulieren? Diese Fragen helfen Ihnen zu verstehen, wie ein Angreifer Workloadressourcen ausnutzt.

Klassifizieren der Bedrohungen mithilfe einer Branchenmethodik

Eine Methodik zum Klassifizieren von Bedrohungen ist STRIDE, die vom Microsoft Security Development Lifecycle verwendet wird. Das Klassifizieren von Bedrohungen hilft Ihnen, die Art der einzelnen Bedrohungen zu verstehen und geeignete Sicherheitskontrollen zu verwenden.

Entschärfen der Bedrohungen

Dokumentieren Sie alle identifizierten Bedrohungen. Definieren Sie für jede Bedrohung Sicherheitskontrollen und die Reaktion auf einen Angriff, wenn diese Steuerelemente fehlschlagen. Definieren Sie einen Prozess und Zeitleiste, die die Exposition gegenüber identifizierten Sicherheitsrisiken in der Workload minimieren, sodass diese Sicherheitsrisiken nicht behoben werden können.

Verwenden Sie den Ansatz "Sicherheitsverletzung annehmen ". Es kann helfen, Steuerelemente zu identifizieren, die im Entwurf erforderlich sind, um das Risiko zu minimieren, wenn eine primäre Sicherheitssteuerung ausfällt. Bewerten Sie, wie wahrscheinlich es ist, dass die primäre Sicherheitskontrolle ausfällt. Wenn es fehlschlägt, wie ist das Ausmaß des potenziellen Organisationsrisikos? Was ist auch die Wirksamkeit der ausgleichenden Kontrolle? Wenden Sie basierend auf der Auswertung detaillierte Schutzmaßnahmen an, um potenzielle Ausfälle von Sicherheitskontrollen zu beheben.

Hier sehen Sie ein Beispiel:

Stellen Sie diese Frage So bestimmen Sie Steuerelemente, die...
Werden Verbindungen über Microsoft Entra-ID, Transport Layer Security (TLS) mit gegenseitiger Authentifizierung oder ein anderes modernes Sicherheitsprotokoll authentifiziert, das das Sicherheitsteam genehmigt hat:

- Zwischen Benutzern und der Anwendung?

- Zwischen Anwendungskomponenten und Diensten?
Verhindern Sie nicht autorisierten Zugriff auf die Anwendungskomponenten und -daten.
Beschränken Sie den Zugriff nur auf Konten, die Daten in der Anwendung schreiben oder ändern müssen? Verhindern der unbefugten Datenmanipulation oder -veränderung
Wird die Anwendungsaktivität protokolliert und über Azure Monitor oder eine ähnliche Lösung in ein SIEM-System (Security Information and Event Management) eingespeist? Schnelles Erkennen und Untersuchen von Angriffen
Sind kritische Daten durch Verschlüsselung geschützt, die vom Sicherheitsteam genehmigt wurde? Verhindern des nicht autorisierten Kopierens ruhender Daten
Wird eingehender und ausgehender Netzwerkdatenverkehr über TLS verschlüsselt? Verhindern des nicht autorisierten Kopierens von Daten während der Übertragung
Ist die Anwendung durch Dienste wie Azure DDoS Protection vor verteilten Denial-of-Service-Angriffen (DDoS) geschützt? Erkennen von Angriffen, die die Anwendung überlasten und ihre Nutzung verhindern
Speichert die Anwendung Anmeldeinformationen oder Schlüssel für den Zugriff auf andere Anwendungen, Datenbanken oder Dienste? Feststellen, ob bei einem Angriff mit Ihrer Anwendung andere Systeme angegriffen werden können
Erfüllen die Sicherheitskontrollen der Anwendung gesetzliche Anforderungen? Schützen Sie die privaten Daten der Benutzer und vermeiden Sie Compliance-Bußgelder.

Nachverfolgen der Ergebnisse der Bedrohungsmodellierung

Es wird dringend empfohlen, ein Tool zur Bedrohungsmodellierung zu verwenden. Tools können den Prozess der Identifizierung von Bedrohungen automatisieren und einen umfassenden Bericht über alle identifizierten Bedrohungen erstellen. Stellen Sie sicher, dass Sie die Ergebnisse allen interessierten Teams mitteilen.

Verfolgen Sie die Ergebnisse als Teil des Backlogs des Workloadteams, um eine zeitnahe Verantwortlichkeit zu ermöglichen. Weisen Sie Personen Aufgaben zu, die für die Minderung eines bestimmten Risikos verantwortlich sind, das die Bedrohungsmodellierung identifiziert hat.

Wenn Sie der Lösung neue Features hinzufügen, aktualisieren Sie das Bedrohungsmodell, und integrieren Sie es in den Codeverwaltungsprozess. Wenn Sie ein Sicherheitsproblem finden, stellen Sie sicher, dass es einen Prozess gibt, um das Problem basierend auf dem Schweregrad zu selektieren. Der Prozess sollte Ihnen helfen, zu bestimmen, wann und wie das Problem behoben werden soll (z. B. im nächsten Releasezyklus oder in einem schnelleren Release).

Regelmäßige Überprüfung geschäftskritischer Workloadanforderungen

Treffen Sie sich regelmäßig mit leitenden Sponsoren, um Anforderungen zu definieren. Diese Überprüfungen bieten die Möglichkeit, die Erwartungen in Einklang zu bringen und die Zuweisung von operativen Ressourcen an die Initiative sicherzustellen.

Azure-Erleichterung

Der Microsoft Security Development Lifecycle bietet ein Tool zur Bedrohungsmodellierung, um den Prozess der Bedrohungsmodellierung zu unterstützen. Dieses Tool steht ohne zusätzliche Kosten zur Verfügung. Weitere Informationen finden Sie auf der Seite Bedrohungsmodellierung.

Beispiel

Dieses Beispiel baut auf der IT-Umgebung (Information Technology) auf, die in der Sicherheitsbaseline (SE:01) eingerichtet wurde. Dieser Ansatz bietet ein umfassendes Verständnis der Bedrohungslandschaft in verschiedenen IT-Szenarien.

Diagramm, das ein Beispiel für die Sicherheitsbaseline eines organization mit Bedrohungslandschaft zeigt.

  1. Entwicklungslebenszyklus-Personas. Es gibt viele Personen, die an einem Entwicklungslebenszyklus beteiligt sind, einschließlich Entwicklern, Testern, Endbenutzern und Administratoren. Alle können kompromittiert sein und Ihre Umgebung durch absichtlich erstellte Sicherheitsrisiken oder Bedrohungen gefährden.

  2. Potenzielle Angreifer. Angreifer betrachten eine Vielzahl von Tools, die jederzeit leicht zur Verfügung stehen, um Ihre Sicherheitsrisiken zu untersuchen und einen Angriff zu starten.

  3. Sicherheitskontrollen. Identifizieren Sie im Rahmen der Bedrohungsanalyse Azure-Sicherheitsdienste, die zum Schutz Ihrer Lösung verwendet werden sollen, und wie effektiv diese Lösungen sind.

  4. Protokollsammlung. Protokolle von Azure-Ressourcen und einigen lokalen Komponenten werden möglicherweise an Azure Log Analytics gesendet, damit Sie das Verhalten Ihrer entwickelten Lösung verstehen und versuchen, anfängliche Sicherheitsrisiken zu erfassen.

  5. Siem-Lösung (Security Information Event Management) Microsoft Sentinel kann bereits in einer frühen Phase der Lösung hinzugefügt werden, sodass Sie einige Analyseabfragen erstellen können, um Bedrohungen und Sicherheitsrisiken zu minimieren und Ihre Sicherheitsumgebung zu antizipieren, wenn Sie sich in der Produktion befinden.

  6. Microsoft Defender für Cloud können einige Sicherheitsempfehlungen geben, um den Sicherheitsstatus zu verbessern.

Unter Open Web Application Security Project (OWASP) ist ein Ansatz zur Bedrohungsmodellierung dokumentiert.

Checkliste für die Sicherheit

Weitere Informationen finden Sie im vollständigen Satz von Empfehlungen.