Wat is deze tool?
NTLM (NT LAN Manager) is Microsofts verouderde challenge-response-authenticatieprotocol, dat vandaag de dag nog steeds wordt gebruikt voor lokale Windows-accountaanmeldingen en als terugvaloptie in veel Active Directory-omgevingen. De wachtwoordverificatiewaarde — meestal "de NTLM-hash" genoemd — is gedefinieerd in Microsofts eigen MS-NLMP-protocolspecificatie als `MD4(UTF-16-LE(password))`: het wachtwoord wordt eerst gecodeerd als UTF-16 little-endian (zodat elk teken 2 bytes wordt, anders dan bij UTF-8), en die bytereeks wordt vervolgens één keer gehasht met het MD4-algoritme uit RFC 1320.
De UTF-16LE-stap is het detail waar de meeste mensen het bij het zelf implementeren van NTLM fout doen: het hashen van de UTF-8-bytes van een tekenreeks in plaats van de UTF-16LE-bytes levert een compleet andere, onjuiste digest op, ook al ziet de zichtbare tekst er identiek uit. Deze tool codeert correct, zodat de uitvoer overeenkomt met wat Windows zelf opslaat en wat tools zoals hashcat (mode 1000) en Mimikatz verwachten.
Omdat NTLM ouder is dan modern wachtwoord-hashingontwerp, mist het alle beschermingen die later specifiek zijn ontworpen om kraken te vertragen: geen salt per gebruiker, geen instelbare werkfactor en geen opzettelijke iteratie. Het is een enkele MD4-pass, wat het uiterst snel maakt om te berekenen — een eigenschap die handig is voor compatibiliteit met legacy-systemen, maar rampzalig voor weerstand tegen brute-force- en woordenboekaanvallen.
Waarom gebruiken?
- Verifieer dat een hash die is geëxtraheerd uit een Windows SAM-database, NTDS.dit-dump of Active Directory-export overeenkomt met een verwachte waarde tijdens geautoriseerd beveiligingsonderzoek.
- Bevestig je begrip van het MS-NLMP-algoritme, of controleer een hash die je eigen code heeft geproduceerd, tegen een bekend correcte implementatie.
- Genereer NTLM-hashes voor hashcat (`-m 1000`) of John the Ripper-wordlisttests in een lab- of CTF-omgeving waarvoor je bevoegd bent deze aan te vallen.
- Kruiscontroleer Mimikatz- of andere pentest-tooluitvoer tijdens legitieme red-team- of credential-auditopdrachten.
- 100% lokaal: je invoer verlaat de browser nooit, dus het is zelfs veilig om te gebruiken voor gevoelig credentialmateriaal binnen een geautoriseerde beoordeling.
Hoe te gebruiken
- Typ het wachtwoord of de tekenreeks die je wilt hashen in het invoerveld.
- Klik op "Generate NTLM Hash".
- Lees de 32-tekens hexadecimale NTLM-hash (uitvoer in hoofdletters staat standaard aan, zoals Windows en de meeste crackingtools het weergeven — vink het vakje uit voor kleine letters).
- Klik op "Copy" om de hash naar je klembord te kopiëren.
Voorbeeld
Invoer
passwordUitvoer
8846F7EAEE8FB117AD06BDD830B7586CDit is een bekende, onafhankelijk verifieerbare testvector: de NTLM-hash van de letterlijke tekenreeks "password" is altijd 8846F7EAEE8FB117AD06BDD830B7586C. Je kunt de uitvoer van deze tool vergelijken met elke andere correcte NTLM-implementatie.
NTLM versus moderne wachtwoord-hashing
De onderstaande tabel laat zien waarom NTLM als verouderd wordt beschouwd voor het beschermen van nieuwe systemen, ook al blijft het ingebed in legacy Windows- en Active Directory-infrastructuur.
| Eigenschap | NTLM | bcrypt / scrypt / Argon2 |
|---|---|---|
| Onderliggende primitief | Enkele MD4-pass | Speciaal ontworpen trage hash met instelbare kosten |
| Salting | Geen — identieke wachtwoorden hashen altijd identiek | Unieke willekeurige salt per wachtwoord |
| Iteratie / stretching | Geen | Instelbare werkfactor, na verloop van tijd te verhogen |
| Weerstand tegen brute-force | Zeer zwak — miljarden pogingen/sec op moderne GPU's | Opzettelijk kostbaar per poging |
| Waar het nog wordt aangetroffen | Legacy Windows-authenticatie, Active Directory-terugval | Nieuwe applicaties, huidige best practice |
Gerelateerde tools
Als je een algemene cryptografische hash nodig hebt in plaats van de NTLM-specifieke MD4(UTF-16LE)-constructie, zijn deze tools mogelijk een betere keuze.
→ Multi-Algorithm Hash Generator · MD5 Generator · Password Generator
Veelgestelde vragen
Wat is een NTLM-hash precies?
Het is de wachtwoordverificatiewaarde die Windows berekent en opslaat voor NT LAN Manager-authenticatie, gedefinieerd in Microsofts MS-NLMP-specificatie als MD4(UTF-16LE(password)) — een enkele MD4-pass over de UTF-16 little-endian bytecodering van het wachtwoord. Hij is altijd 128 bits, weergegeven als 32 hexadecimale tekens.
Waarom specifiek UTF-16LE, en niet UTF-8 of ASCII?
Windows slaat tekst intern al sinds het ontwerp van NT op als UTF-16LE, dus wachtwoorden worden ook op die manier gecodeerd voordat ze worden gehasht. Elk teken wordt 2 bytes (little-endian bytevolgorde), ook gewone ASCII-tekens zoals 'a', die 0x61 0x00 worden in plaats van alleen 0x61. Het hashen van de UTF-8-bytes van dezelfde tekenreeks levert een totaal ander, verkeerd resultaat op — dit is verreweg de meest voorkomende fout in NTLM-implementaties die vanaf nul zijn gebouwd.
Is NTLM tegenwoordig nog veilig om te gebruiken?
Nee, en Microsoft zelf raadt aan om er waar mogelijk van af te stappen ten gunste van Kerberos. NTLM heeft geen salt, dus identieke wachtwoorden leveren altijd identieke hashes op bij elke gebruiker en elk systeem, wat vooraf berekende rainbow-table-opzoekingen mogelijk maakt. Ook heeft het geen iteratie of werkfactor — een enkele ongesalte MD4-pass — waardoor moderne GPU's miljarden pogingen per seconde kunnen doen tegen een buitgemaakte hash. Het overleeft vooral vanwege compatibiliteit met oudere Windows-systemen en -applicaties.
Hoe verschilt NTLM van modern wachtwoord-hashing zoals bcrypt, scrypt of Argon2?
Moderne wachtwoord-hashers zijn opzettelijk traag en gesalt: bcrypt, scrypt en Argon2 voegen elk een unieke willekeurige salt per wachtwoord toe en een instelbare kostenfactor die na verloop van tijd kan worden verhoogd naarmate hardware sneller wordt, specifiek om brute-forcing kostbaar te maken, ook op grote schaal. NTLM doet geen van beide — het is ontworpen in een tijdperk voordat offline brute-forcing een praktisch dreigingsmodel was, en dat is te merken. Dit is precies waarom NTLM nooit gebruikt zou moeten worden om iets te beschermen dat vandaag wordt gebouwd; de echte toepassingen van deze tool zijn compatibiliteit met bestaande Windows-infrastructuur en geautoriseerd beveiligingsonderzoek, niet het bouwen van nieuwe systemen.
Wat zijn legitieme toepassingen voor een NTLM-hashgenerator?
Het verifiëren van hashes die zijn opgehaald uit een SAM-database of NTDS.dit tijdens een geautoriseerde penetratietest of credential-audit; controleren of je eigen tooling of scripts MS-NLMP correct implementeren; het genereren van testhashes voor hashcat (mode 1000) of compatibiliteitscontroles in Mimikatz-formaat in een lab dat je beheert; en het doorwerken van CTF- of trainingsoefeningen die expliciet NTLM betreffen. Het gebruik van deze tool om accounts of systemen aan te vallen die je niet bezit of waarvoor je geen schriftelijke toestemming hebt om te testen, is geen legitiem gebruik.
Wordt mijn wachtwoord of invoer naar een server verzonden?
Nee. De MD4-berekening wordt volledig in JavaScript in je browser uitgevoerd — er is geen native browser-API voor MD4, dus het is direct geïmplementeerd in de client-side code van deze pagina, en niets van wat je typt wordt ergens naartoe verzonden.