Ausgangslage: Der gefährliche Schalter ist oft eine Altlast

Moderne Windows-Versionen speichern WDigest-Anmeldeinformationen standardmäßig nicht mehr als Klartext im LSASS-Prozess. Trotzdem taucht die Einstellung in realen AD-Umgebungen regelmäßig wieder auf: in alten Golden Images, in lokalen Registry-Änderungen, in übernommenen GPOs oder als früherer Troubleshooting-Workaround für eine Legacy-Anwendung.

Der relevante Punkt ist nicht, ob WDigest “installiert” ist. Entscheidend ist, ob UseLogonCredential aktiviert wurde und dadurch Klartext-Passwörter im Speicher begünstigt werden. Auf normalen Workstations ist das unnötig. Auf Admin-Workstations, Jump Hosts und Domain Controllern ist es ein klarer Tier-0-Risikofaktor.

Das Ziel ist deshalb keine große Architekturänderung, sondern eine überprüfbare Baseline: WDigest darf Klartext-Credentials nicht wieder aktivieren. Der Wert muss zentral kontrolliert, technisch gemessen und in Images dauerhaft bereinigt werden.

Zielbild: WDigest aus, Admin-Pfade sauber

Ein belastbares Zielbild sieht so aus:

  1. WDigest ist per Baseline deaktiviert (UseLogonCredential = 0 oder sauber nicht aktiviert).
  2. Admin-Anmeldungen laufen über dedizierte Admin-Endpunkte, nicht über beliebige Clients oder Applikationsserver.
  3. Credential Guard und LSASS Protected Process (RunAsPPL) werden für geeignete Systeme separat geplant und getestet.
  4. Ausnahmen haben Owner, Ablaufdatum und technische Kontrolle. Eine “dauerhafte Ausnahme” ist bei WDigest praktisch immer ein Designproblem.

Wichtig: WDigest off reduziert Klartext-Risiko, entfernt aber nicht alle Credential-Artefakte aus LSASS. Kerberos-Tickets, NTLM-Material und Tokens bleiben eigene Themen. Genau deshalb gehört WDigest in eine Credential-Exposure-Baseline, nicht in eine isolierte Einmalmaßnahme.

Ist-Stand sauber erheben

Prüfe zuerst, ob UseLogonCredential explizit gesetzt wurde:

Get-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest' `
  -Name UseLogonCredential -ErrorAction SilentlyContinue |
  Select-Object PSComputerName, UseLogonCredential

Interpretation:

  • UseLogonCredential = 1: kritisch, WDigest speichert Klartext-Anmeldeinformationen eher im LSASS-Kontext.
  • UseLogonCredential = 0: gewünschte explizite Baseline.
  • Wert fehlt: auf modernen Windows-Versionen in der Regel nicht automatisch kritisch, aber für eine Security-Baseline schlechter messbar als ein expliziter Wert.

Für ein Projekt reicht eine manuelle Stichprobe nicht. Nutze vorhandene Management-Werkzeuge wie Intune, ConfigMgr, GPO Preferences, EDR-Inventar oder ein signiertes Audit-Skript. Trenne die Auswertung mindestens nach Workstations, Member Servern, Admin-Systemen und Domain Controllern.

Umsetzung per GPO oder Endpoint Management

Für klassische AD-Umgebungen ist eine dedizierte GPO pragmatisch:

  • Pfad: HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest
  • Wert: UseLogonCredential
  • Typ: REG_DWORD
  • Sollwert: 0

Praktische Umsetzung:

  • Lege eine klar benannte GPO an, z. B. Baseline - Credential Exposure - WDigest off.
  • Verlinke sie getrennt auf Client-, Server- und Domain-Controller-OUs.
  • Nutze für Pilot und Rollout dieselbe technische Einstellung, aber unterschiedliche Scopes.
  • Bereinige alte GPOs oder lokale Policies, die UseLogonCredential = 1 erneut setzen könnten.

Wenn du Endpoint Management nutzt, setze denselben Sollwert dort und entscheide bewusst, welches System “authoritative” ist. Mehrere konkurrierende Baselines sind ein häufiger Grund für Drift.

Validierung nach dem Rollout

Nach dem Rollout zählt nicht die GPO-Konsole, sondern der Zustand auf den Endpunkten:

  • Registry-Wert auf Stichproben prüfen.
  • gpresult oder RSoP für GPO-Anwendung kontrollieren.
  • Abweichungen nach OU, Gerätekategorie und Ownership gruppieren.
  • Neue Images/Templates prüfen, bevor sie produktiv ausgerollt werden.

Für Admin-Systeme sollte WDigest nur der erste Schritt sein. Prüfe zusätzlich Credential Guard, lokale Anmeldeberechtigungen, RDP-Zugriff, LSASS Protected Process und den Umgang mit privilegierten Browser-/Office-/Mail-Aktivitäten.

Vorteile

  • Reduziert Klartext-Credential-Risiko auf Clients, Servern und Tier-0-Systemen.
  • Schnell zentral steuerbar über GPO oder Endpoint Management.
  • Gut messbar durch Registry-Compliance und Stichproben.
  • Hilft gegen Image-Drift, weil alte Templates nicht still wieder riskante Einstellungen verteilen.

Nachteile und Grenzen

  • Keine vollständige Credential-Isolation: Tickets, Hashes und Tokens bleiben relevant.
  • Legacy-Risiko: sehr alte SSO- oder Authentifizierungsabhängigkeiten können auffallen, wenn sie historisch auf WDigest-Verhalten gebaut wurden.
  • Admin-Tiering bleibt Pflicht: Wer Domain Admins auf normalen Clients anmeldet, hat das Hauptproblem nicht gelöst.
  • RunAsPPL/Credential Guard sind eigene Changes: beides sollte kompatibilitätsgetestet werden und gehört nicht unkontrolliert in denselben Rollout.

Typische Stolperfallen

  • Fehlender Wert wird falsch bewertet: fehlend ist nicht automatisch “aktiviert”, aber für eine Baseline schwerer nachweisbar.
  • Alte GPO gewinnt später wieder: ein sauberer Rollout scheitert, wenn eine ältere Policy den Wert erneut überschreibt.
  • Nur DCs werden betrachtet: Workstations und Jump Hosts sind für Credential Exposure meist genauso wichtig.
  • Ausnahmen ohne Ablaufdatum: WDigest-Ausnahmen sollten immer temporär sein und eine technische Alternative erzwingen.
  • Keine Image-Kontrolle: ohne Template-Prüfung kommt die Abweichung mit dem nächsten Server- oder Client-Rollout zurück.

Projekt-Checkliste

  • [ ] Inventar nach Clients, Servern, Admin-Systemen und DCs erstellt.
  • [ ] UseLogonCredential = 1 vollständig identifiziert und fachlich bewertet.
  • [ ] Baseline per GPO oder Endpoint Management auf REG_DWORD 0 gesetzt.
  • [ ] Alte GPOs, lokale Policies und Images auf widersprüchliche Einstellungen geprüft.
  • [ ] Pilot in begrenztem Scope validiert, danach produktiv ausgerollt.
  • [ ] Compliance-Check für laufende Überwachung etabliert.
  • [ ] Admin-Endpunkte separat für Credential Guard, RunAsPPL und Logon Controls bewertet.