Windows Remote Management Hardening
WinRM ist ein wirklich leistungsfähiges Werkzeug zum Konfigurieren, verwalten und steuern einer lokalen- oder Domänenumgebung. Aus diesem Grund sollte Windows Remote Management abgesichert werden.
WinRM UseSSL
Die Umsetzung bzw. der flächendeckende roll-out von WinRM kann sehr individuell gestaltet werden. Es hängt immer von den technischen Hilfsmitteln sowie auch von den Anforderungen ab.
In diesem Artikel zeige ich eine weitere Möglichkeit Windows Remote Management über eine GPO bereitzustellen. Voraussetzung ist jedoch, das die Clients bereits Zertifikate besitzen.
Zertifikatsbasierte Authentifizierung
Wenn wir WinRM einsetzen dann müssen wir Admins uns beim Remote-Server/Workstation (Kerberos) authentifizieren. Wir müssen beweisen, das wir es sind und das Recht dazu haben, die entfernte Maschine zu verwalten. Aber wer beglaubigt uns, das der Remote-PC der ist für den wir ihn halten? Mithilfe von Zertifikaten lösen wir das Problem.
In der Standardkonfiguration präsentiert sich WinRM auf diese Weise. Es ist unsicher weil alles erlaubt ist wie z.B. unsichere Authentifizierungsprotokolle und HTTP-Verbindungen. Das wollen wir jetzt ändern.
Bei der Basic- und Domain-Authentifizierung werden die Anmeldedaten unverschlüsselt übertragen. Bei der zertifikatsbasierten Authentifizierung werden Daten und Anmeldedaten verschlüsselt übertragen.
Das Ziel ist es, die unsicheren Authentifizierungsprotokolle zu deaktivieren und beim Aufbau einer Verbindung auf HTTPS zu setzen. In der Powershellausgabe sehen wir, das für den Aufbau einer sicheren Verbindung ein Zertifikat gebunden ist.
Die Konfiguration lässt sich per GPO nur dann sauber umsetzen, wenn das vorhandene Client-Zertifikat (Vorlage) entsprechend konfiguriert wurde.
Bei der Umsetzung blockieren wir den unsicheren Port 5985 und unternehmen keine weitere Maßnahmen vor wie z.B. das Entfernen des HTTP-Listeners. Es ist zu beachten, das der Servermanager den Port 5985 benötigt.
Die eigentliche Konfiguration passiert per Aufgabenplanung. Über den geplanten Task schalten wir die HTTPS Konfiguration (Listener) ein.
Im Ergebnis sehen wir, das eine Verbindung mit WinRM nur noch per Port 5986 und einem Zertifikat zustande kommt.
In dem .zip File ist alles enthalten was nötig ist, um WinRM auszurollen. Das einzige was angepasst werden sollte, ist die geplante Aufgabe. Aktuell steht die Aufgabe zur Ausführung bei Systemstart. Es sollte aber nur ein einmaliger Task sein.
https://www.der-windows-papst.de/2020/09/14/winrm-kann-den-vorgang-nicht-abschliessen/