Microsoft Dynamics 365 Datenexposition: Zugriff auf Passwort-Hashes 🔑

Kritische Schwachstellen in Dynamics 365 und Power Apps Web API offenbaren sensible Unternehmensdaten
Anfang 2024 entdeckten Cybersicherheitsforscher von Melbourne-basiertem Stratus Security eine Reihe schwerwiegender Sicherheitslücken in Microsoft Dynamics 365 und Power Apps Web API, die Millionen sensibler Nutzeraufzeichnungen unbefugt zugänglich gemacht hätten. Diese kritischen Fehler, die während routinemäßiger Penetrationstests entdeckt und im Mai 2024 von Microsoft behoben wurden, könnten Angreifern ermöglichen, Zugriffskontrollen zu umgehen und Passwort-Hashes, E-Mail-Adressen, Finanzdaten, Telefonnummern sowie andere persönlich identifizierbare Informationen aus der Kontakte-Tabelle abzurufen.
Die Schwachstellen zeigen eine ernüchternde Realität für Unternehmen: Selbst komplexe Plattformen mit robusten Sicherheitsframeworks können kritische Schwachstellen in ihrer API-Implementierung aufweisen. Diese umfassende Analyse beleuchtet die drei von Stratus Security entdeckten Schwachstellen, ihre Ausnutzungsmechanismen, die realen Auswirkungen und wesentliche Strategien zur Behebung der Sicherheitslücken in Dynamics 365 und Power Apps.
Das Schwachstellen-Landschaft verstehen
Was ist Microsoft Dynamics 365 und Power Apps?
Microsoft Dynamics 365 ist Microsofts umfassende CRM/ERP-Lösung, während Power Apps Low-Code/No-Code-Plattformen für die Entwicklung von Anwendungen und Websites sind, die weltweit von Unternehmen genutzt werden. Bei der Kommunikation dieser Anwendungen mit Power Pages werden Daten im “Dataverse” gespeichert und können optional über eine API mit feingranularen Zugriffskontrollen exponiert werden. Die Schwachstellen basierten auf Schwächen in genau diesen Zugriffskontrollmechanismen.
Der Entdeckungsprozess
Die Schwachstellen wurden erstmals bei Penetrationstests an einer Webanwendung auf Microsoft Power Pages entdeckt, als der Forscher die API-Funktionalität weiter untersuchte. Diese Entscheidung erwies sich als entscheidend, da sie drei unterschiedliche, aber verwandte Schwachstellen offenbarten, die die Sicherheit jeder Organisation, die diese Plattformen nutzt, gefährden könnten.
Schwachstelle #1: OData Web API Filter Zugriffskontrollfehler
Technische Übersicht
Die erste Schwachstelle resultierte aus unzureichenden Zugriffskontrollen beim OData Web API Filter, die unbefugten Zugriff auf sensible Daten in der Kontakte-Tabelle erlaubten, inklusive vollständiger Namen, Telefonnummern, Adressen, Finanzdaten und Passwort-Hashes. Das Open Data Protocol (OData) ist für standardisierten REST-basierten Datenzugriff konzipiert, doch in diesem Fall waren die Zugriffsbeschränkungen unzureichend.
Exploit-Mechanismus: Boolesche Zeichenextraktion
Die Exploitation nutzte eine clevere boolean-basierte Suchmethode, die Angreifern erlaubte, vollständige Passwort-Hashes Zeichen für Zeichen zu extrahieren. Dabei wurden sequenzielle Abfragen wie startswith(adx_identity_passwordhash, 'a'), dann startswith(adx_identity_passwordhash, 'aa'), startswith(adx_identity_passwordhash, 'ab') usw. durchgeführt, bis der vollständige Hash ermittelt war.
Diese blinde boolean-basierte Extraktionsmethode funktioniert durch:
- Initiale Abfrage: Mit einem einzelnen Zeichen
- Ergebnisprüfung: Ob die Abfrage Ergebnisse liefert
- Iterative Verfeinerung: Hinzufügen weiterer Zeichen bei positiven Ergebnissen
- Vollständige Extraktion: Bis keine weiteren gültigen Zeichen gefunden werden
Das Schöne (aus Sicht eines Angreifers) an dieser Technik ist ihre Zuverlässigkeit und Automatisierungspotenzial. Ein einfaches Skript könnte systematisch komplette Passwortdatenbanken extrahieren, sofern genügend Zeit vorhanden ist.
Auswirkungen in der Praxis
Die Fähigkeit, Passwort-Hashes zu extrahieren, hat schwerwiegende Folgen:
- Credential-Compromise: Schwache Hashes könnten mit Rainbow-Tabellen oder Brute-Force geknackt werden
- Lateral Movement: Kompromittierte Anmeldedaten ermöglichen Zugriff auf weitere Systeme
- Identitätsdiebstahl: Gestohlene Anmeldedaten erleichtern Identitätsbetrug
- Unternehmensspionage: Wettbewerbsinformationen durch unbefugten Datenzugriff
Schwachstelle #2: Exploitation der OData Orderby Klausel
Technische Details
Die zweite Schwachstelle wurde bei der Validierung des Patches für die erste Lücke entdeckt und nutzte die orderby-Klausel in der OData Web API, um Daten aus bestimmten Tabellenspalten abzurufen. Diese Schwachstelle war sogar gefährlicher als die erste, da sie die Daten direkt zurückgab und somit eine groß angelegte Ausnutzung erleichterte.
Exploit-Ansatz
Im Gegensatz zur ersten Schwachstelle, die eine iterative Zeichenextraktion erforderte, erlaubte die orderby-Schwachstelle Angreifern:
- Abfragen, die auf bestimmte Spalten zielen (z.B.
EMailAddress1für primäre E-Mail-Adressen) - Daten in absteigender Reihenfolge abzurufen, um wertvolle Zielpersonen zu priorisieren
- Vollständige Datensätze mit minimalem Query-Overhead zu extrahieren
- Angriffe auf mehrere Tabellen und Umgebungen zu skalieren
Microsoft wurde diese Schwachstelle am 13. Februar 2024 gemeldet, am 22. Februar bestätigt und erhielt aufgrund ihrer weiten Verbreitung eine Belohnung von 20.000 USD für die Offenlegung.
Szenarien der Datenexposition
Die orderby-Schwachstelle ermöglichte mehrere Angriffsszenarien:
- Massene-Mail-Erfassung: Tausende E-Mail-Adressen für Phishing-Kampagnen
- Diebstahl von Kundendatenbanken: Komplette Kontaktinformationen herunterladen
- Wettbewerbsanalyse: Zugriff auf Geschäftskontakte und Beziehungen
- Gezielte Angriffe: Hochwertige Personen für Spear-Phishing identifizieren
Schwachstelle #3: FetchXML API Zugriffskontrollumgehung
Verständnis des FetchXML API
FetchXML ist eine XML-basierte Abfragesprache, die proprietär für Microsoft Dynamics 365 ist und leistungsstarke Datenabrufmöglichkeiten bietet. Obwohl flexibel, enthielt die Implementierung des FetchXML API einen kritischen Fehler, der eine vollständige Zugriffskontrollumgehung erlaubte.
Der kritische Fehler
Beim Einsatz des FetchXML API konnten Angreifer eine orderby-Abfrage auf beliebige Spalten erstellen, wodurch bestehende Zugriffskontrollen umgangen wurden. Im Gegensatz zu den vorherigen Schwachstellen war bei dieser Methode keine Abfrage in absteigender Reihenfolge erforderlich, was die Flexibilität erhöhte.
Diese dritte Schwachstelle war die vielseitigste, weil:
- Universeller Spaltenzugriff: Jede Spalte konnte abgefragt werden, unabhängig von Zugriffsrechten
- Flexible Sortierung: Keine spezifischen Sortieranforderungen
- Vollständige Umgehung: Zugriffskontrollen wurden vollständig umgangen
- Einfache Ausnutzung: Benötigte nur Grundkenntnisse in FetchXML
Angriffsmethodik
Die FetchXML-Schwachstelle funktionierte ähnlich wie die orderby-Schwachstelle, indem Angreifer auf eingeschränkte Spalten zugriffen, indem sie eine orderby-Abfrage nutzten. Eine einzelne exponierte Spalte war ausreichend, um diese Schwachstelle auszunutzen und unbefugten Zugriff auf sensible Daten zu erlangen.
Der typische Ablauf:
- Reconnaissance: Eine exponierte Spalte im Zieltable identifizieren
- Abfrageerstellung: FetchXML-Abfrage mit
orderby-Klausel auf eingeschränkte Spalten bauen - Ausführung: Abfrage über das FetchXML API-Endpunkt absenden
- Datenextraktion: Vollständige Daten der eingeschränkten Spalte abrufen
- Lateral Expansion: Über mehrere Tabellen und Umgebungen wiederholen
Der Offenlegungs- und Behebungszeitplan
Verantwortungsvolle Offenlegung
Der Prozess begann am 2. Dezember 2023, als Stratus Security Microsoft eine detaillierte Beschreibung der ersten Schwachstelle inklusive eines Demonstrations-GIFs zum Passwort-Hash-Extrahieren und eines Proof of Concept für Tests übermittelte.
Der Zeitplan:
2. Dezember 2023: Erste Schwachstelle an Microsoft gemeldet
3. Februar 2024: Microsoft bestätigt Patch-Implementierung für die erste Schwachstelle
4. Februar 2024: Microsoft patcht die erste Schwachstelle, sodass die Filtertechnik die gleiche Antwort wie die select-Anweisung bei deaktivierten Spalten liefert
13. Februar 2024: Zweite Schwachstelle bei Patch-Validierung entdeckt
22. Februar 2024: Zweite Schwachstelle bestätigt
Anfang März 2024: Zweite Schwachstelle behoben
22. März 2024: Dritte Schwachstelle entdeckt und sofort gemeldet
Mai 2024: Alle drei Schwachstellen vollständig behoben
Herausforderungen im Offenlegungsprozess
Über die eineinhalb Monate nach der ersten Meldung gab es zahlreiche Abstimmungen zwischen den Forschern und Microsoft, inklusive einiger Missverständnisse. Dies zeigt die Komplexität der Schwachstellenoffenlegung, selbst bei kooperierenden Anbietern.
Zudem verdeutlicht die Kaskaden-Natur dieser Schwachstellen – bei der Behebung einer entdeckte eine andere – die Bedeutung von Defense-in-Depth-Prinzipien, die nicht nur Prävention, sondern auch Erkennung und Behebung umfassen.
Organisatorische Auswirkungen und Risikobewertung
Mögliche Angriffsszenarien
Unternehmen, die verwundbare Dynamics 365 und Power Apps einsetzen, waren mehreren Angriffsvektoren ausgesetzt:
Szenario 1: Credential-Harvesting-Kampagne Angreifer könnten Passwort-Hash-Listen und E-Mail-Adressen sammeln, Passwörter knacken oder die Daten auf Dark-Web-Marktplätzen verkaufen.
Szenario 2: Gezielte Phishing-Operationen Mit Zugriff auf vollständige Kontaktdatenbanken inklusive E-Mail-Adressen, Telefonnummern und Organisationsbeziehungen könnten Angreifer hochentwickelte Spear-Phishing-Kampagnen starten.
Szenario 3: Unternehmensspionage Systematischer Zugriff auf Kunden- und Finanzdaten sowie Geschäftsbeziehungen.
Szenario 4: Ransomware-Vorläufer Erster Zugriff durch kompromittierte Anmeldedaten, gefolgt von lateralem Movement und letztlich Ransomware-Deployment.
Branchenrisiken
Diese Schwachstellen stellten besondere Risiken für Organisationen in folgenden Branchen dar:
- Finanzdienstleistungen: Banken, Versicherungen, Investmentfirmen mit umfangreichen Kundendaten
- Gesundheitswesen: Krankenhäuser und medizinische Anbieter mit Patientendaten
- Einzelhandel: E-Commerce-Plattformen mit Zahlungsinformationen
- Professionelle Dienstleistungen: Beratungsfirmen, Anwaltskanzleien, Buchhaltung
- Regierungsstellen: Öffentlicher Sektor mit Bürgerdaten
Technischer Deep Dive: Ursachenanalyse
Zugriffskontrollfehler
Alle drei Schwachstellen hatten eine gemeinsame Ursache: unzureichende Validierung der Zugriffskontrollen auf API-Ebene. Die Schwachstellen machten jede andere Spalte in einer Tabelle angreifbar, solange eine einzelne Spalte offen war, was eine sehr häufige Konfiguration ist.
Diese architektonische Schwäche bedeutete:
- Spaltenbezogene Sicherheit wurde an der API-Grenze nicht richtig durchgesetzt
- Query-Filter und Sortierklauseln umgingen die Autorisierungsprüfungen
- Entscheidungen zur Zugriffskontrolle basierten auf impliziten statt expliziten Validierungen
- Defense-in-Depth-Prinzipien wurden nicht ausreichend umgesetzt
Anti-Patterns in API-Sicherheit
Die Schwachstellen zeigten mehrere gängige Anti-Patterns:
Unzureichende Eingabevalidierung: API-Abfragen wurden nicht richtig sanitisiert oder gegen Sicherheitsrichtlinien validiert
Vertrauensgrenzenverletzungen: API vertraute Client-Anfragen ohne serverseitige Überprüfung
Informationsleckage: Fehler- und Abfrageantworten gaben Hinweise auf die Datenbankschema
Privilege Escalation: Eingeschränkter Zugriff auf eine Spalte ermöglichte Zugriff auf alle Spalten
Strategien und Best Practices zur Minderung
Sofortmaßnahmen
Unternehmen, die Microsoft Dynamics 365 und Power Apps nutzen, sollten folgende Schritte umsetzen:
1. Patch-Status prüfen Alle Umgebungen auf Versionen nach Mai 2024 aktualisieren.
2. Zugriffskontrollen überprüfen Strikte Zugriffskontrollen implementieren, um unbefugte Abfragen auf sensible Tabellen wie Kontakte zu verhindern, und rollenbasierte Zugriffskontrollen (RBAC) nutzen.
3. API-Berechtigungen auditieren Regelmäßig Berechtigungen prüfen und überflüssige oder veraltete Rechte entfernen.
4. Monitoring aktivieren Ratenbegrenzung und Überwachung für API-Anfragen einführen, um Enumeration-Versuche zu erkennen und zu blockieren.
Langfristige Sicherheitsmaßnahmen
Verbesserte Passwortsicherheit Hashing-Algorithmen wie bcrypt oder Argon2 verwenden, um die Rechenkomplexität zu erhöhen und Brute-Force-Angriffe zu erschweren.
Abfragevalidierung Query-Validierung und -Filtern anwenden, um unbefugten Zugriff zu verhindern, und API-Gateways oder Middleware nutzen, um schädliche Abfragen zu blockieren.
Spaltenbezogene Sicherheit Strikte Validierung der Abfragen, um sicherzustellen, dass nur autorisierte Spalten abgefragt werden, und Spalten-Sicherheitsrichtlinien durchsetzen.
Aktivitätsüberwachung API-Aktivitäten überwachen und protokollieren, um ungewöhnliche Muster zu erkennen, und regelmäßige Penetrationstests durchführen.
Breitere Auswirkungen auf die Unternehmenssicherheit
Die Herausforderung der API-Sicherheit
Diese Schwachstellen unterstreichen die zentrale Bedeutung der API-Sicherheit in modernen Unternehmensumgebungen. Mit zunehmender Offenlegung von Daten über APIs wächst die Angriffsfläche erheblich.
Wichtige Erkenntnisse:
- Defense in Depth: Mehrere Sicherheitsebenen sind essenziell
- Explizite Validierung: Client-Eingaben niemals vertrauen
- Regelmäßige Bewertungen: Kontinuierliche Sicherheitstests erkennen Bedrohungen frühzeitig
- Schnelle Patch-Implementierung: Minimiert Angriffsfenster
Die Sicherheitsdimension der Lieferkette
Unternehmen müssen nicht nur ihre eigenen Systeme sichern, sondern auch ihre Anbieter, die robuste Sicherheitspraktiken einhalten. Die Entdeckung zeigt, wie wichtig ständige Wachsamkeit ist, besonders bei großen Firmen mit sensiblen Daten.
Empfehlungen für Sicherheitsarchitektur
Zero Trust Prinzipien
Unternehmen sollten Zero Trust-Architekturprinzipien für Dynamics 365 und Power Apps umsetzen:
Never Trust, Always Verify: Jede Anfrage authentifizieren und autorisieren Least Privilege: Minimale Berechtigungen gewähren Assume Breach: Systeme auf Kompromittierung vorbereiten Verify Explicitly: Mehrfaktor-Authentifizierung verwenden
API-Sicherheitsrahmen
Umfassende API-Sicherheitskontrollen implementieren:
- Authentifizierung: Starke Multi-Faktor-Authentifizierung
- Autorisierung: Granulare, richtlinienbasierte Zugriffskontrollen
- Verschlüsselung: TLS 1.3 für alle Daten in Bewegung
- Protokollierung: Umfassende Audit-Trails
- Rate Limiting: Enumeration und Brute-Force verhindern
- Eingabevalidierung: Strenge Sanitierung aller Eingaben
- Ausgabe-Encoding: Informationsleckage durch Fehlermeldungen vermeiden
Organisatorische Reaktion und Governance
Vorfallmanagement
Unternehmen sollten Pläne für Vorfallreaktionen entwickeln:
Erkennungsphase - Überwachung auf ungewöhnliche API-Abfragen - Alarm bei fehlgeschlagenen Autorisierungsversuchen - Überwachung auf Datenexfiltration
Eindämmungsphase - Temporäres Abschalten der anfälligen API-Endpunkte - Blockieren verdächtiger IPs - Isolierung betroffener Umgebungen
Beseitigungsphase - Sofortige Sicherheitsupdates - Überprüfung und Anpassung der Zugriffskontrollen - Entfernen unbefugter Zugangsdaten
Wiederherstellungsphase - Dienste mit verbesserten Sicherheitsmaßnahmen wiederherstellen - Wirksamkeit der Sicherheitskontrollen prüfen - Betroffene Stakeholder informieren
Lessons Learned - Vorfallablauf dokumentieren - Verbesserungen im Prozess identifizieren - Sicherheitsrichtlinien aktualisieren
Compliance und regulatorische Aspekte
Diese Schwachstellen haben erhebliche Auswirkungen auf die Einhaltung gesetzlicher Vorgaben:
GDPR: Meldepflicht bei Datenschutzverletzungen HIPAA: Mögliche Verstöße bei Schutz personenbezogener Gesundheitsdaten PCI DSS: Sofortige Reaktion bei Zahlungsdatenverletzungen SOX: Finanzdatenintegrität
Zukunftsausblick und sich entwickelnde Bedrohungen
Neue Angriffsvektoren
Mit zunehmender API-Nutzung entwickeln sich Angriffswege:
- GraphQL-Exploits: Neue Abfragesprachen-Schwachstellen
- Microservices-Angriffe: Service-zu-Service-Kommunikation
- Serverless-Schwachstellen: Sicherheitslücken bei Function-as-a-Service
- AI/ML API Missbrauch: Angriffe auf Machine-Learning-Endpunkte
Proaktive Sicherheitsmaßnahmen
Unternehmen sollten investieren in:
API-Sicherheitstests: Regelmäßige automatisierte und manuelle Bewertungen Threat Intelligence: Überwachung neuer API-Schwachstellen Sicherheitsschulungen: Entwickler auf sichere API-Designs schulen Kontinuierliche Überwachung: Echtzeit-Erkennung von API-Missbrauch
Fazit: Lessons Learned und Weg nach vorn
Die Entdeckung dieser drei Schwachstellen in Microsoft Dynamics 365 und Power Apps Web API zeigt, dass selbst etablierte, unternehmensgerechte Plattformen kritische Sicherheitslücken aufweisen können. Die ausgeklügelten Exploit-Methoden – von boolean-basierter Zeichenextraktion bis FetchXML-Bypass – verdeutlichen die Kreativität und Hartnäckigkeit moderner Angreifer.
Für Organisationen gilt es:
- Vulnerability Assumption: Kein System ist perfekt; auf Kompromittierung vorbereiten
- Layered Defense: Mehrere Sicherheitskontrollen erhöhen die Resilienz
- Continuous Monitoring: Früherkennung minimiert Schäden
- Schnelles Patchen: Schließt Angriffsfenster
- Regelmäßige Tests: Sicherheitsbewertungen offenbaren Schwachstellen
Microsofts Reaktion – Zusammenarbeit mit Sicherheitsforschern und schnelle Patch-Implementierung – zeigt, wie wichtig Vendor-Kooperation ist. Dennoch müssen Organisationen die Verantwortung für ihre Sicherheit selbst übernehmen.
Da Unternehmensanwendungen zunehmend auf APIs für Integration und Automatisierung setzen, wird API-Sicherheit zur Priorität. Die FetchXML API-Schwachstellen erinnern daran, dass mächtige Funktionen auch mächtige Risiken bergen, wenn sie nicht richtig abgesichert sind.
Unternehmen, die Microsoft Dynamics 365 und Power Apps verwenden, sollten umgehend ihren Patch-Status prüfen, Zugriffskontrollen überarbeiten, erweiterte Überwachung implementieren und Sicherheitsbewertungen durchführen, um sich gegen diese und ähnliche Schwachstellen zu schützen. Die Kosten für Prävention sind immer geringer als die Kosten für Reaktion, Behebung und Reputationsschäden.
In der sich ständig wandelnden Bedrohungslandschaft sind Wachsamkeit, proaktiver Schutz und schnelle Reaktion die Grundpfeiler eines effektiven Sicherheitsmanagements. Diese Schwachstellen wurden zwar behoben, doch die Lektionen über API-Sicherheit, Zugriffskontrolle und Defense-in-Depth-Architektur bleiben für Jahre relevant.
Schlüsselwörter: Microsoft Dynamics 365 Schwachstellen, FetchXML API Sicherheit, Power Apps Web API Exploits, Passwort-Hash-Extraktion, OData Sicherheitslücken, Dataverse Zugriffskontrolle, Unternehmens-API-Sicherheit, Cybersicherheitslücken 2024, CRM Sicherheitsrisiken, Microsoft Sicherheitspatches
Related InstaTunnel pages
Continue from this article into the most relevant product guides and workflows.
Related Topics
Keep building with InstaTunnel
Read the docs for implementation details or compare plans before you ship.