NTLM-Authentifizierung
In diesem Artikel erklären wir, was die NTLM-Authentifizierung ist, wie sie funktioniert und wie sie von Angreifern ausgenutzt werden kann.

Das Wichtigste in Kürze
- NTLM (Windows New Technology LAN Manager) ist eine Sammelbezeichnung von Sicherheitsprotokollen zur Authentifizierung von Microsoft.
- Die Ursprünge reichen zurück bis in die 1990er Jahre, in der NTLM als proprietäres Protokoll eingeführt wurde.
- Trotz vieler bekannter Sicherheitslücken ist NTLM auch heute noch aus Kompatiblitätsgründen im Einsatz.
- NTLM wurde durch Kerberos ab Windows 2000 SP4 abgelöst. Kerberos ist seitdem das Standard-Authentifizierungsprotokoll von Microsoft für Active Directory.
1. Was ist die NTLM-Authentifizierung?
Mit NTLM (NT LAN Manager) bezeichnet man eine Familie von proprietären Authentifizierungsprotokollen von Microsoft.

Alle NTLM-Protokolle authentifizieren Benutzer und Computer auf der Grundlage eines Challenge/Response-Mechanismus. Dabei beweist der Benutzer dem Server oder Domänencontroller dass er das zum Konto gehörende Kennwort kennt – ohne es jedoch über das Netzwerk zu übertragen.
NTLM wurde 1993 mit Windows NT 3.1 eingeführt und ersetzte das vorher gebräuchliche LM-Hash-Verfahren wegen eklatanter Sicherheitslücken. Aufgrund von weiteren Sicherheitsproblemen beim NTLM-Protokoll wurde mit Windows NT 4.0 SP4 NTLMv2 eingeführt und die frühere Version dann NTLMv1 genannt.
Ab Windows 2000 wurde für Active Directory (AD)-Domänen NTLM durch Kerberos als Standard-Authentifizierungsprotokoll ersetzt.
Trotz bekannter Schwachstellen stehen die verschiedenen NTLM-Versionen auf aktuellen IT-Systemen aus Kompatibilitätsgründen weiterhin zur Verfügung. NTLMv2 wird ebenfalls noch für die lokale Anmeldung, die Netzwerkanmeldung bei WORKGROUPS, manchen http-servern und auch für Single-Sign-On (SSO) genutzt.
2. Der Ablauf der NTLM-Authentifizierung
Das NTLMv2-Protokoll verwendet einen NT-Hash in einem Challenge/Response-Austausch zwischen dem Server und dem Client. Der Ablauf der NTLM-Authentifizierung ist wie folgt:
- NEGOTIATE: Der Client-Rechner sendet eine Anfrage mit dem Benutzernamen und weiteren Konfigurationsinformationen an einen Server.
- CHALLENGE: Der Server generiert eine Zufallszahl und sendet diese zum Client-Rechner
- AUTHENTICATE: Der Client-Rechner verschlüsselt die Zufallszahl mit dem DES-Algorithmus und dem NT-Hash des Passworts als Schlüssel, um zu beweisen, dass er das Passwort kennt.
- Der Server überprüft die Identität des Benutzers, indem er sicherstellt, dass die Challenge tatsächlich mit dem richtigen Benutzer/Passwort erstellt wurde. Dazu verwendet er entweder den hinterlegten NT-Hash aus seiner eigenen SAM-Datenbank oder er leitet das Challenge/Response-Paar zur Validierung an den Domain Controller weiter.

