Was ist KDFv2 für AD FS?

Am 13. Juli 2021 wurden Updates für AD FS veröffentlicht, um Tokenwiedergabeangriffe zu behandeln, wie in CVE-2021-33779 beschrieben. Mit diesen Updates werden neue Einstellungen zum Aktivieren und Steuern einer neuen Schlüsselableitungsfunktion (KDF) namens „KDFv2“ eingeführt. Diese neue Version von KDF ist sicherer als die vorherige Version. In diesem Dokument werden neue Einstellungen beschrieben, die durch die Sicherheitskorrektur für CVE-2021-33779 aktiviert werden, und wie Sie diese Einstellungen in verschiedenen Bereitstellungsszenarien aktivieren. Produktspezifische KB-Nummern und zugehörige Downloads finden Sie unter den Links im CVE-Artikel.

KDFv2-Einstellungen:

KDFv2 kann von einem Administrator auf einem AD FS-Server für die Ausführung in einem der folgenden Modi konfiguriert werden:

  • Keiner: (Standardwert): Dies wird verwendet, um nachzuverfolgen, ob der KDFv2-Einstellungswert jemals geändert wurde. Dieser Wert darf nicht von einem Administrator festgelegt werden.
  • Deaktiviert: Dieser Wert kann festgelegt werden, um die Schlüsselableitungsfunktion auf ihr ursprüngliches Verhalten zurückzusetzen, falls beim Aktivieren von KDFv2 Probleme aufgetreten sind.
  • Aktiviert: Aktiviert die KDFv2-Unterstützung. Der AD FS-Server kündigt an, dass er die neuen Funktionen unterstützt. Wenn eine anfängliche PRT-Anforderung (Primary Refresh Token, primäres Aktualisierungstoken) von einem Client mit der ursprünglichen KDF-Version gesendet wird, akzeptiert ADFS die Anforderung und verwendet die ursprüngliche KDF. Dies ermöglicht die Unterstützung von nicht gepatchten Clients.
  • Erzwungen: Aktiviert die KDFv2-Unterstützung und untersagt (lehnt ab) anfängliche PRT-Anforderungen mit der ursprünglichen KDF. Sobald ein Administrator davon ausgeht, dass alle Clients gepatcht wurden, kann er zum erzwungenen Modus wechseln.

KDFv2-Modi können von einem Administrator auf einem AD FS-Server über die folgenden PowerShell-Befehle geändert werden:

  • Aktivieren von KDFv2:
Set-AdfsProperties -KdfV2Support enable 
  • Deaktivieren von KDFv2:
Set-AdfsProperties -KdfV2Support disable 
  • Erzwingen von KDFv2:
Set-AdfsProperties -KdfV2Support enforce  

Ein Administrator kann Get-AdfsProperties ausführen, um die aktuelle KDFv2-Einstellung zu überprüfen. Der zurückgegebene KdfV2Support-Wert entspricht dem konfigurierten Modus.

Bereitstellungsszenarien

Abhängig von der Betriebssystemversion, unter der AD FS-Server ausgeführt werden, wenn sie zur Unterstützung von KDFv2 gepatcht werden, wird KDFv2 möglicherweise automatisch aktiviert. Außerdem werden eventuell die von der Betriebssystemversion abhängigen Ereignisse protokolliert, um den Zustand von KDFv2 in der Farm anzuzeigen. Im Folgenden sind mögliche Bereitstellungsszenarien und erwartete Verhaltensweisen aufgeführt.

Szenario 1: Windows Server 2019 oder höher wird auf allen AD FS-Servern in einer Farm installiert. Mindestens ein Farmknoten ist nicht gepatcht.

Erwartetes Verhalten: Wenn nicht alle Knoten in der Farm gepatcht sind, wird das folgende Fehlerereignis protokolliert, das auf empfohlene Korrekturaktionen hinweist. Dieses Ereignis wird alle 24 Stunden protokolliert, bis alle Knoten in der Farm gepatcht sind. Nachdem alle Knoten gepatcht wurden, wird KDFv2 automatisch für alle Systeme in der Farm über den Modus „Aktivieren“ aktiviert.

 Source: AD FS  
 Level: Error 
 ID: 181 
 Message: AD FS could not enable the new KDFv2 feature automatically because of missing Windows Updates on one or more nodes of the farm. Please make sure that all the farm nodes are patched with the latest Windows Updates. AD FS checks regularly for the required updates to enable the new KDFv2 feature. An event 182 will be logged when a check is successful. For more information on this, please see  https://go.microsoft.com/fwlink/?linkid=2153807. 

Szenario 2: Windows Server 2016 ist auf mindestens einem Server in einer Farm installiert. Auf allen Servern wird Windows 2016 oder höher ausgeführt. Mindestens ein Farmknoten ist nicht gepatcht.

Erwartetes Verhalten: Wenn nicht alle Knoten in der Farm gepatcht sind, wird das folgende Fehlerereignis protokolliert, das auf empfohlene Korrekturaktionen hinweist. Dieses Ereignis wird alle 24 Stunden protokolliert, bis alle Knoten in der Farm gepatcht sind. Nachdem alle Knoten gepatcht wurden, muss KDFv2 auf allen Servern in der Farm manuell aktiviert werden.

 Source: AD FS  
 Level: Error 
 ID: 185 
 Message: KDFv2 feature is not enabled on AD FS farm. Please make sure that all the farm nodes are patched with latest Windows Updates and the KDFv2 feature is enabled to enhance the security of the farm. For more information on this, please see  https://go.microsoft.com/fwlink/?linkid=2153807. 

Szenario 3: Windows Server 2019 oder höher ist auf allen AD FS-Servern in einer Farm installiert. Alle Server in der Farm wurden gepatcht.

Erwartetes Verhalten: Nachdem KDFv2 automatisch für die Farm aktiviert wurde, wie oben in Szenario 1 beschrieben, wird das folgende Ereignis protokolliert.

 Source: AD FS 
 Level: Information 
 ID: 182 
 Message: AD FS enabled the new KDFv2 feature successfully. For more information on this, please see https://go.microsoft.com/fwlink/?linkid=2153807. 

Hinweis

Ereignis 182 wird nicht protokolliert, wenn Server in einer Farm Windows Server 2016 ausführen.

Szenario 4: Der Administrator hat KDFv2 auf einem oder mehreren Servern in seiner Umgebung deaktiviert.

Erwartetes Verhalten: Die folgende Protokollmeldung wird beim Starten des AD FS-Diensts auf jedem System in der Farm protokolliert, auf dem KDFv2 deaktiviert wurde.

 Source: AD FS 
 Level: Warning 
 ID: 183 
 Message: KDFv2 feature is disabled on AD FS farm. Please make sure that all the farm nodes are patched with latest Windows Updates and the KDFv2 feature is enabled to enhance the security of the farm. For more information on this, please see https://go.microsoft.com/fwlink/?linkid=2153807. 

Nächste