WhatTheAzureCA – Zugriffssicherheit für M365 und Azure Conditional Access

Azure Conditional Access - Türsteher in der cloud

Die Microsoft Cloud-Welt rund um Microsoft Azure und Microsoft 365 bietet Anwendern die Möglichkeit, von Überall jederzeit auf Dienste und Schnittstellen zuzugreifen – geschützt, einzig durch eine individuelle Authentifizierung mit Benutzername + X. Dieses „+ X“ kann dabei das Passwort sein, das Passwort + OTP, oder eine „phishing-resistant“ Authentifizierungsmethode per Yubikey. Eine enorme Angriffsfläche, insbesondere wenn sensible Daten in SharePoint-Online abgelegt oder vertrauliche E-Mails über Exchange Online verschickt und empfangen werden. 

Um unberechtigte Zugriffe zu verhindern, bietet Azure AD Conditional Access (CA) ein flexibel konfigurierbares Regelwerk, mit dem sich genau definieren lässt, „wer“, „unter welchen Bedingungen“, „worauf“ zugreifen darf. 

Allein die Auswertung des erstellten Regelwerks kann bisweilen komplex werden. Wir haben ein Tool entwickelt, mit dem sich die „What If“-Abfragen zur Auswertung des CA-Regelwerks automatisierten lassen und dieses auf GitHub veröffentlicht: „WhatTheAzureCA“

Die Herausforderungen und Möglichkeiten, stellen wir hier vor.

What If - Was wäre, wenn ...

Was wäre wenn?! Diese Frage stellt sich wohl jedes Unternehmen mal, wenn das CA-Regelwerk erstmal angelegt ist. Microsoft bietet für die Beantwortung der Frage die „What If“-Funktion innerhalb der Azure Conditional Access Policies. 

Azure-AD-CA-WhatIf-Link

Ein Schulungsteilnehmer meinte einst, es wäre nicht möglich, über 1000 Conditional Access-Policies in einem Tenant zu bauen – okay, vielleicht ein Extremfall. Im Rahmen unserer Beratungsprojekte kam so eine extreme Anzahl Policies noch nicht vor. Aber unübersichtlich kann es schon mal werden. Was wäre denn, wenn … 

  • Der Benutzer bi-sec GmbH auf …
    • Teams oder 
    • SharePoint oder 
    • portal.azure.com
  • zugreifen möchte, aus
    • Deutschland oder 
    • Amerika oder 
    • dem Firmennetzwerk
  • mit einem
    • iOS oder 
    • Windows oder 
    • Android
  • Gerät, über
    • einen Browser oder 
    • mit einem modern Authentication Client 
  • zugreifen möchte, wenn
    • das Geräte Azure-Joined oder 
    • Compliant oder 
    • not compliant 
  • ist?
What If - Beispiel

Mit „What If“ im Browser lassen sich all diese Szenarien nachbauen. Aber die Anzahl an Fällen … wird schnell unübersichtlich. 3 x Apps * 3 x IP-Adresse / Country * 3 x Plattform * 2 x Client-App * 2 x Compliance-Status ergibt rein rechnerisch 108 Szenarien. Pro Benutzer / Gruppe, die hier von Interesse ist. Im Browser eine leichte Herausforderung. 

What If - Automatisierung

Das Schöne am Azure Portal: Alle Anfragen lassen sich transparent rauskopieren:

  • F12 im Browser zum Öffnen der Developer Tools 
  • Auswählen des Reiters Netzwerk 
  • Ausführen der What If-Abfrage
  • Rechtsklick auf den POST-Request mit „Evaluate“ als Ziel
  • Wert kopieren 
  • „Als PowerShell kopieren“

Schon haben wir die What If-Abfrage mit allen notwendigen Parametern.

What If - Request kopieren

Mit dem richtigen Request, den notwendigen Access Token und ein bisschen PowerShell lassen sich anschließend die Anfragen automatisieren. WhatTheAzureCA macht exakt dies: Es automatisiert die Anfragen, die sonst im Portal über „What If“ ausgelöst werden können. Dadurch lassen sich schnell beliebig viele Szenarien durchspielen und als CSV / Excel-Datei zur weiteren Auswertung ausgeben. Extrem Hilfreich bei der Evaluierung der tatsächlich angewendeten Conditional Access Regelwerke für verschiedene Benutzer.  

WhatTheResults...

Am Ende gibt es Ergebnisse. Azure Conditional Access Regeln für die verschiedenen Szenarien als .csv-Files. Für jedes einzelne Szenario. Und das können in einem realen Audit schon mal schnell ein paar tausend Zeilen CSV sein. 

WhatTheAzureCA - Beispielergebnisse

Mit ein bisschen Excel-Magie lassen sich so schnell Auswertungen pro Szenario erstellen: 

  • Kann einer der ausgewählten Benutzer ohne MFA auf einen bestimmten ServicePrincipal zugreifen?
  • Werden alle Aufrufe ohne „Compliant“-Device geblockt? 
  • Kann der Notfall-Admin noch ohne eigenes Gerät und ohne MFA auf das Azure-Portal zugreifen?

Fragen, die im Zweifel über kompromittierte Daten oder einen längeren Wiederherstellungsprozess des Zugriffs mit Microsoft entscheiden.  

Sicherheit durch Transparenz

Fragt man einen Azure-Admin, dann ist die Antwort zu Conditional Access in der Regel eindeutig: Ja, machen wir. Ja, haben wir im Griff. Als Unternehmen, dass Sicherheitsbewertungen von Azure und M365 regelmäßig macht, mehrfach im Jahr Schulungen gibt und selbst in Azure unterwegs ist kann ich sagen: naja. Die Transparenz und Sicherheit durch die automatisierte Abfrage von Szenarien gibt schon ein besseres Gefühl. Nutzen Sie WhatTheAzureCA, um dieses Stückchen Sicherheit für sich zu gewinnen. Durch den hohen Automatisierungsgrad auch perfekt nach Changes oder im Rahmen von regelmäßigen, quartalsweisen Schwachstellenscans und Sicherheitsüberprüfungen!