Sollten Standard-Nutzer in deinem Tenant eine Azure App Registration durchführen dürfen? Die Antwort ist ganz klar “Nein” und dieser Artikel zeigt anschaulich, warum. Ansonsten genügt Angreifern ein einziger kompromittierter Standard-Account, um ihre Rechte enorm zu erweitern und sich Zugriff auf persönliche E-Mails zu verschaffen. Wir stellen zunächst ein realistisches Angriffs-Szenario über die Azure App Registration vor und erklären dann, mit welcher einfachen Maßnahme du dich davor schützen kannst.
Wenn du dich zunächst grundsätzlich über Microsoft Entra (ehem. Azure AD) informieren möchtest, findest du alle Basics in unserem Grundlagenartikel Was ist Microsoft Entra (ehem. Azure) mit vielen anschaulichen Screenshots. Weiterführende Artikel zu Angriffen und Schutzmöglichkeiten findest du hier:
Als nächstes führen wir eine Azure App Registration im Tenant durch (Der Name der App erscheint im Phishing während der Anfrage der Berechtigungen beim Opfer).
Bei der Azure App Registration wählen wir die Option “Konten in einem beliebigen Organisationsverzeichnis”.
Dann legen wir eine Umleitungs-URI an. Unter dieser URL stellen wir als Angreifer einen oAuth-Server bereit.
Nach der Azure App Registration nehmen wir folgende Einstellungen an der App vor:
Unter “Zertifikate & Geheimnisse” generieren wir einen geheimen Client-Schlüssel.
Nun müssen wir unter “API-Berechtigungen” die notwendigen Berechtigungen bei “Microsoft Graph” setzen:
So könnte eine beispielhafte Konfiguration aussehen:
Zuletzt müssen wir unter “Authentifizierung” die Regel “Öffentliche Clientflows Zulassen” auf “Ja” setzen, um die Delegierten Berechtigungen auf einem externen oAuth-Server laufen lassen zu können:
Nach dem Einrichten der App erstellen wir einen Phishing-Link mit folgenden Parametern:
'https://login.microsoftonline.com/common/oauth2/v2.0/authorize?'
- 'client_id= &'
- 'response_type=code &'
- 'redirect_uri= &'
- 'response_mode=query &'
- 'scope= &'
- 'stat=12345'
https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=96d16e72-3484-4aac-8377-12799fe0c9d8&response_type=code&redirect_uri=https://app.secure-handler.de&response_mode=query&scope=email%20mail.read%20mail.send%20openid%20profile%20user.read%20user.readbasic.all&stat=12345
Der Grund für die Erstellung des Phishing-Links besteht darin, dass der erstellte Link nach keiner “verdächtigen” URL aussieht. Unser Opfer sieht somit einen regulären und legitimen Microsoft Login und kann sich mit seinen validen Zugangsdaten bei Microsoft anmelden.
Anschließend können wir den Phishing-Link per Mail versenden.
Sobald ein Opfer in die Falle getappt ist, erscheint bei ihm diese Meldung, die zum Akzeptieren der Berechtigungen auffordert:
Wenn ein Opfer die Berechtigungen akzeptiert und sich anmeldet, folgt eine Weiterleitung auf den von uns bereitgestellten oAuth-Server. Hier wird der Access-Token abgefangen.
Schließlich können wir den abgefangenen Access-Token verwenden, um uns im Benutzerkontext unseres Opfers mit den Delegierten Berechtigungen der App zu authentifizieren.
Denkbare Berechtigungen für ein realistisches Angriffs-Szenario wären:
Zusammengefasst haben wir durch das hier dargestellte Angriffs-Szenario das zuvor kompromittierte Konto eines normalen Nutzers eines Tenants verwendet, um an zahlreiche weitere Berechtigungen und Informationen zu gelangen. Hierfür haben wir die Azure App Registration genutzt, die in den Standard-Einstellungen für alle Nutzer frei zur Verfügung steht.
Im folgenden Abschnitt zeigen wir, wie du einen solchen Angriff in 3 einfachen Schritten verhindern kannst.
Es ist ratsam, die Registrierung von selbst entwickelten Anwendungen nur einem Administrator zu gestatten. Dadurch wird sichergestellt, dass diese Anwendungen einem formellen Sicherheitsüberprüfungs- und Genehmigungsprozess unterzogen werden, bevor sie Zugriff auf Azure Active Directory-Daten erhalten.
In bestimmten Fällen kann es sinnvoll sein, bestimmten Benutzern wie Entwicklern oder anderen Anwendern mit hohen Anforderungen Berechtigungen zu übertragen, um lange Wartezeiten auf einen administrativen Benutzer zu vermeiden. Es ist wichtig, dass Richtlinien überprüft und die spezifischen Bedürfnisse festlegt werden, um eine angemessene Zugriffssteuerung zu gewährleisten.
Daher empfehlen wir, normalen Benutzern das Registrieren von Apps zu untersagen. Dies kann in folgenden 3 Schritten im Azure Portal eingestellt werden:
In unserem realistischen Angriffs-Szenario haben wir gezeigt, warum die Azure App Registration dem Administrator eines Tenants vorbehalten sein sollte. Ansonsten können Angreifer ihre Rechte über einen einzigen kompromittierten Account in wenigen Schritten enorm ausweiten.
Dies erreichen Angreifer, indem sie über den kompromittierten Account eine App mit bestimmten Einstellungen registrieren, einen Phishing-Link erstellen und diesen an potenzielle weitere Opfer senden. Wenn Nutzer über diesen Link den eingestellten Berechtigungen zustimmen und ihre Zugangsdaten eingeben, fangen die Angreifer diese über einen oAuth-Server ab. Dadurch können sie beispielsweise E-Mails im Namen der Opfer versenden oder alle anderen Nutzer des Tenants enumerieren.
Um einen solchen Angriff zu verhindern, sind nur wenige Klicks im Microsoft Entra Admin Center notwendig: Lege einfach fest, dass Benutzer standardmäßig keine eigenen Anwendungen registrieren dürfen. Ausnahmen können beispielsweise für Entwickler sinnvoll sein.
Wir verwenden Cookies, und Google reCAPTCHA, das Google Fonts lädt und mit Google-Servern kommuniziert. Durch die weitere Nutzung unserer Website stimmen Sie der Verwendung von Cookies und unserer Datenschutzerklärung zu.