3. Wie kann die NTLM-Authentifizierung angegriffen werden?
NTLM sendet zwar keine Kennwörter über das Netzwerk die abgefangen werden könnten, aber NTLMv1 ist nach heutigen Maßstäben ein sehr schwaches Authentifizierungsprotokoll. Und obwohl v2 sicherer ist als v1, ist es immer noch deutlich entfernt vom Nachfolgeprotokoll Kerberos.
Pass the Hash
Bei der NTLM-Authentifizierung ist der Hash des Kennwortes ein entscheidendes Element der Authentifizierung. Sollte also ein Angreifer den Benutzernamen und den Kennwort-Hash herausfinden, dann kann er direkt mit der NTLM-Authentifizierung Verfahren starten. Die Kenntnis des eigentlichen Kennwortes ist dabei nicht notwendig.
Diese Technik ist bekannt unter der Bezeichnung Pass the Hash und ist seit mehr als 20 Jahren bekannt.
Für einen Angreifer stellt sich die Frage wie Benutzernamen und Passwort-Hash erbeutet werden können. Benutzernamen gibt es aus Sicht des Angreifers recht einfach, beispielsweise unverschlüsselt im Netzwerkverkehr. Auch Passwort-Hashes sind recht leicht zu bekommen. Auf Endbenutzer-Systemen finden sich die Passwort-Hashes in der Datei
C:\Windows\System32\config\SAM
Die SAM-Datei kann von jedem Benutzer mit administrativen Rechten gelesen werden.
Ebenso werden die Password-Hashes auch im Speicher zwischengespeichert. Von dort können sich mit Tools wie Mimikatz extrahiert werden.
Auf der Serverseite werden Passwort-Hashes bei Domänencontrollern in der Datei
C:\Windows\ntds\ntds.dit
gespeichert. Dort sind die Hashes anfällig für DC-Sync-Angriffe. Sie verleiten einen Domänen Controller (DC) dazu die eigenen Passwort-Hashes mit jemand zu synchronisieren, der sich als ein anderer DC ausgibt.
Es gibt aber noch andere Möglichkeiten, an Hashes zu gelangen. Insbesondere wenn man direkten Zugriff auf das Netzwerk hat, können Tools wie Responder recht wirkungsvoll genutzt werden um solches Hashes zu bekommen..
Kennwort-Hashes werden außerdem für die Dauer der Sitzung im Speicher einer RDP-Verbindung (Remote Desktop Protocol) gesichert. Wenn ein Benutzer also die Verbindung trennt, ohne sich abzumelden, bleibt der Passwort-Hash im Speicher noch einige Zeit erhalten.
Zu den empfohlenen Gegenmaßnahmen gehören:
Brute-Force-Angriffe
Die NTLM-Authentifizierung ist auch anfällig für Brute-Force-Angriffe, da der Hash-Algorithmus, den das Protokoll verwendet ohne einen sogenannten Salt verwendet wird. Ein Salt fügt eine zufällige Zeichenkette zu einem Passwort hinzu, bevor dieses ge-hasht wird. Selbst wenn zwei Benutzer das gleiche Passwort wählen, unterscheiden sich dennoch die Passwort-Hashes.
Mit vorberechneten Hashes von Standardpasswörtern und einer Rainbow Table lassen sich praktikable Brute-Force-Angriffe durchführen, falls die Kennwortkomplexität und -länge nicht ausreichend gewählt wurde (Tipp: >15 Zeichen).
Keine Unterstützung für Mehrfaktor-Authentifizierung
Das NTLM-Authentifizierungsprotokoll unterstützt keine Multifaktor-Authentifizierung (MFA), so dass es genügt einen Kennwort-Hash abzugreifen. Einen zweiten Faktor wie eine Authenticator-App, einen Hardware-OTP-Token oder eine SMS wird grundsätzlich nicht verwendet.
NTLM-Relay-Angriff
Die NTLM-Authentifizierung ist auch anfällig für NTLM-Relay-Angriffe.
Der Client des Benutzers hat grundsätzlich keine Möglichkeit, die Identität des Servers zu überprüfen. Daher können sich Angreifer zwischen Client und Server hängen und sich als Man-in-the-middle betätigen.
Momentan wird sie auch bei Penetrationstests häufig mit überprüft, da in den letzten Jahren Schwachstellen entdeckt wurde, die diesen Angriffsvektor wieder praktikable machten.

