Nach einem Angriff oder bei Kenntnis von kompromittierten Zugangsdaten widerrufen Admins Passwörter und lassen es neu setzen, damit bösartige Akteure sich mit erbeuteten Daten nicht anmelden können. Ist der Zugriff mit Remote-Desktop-Protokoll (RDP) aktiviert, hilft das nur nichts: Die alten Passwörter bleiben dort gültig.
Von diesem unerwarteten Verhalten berichtet Arstechnica. Demnach hat der IT-Sicherheitsforscher Daniel Wade dem Microsoft Security Response Center (MSRC) dieses Verhalten berichtet. Laut ihm funktionieren alte Zugangsdaten in RDP weiterhin, selbst auf brandneuen Maschinen. Neuere Passwörter können ignoriert werden, während ältere noch funktionieren. Weder Windows Defender noch Entra ID oder Azure liefern Warnungen. Es gibt keinen eindeutigen Weg für Nutzerinnen und Nutzer, dieses Problem aufzudecken und zu korrigieren. Microsoft dokumentiert dieses Szenario nicht direkt.
Microsoft: „Design-Entscheidung“ trifft Definition von „Schwachstelle“ nicht
Laut Microsoft handelt es sich um eine „Design-Entscheidung, die sicherstellt, dass mindestens ein Nutzerkonto dazu in der Lage ist, sich anzumelden, ganz gleich, wie lange das System offline war“. Daher treffe dieses Verhalten die Definition einer Schwachstelle nicht. Microsoft habe keine Pläne, etwas daran zu ändern.
RDP dient dazu, sich aus der Ferne an (Windows-)Maschinen anzumelden, um darauf genauso zu arbeiten wie an einem lokalen Rechner. Dazu leitet die Software die Desktop-Ausgabe auf die entfernte Maschine um. Sofern ein Rechner mit einem Microsoft- oder Azure-Konto den Fernzugriff aktiviert hat, können sich Nutzerinnen und Nutzer mit einem Passwort über RDP anmelden. Das wird gegen lokal gespeicherte Zugangsdaten abgeglichen. Alternativ können sie sich mit dem Online-Konto anmelden, mit dem lokale Nutzer sich an dem PC angemeldet haben.
Allerdings bleibt das Passwort für den Fernzugriff gültig, selbst wenn Nutzerinnen und Nutzer es geändert haben. Im Ergebnis können in einigen Fällen ältere Passwörter funktionieren und neuere hingegen nicht. Am Ende steht ein persistenter RDP-Zugang, der Cloud-Verifizierung, Mehr-Faktor-Authentifizierung und Zugangskontroll-Richtlinien umgeht. Wade formuliert es in seinem Bericht drastisch: „Das erstellt eine stille, ferne Hintertür (Backdoor) in jedem System, auf dem ein Passwort gecacht wurde. Selbst wenn Angreifer niemals Zugang zu dem System hatten, vertraut Windows dem Passwort.“
Problemursache „Credential Caching“
Ursache ist das Zwischenspeichern von Zugangsdaten (Credential Caching). Bei der ersten Anmeldung mit einem Microsoft- oder Azure-Konto validiert RDP das Passwort online. Windows speichert die Zugangsdaten dann kryptografisch gesichert lokal auf dem PC beziehungsweise Notebook. Von dort an prüft Windows jedes eingegebene Passwort einer RDP-Sitzung gegen die lokal gespeicherten Zugangsdaten, ohne Online-Prüfung. Daher ermöglichen auch widerrufene Passwörter Zugang über RDP.
Microsoft hat mit einer Aktualisierung der Online-Dokumentation zu Windows-Login-Szenarien auf Wades Sicherheitsmeldung reagiert. „Sofern User ein lokales Log-in ausführen, werden ihre Zugangsdaten lokal gegen eine zwischengespeicherte Kopie verifiziert, bevor eine Authentifizierung über Identity-Provider im Netz erfolgt. Sofern die Verifikation über den Zwischenspeicher erfolgreich verläuft, erhalten User Zugriff, auch wenn die Maschine offline ist. Sofern Nutzerinnen und Nutzer ihr Passwort in der Cloud ändern, wird der lokale Zwischenspeicher nicht aktualisiert, was bedeutet, dass sie auf ihre lokale Maschine noch mit dem alten Passwort zugreifen können“, schreibt das Unternehmen dort nun.
Dem IT-Sicherheitsforscher Will Dormann ist das Update demzufolge für die meisten Admins nicht einfach genug zu erkennen und zudem nicht ausreichend explizit. Es fehlten Hinweise, wie Betroffene RDP absichern können, falls ihr Azure- oder Microsoft-Konto kompromittiert werden sollte. Wade war offenbar nicht der Erste, der das Problem meldete. Microsoft teilte ihm mit, dass ein anderer IT-Forscher bereits 2023 angeklopft hatte: „Ursprünglich hatten wir für dieses Problem eine Codeänderung in Erwägung gezogen, aber nach weiterer Prüfung der Design-Dokumentation stellte sich heraus, dass Code-Änderungen die Kompatibilität mit den von vielen Anwendungen genutzten Funktionen beeinträchtigen könnten.“
(dmk)