Zusammenfassung
Microsoft ist PetitPotam bekannt, das potenziell verwendet werden kann, um Windows-Domänencontroller oder andere Windows-Server anzugreifen. PetitPotam ist ein klassischer NTLM-Relay-Angriff, und solche Angriffe wurden zuvor von Microsoft zusammen mit zahlreichen Abhilfemaßnahmen zum Schutz von Kunden dokumentiert. Beispiel: Microsoft-Sicherheitsempfehlung 974926.
Um NTLM-Relay-Angriffe auf Netzwerke mit aktiviertem NTLM zu verhindern, müssen Domänenadministratoren sicherstellen, dass Dienste, die die NTLM-Authentifizierung zulassen, Schutzmaßnahmen wie den erweiterten Schutz für die Authentifizierung (EPA) oder Signaturfeatures wie die SMB-Signatur nutzen. PetitPotam nutzt Server, auf denen Active Directory Certificate Services (AD CS) nicht mit Schutzmaßnahmen gegen NTLM-Relay-Angriffe konfiguriert ist. Die nachstehenden Risikominderungen erläutern Kunden, wie sie ihre AD CS-Server vor solchen Angriffen schützen können.
Sie sind potenziell anfällig für diesen Angriff, wenn Sie die Active Directory-Zertifikatdienste (AD CS) mit einem der folgenden Dienste verwenden:
- Webregistrierung von Zertifizierungsstellen
- Webdienst für die Zertifikatregistrierung
Schadensbegrenzung
Wenn Ihre Umgebung potenziell betroffen ist, empfehlen wir die folgenden Abhilfemaßnahmen:
Primäre Risikominderung
Es wird empfohlen, EPA zu aktivieren und HTTP auf AD CS-Servern zu deaktivieren. Öffnen Sie den Internetinformationsdienste-Manager (IIS), und gehen Sie folgendermaßen vor:
Aktivieren von EPA für die Webregistrierung von Zertifizierungsstellen, wobei "Erforderlich" die sicherere und empfohlene Option ist:
Aktivieren von EPA für den Webdienst für die Zertifikatregistrierung, wobei Erforderlich die sicherere und empfohlene Option ist:
Nach dem Aktivieren von EPA in der Benutzeroberfläche sollte die Web.config Datei, die von der CES-Rolle unter <%windir%>\systemdata\CES\<CA Name>_CES_Kerberos\web.config erstellt wurde, ebenfalls aktualisiert werden, indem extendedProtectionPolicy> mit dem Wert "WhenSupported" oder "Immer" hinzugefügt< wird, abhängig von der Option "Erweiterter Schutz", die in der obigen IIS-Benutzeroberfläche ausgewählt wurde.
Hinweis
Die Einstellung "Immer" wird verwendet, wenn die Benutzeroberfläche auf "Erforderlich" festgelegt ist, was die empfohlene und sicherste Option ist.
Weitere Informationen zu den für extendedProtectionPolicy verfügbaren Optionen finden Sie unter <Transport> von <basicHttpBinding>. Die am häufigsten verwendeten Einstellungen lauten wie folgt:
<binding name="TransportWithHeaderClientAuth"> <security mode="Transport"> <transport clientCredentialType="Windows"> <extendedProtectionPolicy policyEnforcement="Always" /> </transport> <message clientCredentialType="None" establishSecurityContext="false" negotiateServiceCredential="false" /> </security> <readerQuotas maxStringContentLength="131072" /> </binding>Aktivieren Sie SSL anfordern, wodurch nur HTTPS-Verbindungen zugelassen werden.
Wichtig
Nachdem Sie die obigen Schritte ausgeführt haben, müssen Sie IIS neu starten, um die Änderungen zu laden. Um IIS neu zu starten, öffnen Sie ein Eingabeaufforderungsfenster mit erhöhten Rechten, geben Sie den folgenden Befehl ein, und drücken Sie die EINGABETASTE:
iisreset /restart
Hinweis Dieser Befehl beendet alle ausgeführten IIS-Dienste und startet sie dann neu.
Zusätzliche Risikominderung
Zusätzlich zu den primären Risikominderungsmechanismen empfiehlt es sich, die NTLM-Authentifizierung nach Möglichkeit zu deaktivieren. Die folgenden Risikominderungen sind in der Reihenfolge von sicherer bis weniger sicher aufgeführt:
- Deaktivieren Sie die NTLM-Authentifizierung auf Ihrem Windows-Domänencontroller. Befolgen Sie hierzu die Dokumentation unter Netzwerksicherheit: Beschränken von NTLM: NTLM-Authentifizierung in dieser Domäne.
- Deaktivieren Sie NTLM auf allen AD CS-Servern in Ihrer Domäne mithilfe der Gruppenrichtlinie Netzwerksicherheit: Beschränken von NTLM: Eingehender NTLM-Datenverkehr. Um dieses Gruppenrichtlinienobjekt zu konfigurieren, öffnen Sie die Gruppenrichtlinie und wechseln Sie zu Computerkonfiguration ->Windows-Einstellungen ->Sicherheitseinstellungen ->Lokale Richtlinien-Sicherheitsoptionen> und legen Sie die Netzwerksicherheit fest: Beschränken von NTLM: Eingehender NTLM-Datenverkehr, um "Alle Konten verweigern" oder "Alle Domänenkonten verweigern" zu verwenden. Bei Bedarf können Sie Ausnahmen hinzufügen, indem Sie die Einstellung Netzwerksicherheit: Beschränken von NTLM: Serverausnahmen in dieser Domäne hinzufügen verwenden.
- Deaktivieren Sie NTLM für Internetinformationsdienste (IIS) auf AD CS-Servern in Ihrer Domäne, auf denen die Dienste "Webregistrierung für Zertifizierungsstellen" oder "Webdienst für Zertifikatregistrierung" ausgeführt werden.
Öffnen Sie dazu die Benutzeroberfläche des IIS-Managers, und legen Sie die Windows-Authentifizierung auf "Negotiate:Kerberos" fest:
Wichtig
Nachdem Sie die obigen Schritte ausgeführt haben, müssen Sie IIS neu starten, um die Änderungen zu laden. Um IIS neu zu starten, öffnen Sie ein Eingabeaufforderungsfenster mit erhöhten Rechten, geben Sie den folgenden Befehl ein, und drücken Sie die EINGABETASTE:
iisreset /restart
Hinweis Dieser Befehl beendet alle ausgeführten IIS-Dienste und startet sie dann neu.
Weitere Informationen finden Sie unter Microsoft-Sicherheitsempfehlung ADV210003