Weitere Schwachstellen
Bei NTLM werden alle Kleinbuchstaben in einer Kennwortfolge vor der Erstellung des Hashwerts in Großbuchstaben umgewandelt, was die mögliche Komplexität einschränkt. Als Folge dauert es bei bekanntem Hash-Wert 2,5 Stunden, um ein Passwort mit 8 Zeichen herauszufinden (Stand 2019, Workstation mit 8xGPU und HashCat).
Auch verwendet NTLMv1 eine 16-Byte-Zufallszahl für die Challenge, die in der Praxis doch nicht so sehr zufällig ist.
In NTLMv2 hingegen ist es eine Challenge variabler Länge, was deutlich stärker ist. Auch fügt der Verschlüsselungsschritt bei NTLMv2 einen Zeitstempel hinzu.
Sowohl NTLMv1 als auch NTLMv2 nutzen die als veraltete Hash-Funktion MD4. Aus kryptographischer Sicht ist diese zwar gebrochen, dennoch ist sie in dem speziellen Anwendungsfall bei NTLM für die Praxis weiterhin als recht stabil anzusehen.
4. Warum wird die NTLM-Authentifizierung noch verwendet?
Microsoft hat NTLM bereits in Windows 2000 durch Kerberos als Standard-Authentifizierungsprotokoll ersetzt.
Dennoch wird die NTLM-Authentifizierung weiterhin von Windows aus Gründen der Abwärtskompatibilität unterstützt. Es gibt noch eine Reihe von alter Software, die NTLMv2 oder sogar NTLMv1 verwendet.
Viele der betroffenen Anwendungen wurden Ende der 1990er und in den frühen 2000er Jahren entwickelt. Oftmals sind die Anwendungen nicht mehr vom Hersteller unterstützt oder wurden als Spezialanwendung direkt für ein Unternehmen programmiert.
5. Unterschied zwischen dem Nachfolger Kerberos und NTLM
Einer der wichtigsten Unterschiede zwischen NTLM und Kerberos besteht in einem geänderten Authentifizierungsvorgang.
Der Authentifizierungsprozess selbst läuft nicht mehr als zweistufiges Challenge/Response ab, sondern ist dreistufig ausgelegt.
Ebenso hat Kerberos andere kryptographische Eigenschaften als NTLM. Die Hashfunktion die NTLM für erstellung des Passwort-Hashes nutzt wurde durch eine Verschlüsselungsfunktion ersetzt.
Zusammenfassend lässt sich sagen, dass Kerberos das deutlich sicherere Protokoll ist. Aber auch Kerberos ist nicht ganz frei von Sicherheitsproblemen.
6. Vorgehen zum Abschalten von NTLM
Als Strategie empfehle ich ein gestuftes Vorgehen.
- Audit: Zuerst ist die Frage zu klären welche Anwendungen das NTLM-Protokoll noch benötigen. Eine Überprüfung per Gruppenrichtlinie Network security: Restrict NTLM: Audit NTLM authentication in this domain lässt sich leicht aktivieren ohne den Betrieb zu stören. Zusätzliche Tools können auch die Version des Protokolls mit in Erfahrung bringen.
- Härtung Clients: Mit diesen Informationen kann geprüft werden, ob die fraglichen Anwendungen so konfiguriert werden können, dass ausschließlich ein stärkeres Protokoll (NTLMv2 oder optimalerweise Kerberos) verwendet wird. Updates sollten dabei geprüft und entsprechend priorisiert werden.
- Härtung Server: Falls möglich sollten NTLMv1 und NTLMv2 vollständig per Gruppenrichtlinie deaktiviert werden. Die Einrichtung einer Ausnahmeliste ist möglich, falls sich Anwendungen nicht updaten lassen und NTLM weiterhin benötig werden sollte.
7. Kann man NTLM noch sicher verwenden?
Die Nutzung von NTLM sollte im Netzwerk minimiert oder vollständig deaktiviert werden. Unternehmen, die aus Kompatibilitätsgründen weiterhin NTLM zwingend einsetzen müssen, sollten die folgenden Punkte beachten.
- SMB-Signierung: . Um Angreifer daran zu hindern, einfachere NTLM-Relay-Angriffe zu starten, sollten die SMB-Signierung auf allen Computern im Netzwerk aktiviert sein.
- Blockieren von NTLMv1: Da NTLMv1 ist vollständig unsicher. Es sollte über die entsprechende Gruppenrichtlinie vollständig blockiert werden.
- LDAP/S-Signierung: . Um NTLM-Relay in LDAP zu verhindern, muss die LDAP-Signierung und die LDAPS-Kanalbindung auf Domänencontrollern aktiviert werden.
- Enhanced Protection for Authentication (EPA): . Um NTLM-Relay auf Webservern zu verhindern, sollten alle Webserver (OWA, ADFS) so konfiguriert werden, dass sie nur Anfragen mit EPA akzeptieren.
Grundsätzlich sind die folgenden weiteren Maßnahmen auch sehr empfehlenswert. Sie führen zu einer Härtung der gesamten IT-Landschaft.
- Laufendes und regelmäßiges Patchen aller IT-Systeme
- Defender Windows Credential Guard aktivieren
- Begrenzen der Konten mit Administratorrechten
- Keine Verwendung des Remote Desktop Protocol (RDP) zur Verwaltung von Clients
- Remote Management nur von gehärteten Jump-Hosts aus
- Falls nötig: Nutzung von Microsoft Local Administrator Password Solutions (LAPS)
- Einschränken von Client-zu-Client Kommunikation, beispielsweise mit einer Firewall um Lateral Movement zu erschweren
Häufig gestellte Fragen
NTLM (NT LAN Manager) ist eine Familie proprietärer Authentifizierungsprotokolle von Microsoft. Sie meldet Benutzer über ein Challenge/Response-Verfahren an, ohne das Passwort über das Netzwerk zu übertragen. NTLM wurde 1993 mit Windows NT 3.1 eingeführt und ab Windows 2000 in Active-Directory-Domänen durch Kerberos als Standard abgelöst.
Nach heutigen Maßstäben gilt NTLM als unsicher. NTLMv1 ist sehr schwach, und auch NTLMv2 ist anfällig für Pass-the-Hash-, Brute-Force- und NTLM-Relay-Angriffe und unterstützt keine Multifaktor-Authentifizierung. Microsoft empfiehlt, NTLM zu minimieren oder vollständig zu deaktivieren.
Kerberos ist der sicherere Nachfolger von NTLM. Während NTLM ein zweistufiges Challenge/Response-Verfahren nutzt, arbeitet Kerberos dreistufig über ein Key Distribution Center und verwendet moderne Verschlüsselung statt der veralteten MD4-Hashfunktion.
Bei Pass the Hash nutzt ein Angreifer den erbeuteten Passwort-Hash direkt zur Anmeldung – das Klartext-Passwort wird nicht benötigt. Hashes lassen sich zum Beispiel aus der SAM-Datei, aus dem Arbeitsspeicher (etwa mit Mimikatz) oder per DC-Sync vom Domänencontroller gewinnen.
Empfohlen wird ein gestuftes Vorgehen: Zuerst per Audit klären, welche Anwendungen NTLM benötigen, dann die Clients härten und schließlich NTLMv1 und NTLMv2 per Gruppenrichtlinie auf den Servern abschalten – mit einer Ausnahmeliste für Anwendungen, die sich nicht aktualisieren lassen.
NTLM wird aus Gründen der Abwärtskompatibilität weiterhin von Windows unterstützt. Viele ältere Anwendungen aus den späten 1990er- und frühen 2000er-Jahren nutzen weiterhin NTLMv2 oder sogar NTLMv1, etwa weil sie nicht mehr vom Hersteller gepflegt werden.
Wollen Sie prüfen, ob Ihr Netzwerk gegen NTLM-Angriffe abgesichert ist?
Rufen Sie uns doch einfach an oder schreiben Sie uns eine Nachricht!
oder nutzen Sie unser Kontaktformular. Wir freuen uns auf Ihre Anfrage!


