Remote Desktop Services in Windows Server 2022 absichern (3)
Die Remote Desktop Services von Microsoft bilden in vielen Firmen und Organisationen die Grundlage für zentralisierte Anwendungsbereitstellung. Doch auch für gelegentliche interaktive Anmeldungen an Workstations und Infrastrukturservern ist RDP in der Windows-Welt das Mittel der Wahl. Allerdings öffnet der Dienst auch den Weg für einige Angriffsszenarien sowohl auf die Systeme selbst als auch auf die für den Zugriff verwendeten Identitäten. Wir zeigen, wie Sie RDP-Zugriffe sicherer gestalten. Im dritten Teil gehen wir darauf ein, wie Sie Credentials beim RDP-Zugriff absichern.
Credentials beim RDP-Zugriff absichern
Terminalserver aller Art sind für Angreifer, die auf das Einsammeln von Anmeldedaten aus sind, ein sehr lukratives Ziel. Durch den Multiuser-Charakter von Terminalservern sind mit einem Schlag zahlreiche Identitäten gefährdet. Und wenn Sie Terminalserver nicht nur zur Bereitstellung von Produktivitätsanwendungen an reguläre Nutzer, sondern auch als Jumphosts für administrative Tätigkeiten einsetzen, sind die auf diese Art angreifbaren Credentials besonders wertvoll.
Sie sollten daher beim Umgang mit Terminalservern genau so viel, wenn nicht sogar mehr Sorgfalt hinsichtlich den Credentials walten lassen wie bei Workstations oder Anwendungsservern:
- Terminalserver in Bezug auf die IT-Sicherheit sind wie Workstations zu behandeln. Globale administrative Konten dürfen sich dort nicht anmelden.
- Da Terminalserver und VDI-Maschinen normalerweise "in der Nähe" der Domain Controller platziert sind, sollten dort "Cached Credentials" per Gruppenrichtlinie deaktiviert sein.
- Auch Benutzerprofile bergen das Risiko, gespeicherte Anmeldedaten dem unbemerkten Auslesen auszusetzen. Regeln Sie die Berechtigungen für Profil- und UPD-Freigaben möglichst restriktiv. Falls Sie klassische servergespeicherte Profile einsetzen, sollten Sie die Einstellung "Lokale Kopie des Benutzerprofils bei Abmelden löschen" verwenden. Das funktioniert aus Benutzersicht nur dann zufriedenstellend, wenn Sie zuvor große Teile des Benutzerprofils per Ordnerumleitung aus dem servergespeicherten Profil ausschließen.
- Booten Sie Ihre Terminalserver und VDI-Maschinen häufig. Citrix macht das seit vielen Jahren vor. Bei den nativen Remote Desktop Services müssen Sie die Orchestrierung der Worker-Reboots in Eigenregie vornehmen.
- Halten Sie Prozesse und Skripte bereit, um einen Terminalserver bei Verdacht auf Kompromittierung aus einer entsprechenden Vorlage neu erstellen zu können. Auch hier haben native RDS-Bordmittel gegenüber Citrix oder VMware das Nachsehen. Die Automatisierung einer Terminalserver-Neuerstellung ist aber mit den vorhandenen PowerShell-Cmdlets problemlos machbar.
Ein besonderes Szenario, in dem Credentials bei RDP-Zugriffen zu schützen sind, ist die Remoteadministration von Anwendungsservern. Hier gehören die verwendeten Zugangsdaten per definitionem zu den privilegierten Accounts. Sie sollten daher als Erstes prüfen, ob Sie die verwendeten Accounts in die Spezialgruppe "Protected Users" aufnehmen können – siehe dazu den eigenen Artikel in diesem Sonderheft auf Seite 155. Damit würden Sie verhindern, dass der NTLM-Hash generiert und das vorhandene Kerberos-Ticket lange gültig bleibt und automatisch erneuert wird. Diese Maßnahme ist allerdings nicht RDP-spezifisch, sondern gilt genauso für "echte" interaktive Anmeldungen von Administratoren.
Für den Schutz von Credentials im speziellen Szenario RDP-Zugriff hält Microsoft zwei Ansätze bereit: Bereits seit Windows 7 / Server 2008 R2 können Sie den Schalter "/RestrictedAdmin" in MSTSC-Aufrufen verwenden. Auch die meisten Verbindungsmanager für RDP bieten inzwischen diese Option. In diesem Modus wird nach erfolgreicher Authentifizierung die Sitzung zwar mit den Rechten des verwendeten Accounts aufgebaut, nicht jedoch mit seiner Identität, sondern mit einem ephemeren Systemkonto. Damit können Sie lokal auf der Zielmaschine alle Berechtigungen Ihres Admin-Accounts wahrnehmen. Müssen Sie aus der Remote-Sitzung heraus auf Dienste und Ressourcen auf anderen Computern zugreifen, so erfolgt der Zugriff mit der Maschinenidentität und scheitert daher vermutlich. Dafür können Sie für den Restricted-Admin-Zugriff beliebige Anmeldearten verwenden.
Seit Server 2016 und Windows 10 1607 können Administratoren auf den Schutzmechanismus des "Remote Credential Guard" (RCG) zurückgreifen. Dieser akzeptiert ausschließlich Kerberos-Authentifizierung, die bereits auf dem zugreifenden Client erfolgt sein muss (etwa durch das Starten von MSTSC im Kontext des gewünschten administrativen Accounts). Dafür entsteht auf der Zielmaschine eine vollwertige, jedoch gegen das Abgreifen geschützte Kerberos-Sitzung, die sich genauso für den "Second Hop" zu anderen Systemen verwenden lässt. Auch diese Technologie findet bei einigen Verbindungsmanagern inzwischen Unterstützung, beispielsweise beim Microsoft-eigenen "RDCMan".
Remote Credential Guard können Sie auch für den Zugriff normaler Benutzerkonten auf Remote Apps oder TerminalserverDesktops einsetzen. Dabei darf jedoch der verwendete Connection Broker nicht im HA-Modus eingerichtet sein, denn solche Verbindungen sind auf NTLM begrenzt.
Fazit
Das Remote-Desktop-Protokoll ermöglicht zahlreiche Angriffsvektoren auf Ihre Windows-Systeme. Sie müssen diese Lücken kennen und durch frühzeitige Konfigurationsmaßnahmen schließen. Sichern Sie die Verbindungswege für RDP durch Firewalls und Remote Desktop Gateways ab, auch im Inneren Ihrer IT-Landschaft. Verwenden Sie Remote Credential Guard oder den Restricted Admin Mode, um Anmeldedaten von privilegierten Accounts bei RDP-Zugriffen zu schützen. Zurren Sie die Zertifikatsverwaltung bei RDP-Zugriffen fest und verzichten Sie auf veraltete Verschlüsselungsprotokolle.
ln/Evgenij Smirnov
Im ersten Teil des Workshops haben wir veranschaulicht, warum besonders Server beim Remotezugriff besonders zu schützen sind. Im zweiten Teil haben wir beschrieben, wie Sie die Möglichkeiten der User limitieren und die RDP-Kommunikation absichern.