Hva er dette verktøyet?
NTLM (NT LAN Manager) er Microsofts gamle utfordring-respons-autentiseringsprotokoll, som fortsatt brukes i dag for lokale Windows-kontopålogginger og som en reserveløsning i mange Active Directory-miljøer. Passordverifikatoren dens — vanligvis kalt "NTLM-hashen" — er definert i Microsofts egen MS-NLMP-protokollspesifikasjon som `MD4(UTF-16-LE(password))`: passordet kodes først som UTF-16 little-endian (slik at hvert tegn blir 2 byte, i motsetning til UTF-8), og denne bytesekvensen hashes deretter én gang med MD4-algoritmen fra RFC 1320.
UTF-16LE-trinnet er detaljen de fleste gjør feil når de reimplementerer NTLM: å hashe UTF-8-bytene til en streng i stedet for UTF-16LE-bytene gir et helt annet, feil sammendrag, selv om den synlige teksten ser identisk ut. Dette verktøyet koder korrekt, slik at utdataene samsvarer med det Windows selv lagrer, og det verktøy som hashcat (modus 1000) og Mimikatz forventer.
Fordi NTLM eksisterte før moderne passordhashing-design, mangler den alle beskyttelsene som senere ble bygget spesifikt for å bremse knekking: ingen bruker-spesifikt salt, ingen konfigurerbar arbeidsfaktor, og ingen bevisst iterasjon. Det er kun én MD4-passering, noe som gjør den ekstremt rask å beregne — en egenskap som er praktisk for gammel kompatibilitet, men katastrofal for motstand mot brute-force- og ordboksangrep.
Hvorfor bruke det?
- Bekreft at en hash hentet fra en Windows SAM-database, NTDS.dit-dump eller Active Directory-eksport samsvarer med en forventet verdi under autorisert sikkerhetstesting.
- Bekreft forståelsen din av MS-NLMP-algoritmen, eller sjekk en hash koden din produserte, mot en kjent korrekt implementering.
- Generer NTLM-hasher for hashcat (`-m 1000`) eller John the Ripper-ordlistetesting i et lab- eller CTF-miljø du har tillatelse til å angripe.
- Kryssjekk Mimikatz eller annen pentesting-verktøyutdata under legitime red-team- eller legitimasjonsrevisjonsoppdrag.
- 100 % lokalt: inndataene dine forlater aldri nettleseren, så det er trygt å bruke selv for sensitivt legitimasjonsmateriale i en autorisert vurdering.
Slik bruker du det
- Skriv inn passordet eller strengen du vil hashe, i inndatafeltet.
- Klikk "Generate NTLM Hash".
- Les den 32-tegns heksadesimale NTLM-hashen (utdata med store bokstaver er på som standard, i tråd med hvordan Windows og de fleste knekkeverktøy viser den — fjern haken for små bokstaver).
- Klikk "Copy" for å kopiere hashen til utklippstavlen.
Eksempel
Inndata
passwordResultat
8846F7EAEE8FB117AD06BDD830B7586CDette er en velkjent, uavhengig verifiserbar testvektor: NTLM-hashen til den bokstavelige strengen "password" er alltid 8846F7EAEE8FB117AD06BDD830B7586C. Du kan sjekke dette verktøyets utdata mot enhver annen korrekt NTLM-implementering.
NTLM vs. moderne passordhashing
Tabellen nedenfor fremhever hvorfor NTLM anses som utdatert for å beskytte nye systemer, selv om den fortsatt er innebygd i gammel Windows- og Active Directory-infrastruktur.
| Egenskap | NTLM | bcrypt / scrypt / Argon2 |
|---|---|---|
| Underliggende primitiv | Én MD4-passering | Formålsbygget treg hash med justerbar kostnad |
| Salting | Ingen — identiske passord hasher alltid identisk | Unikt tilfeldig salt per passord |
| Iterasjon / strekking | Ingen | Konfigurerbar arbeidsfaktor, kan økes over tid |
| Motstand mot brute-force | Svært svak — milliarder gjetninger/sek på moderne GPU-er | Bevisst kostbart per gjetning |
| Hvor den fortsatt finnes | Gammel Windows-autentisering, Active Directory-reserveløsning | Nye applikasjoner, nåværende beste praksis |
Relaterte verktøy
Hvis du trenger en generell kryptografisk hash i stedet for den NTLM-spesifikke MD4(UTF-16LE)-konstruksjonen, kan disse verktøyene passe bedre.
→ Multi-algoritme hashgenerator · MD5-generator · Passordgenerator
Ofte stilte spørsmål
Hva er egentlig en NTLM-hash?
Det er passordverifikatoren som Windows beregner og lagrer for NT LAN Manager-autentisering, definert i Microsofts MS-NLMP-spesifikasjon som MD4(UTF-16LE(password)) — én MD4-passering over passordets UTF-16 little-endian bytekoding. Den er alltid 128 bit, vist som 32 heksadesimale tegn.
Hvorfor spesifikt UTF-16LE, og ikke UTF-8 eller ASCII?
Windows har lagret tekst internt som UTF-16LE siden NT ble designet, så passord kodes også slik før hashing. Hvert tegn blir 2 byte (little-endian byterekkefølge), inkludert vanlige ASCII-tegn som 'a', som blir 0x61 0x00 i stedet for bare 0x61. Å hashe UTF-8-bytene til den samme strengen gir et helt annet, feil resultat — dette er den vanligste feilen i NTLM-implementeringer bygget fra bunnen av.
Er NTLM trygt å bruke i dag?
Nei, og Microsoft selv anbefaler å bevege seg bort fra den til fordel for Kerberos der det er mulig. NTLM har ikke noe salt, så identiske passord gir alltid identiske hasher på tvers av hver bruker og hvert system, noe som muliggjør forhåndsberegnede rainbow-table-oppslag. Den har heller ingen iterasjon eller arbeidsfaktor — én usaltet MD4-passering — så moderne GPU-er kan forsøke milliarder av gjetninger per sekund mot en fanget hash. Den overlever hovedsakelig for kompatibilitet med eldre Windows-systemer og -applikasjoner.
Hvordan skiller NTLM seg fra moderne passordhashing som bcrypt, scrypt eller Argon2?
Moderne passordhashere er bevisst trege og saltet: bcrypt, scrypt og Argon2 legger hver til et unikt tilfeldig salt per passord og en justerbar kostnadsfaktor som kan økes over tid etter hvert som maskinvare blir raskere, spesifikt for å gjøre brute-forcing kostbart selv i stor skala. NTLM gjør ingen av delene — den ble designet i en tid før offline brute-forcing var en praktisk trusselmodell, og det viser. Dette er nøyaktig hvorfor NTLM aldri bør brukes til å beskytte noe som designes i dag; dette verktøyets reelle bruksområder er kompatibilitet med eksisterende Windows-infrastruktur og autorisert sikkerhetstesting, ikke bygging av nye systemer.
Hva er legitime bruksområder for en NTLM-hashgenerator?
Verifisere hasher hentet fra en SAM-database eller NTDS.dit under en autorisert penetrasjonstest eller legitimasjonsrevisjon; sjekke at dine egne verktøy eller skript implementerer MS-NLMP korrekt; generere testhasher for hashcat (modus 1000) eller Mimikatz-formatkompatibilitetskontroller i et lab du kontrollerer; og jobbe gjennom CTF- eller treningsøvelser som eksplisitt involverer NTLM. Å bruke dette verktøyet til å angripe kontoer eller systemer du ikke eier eller har skriftlig tillatelse til å teste, er ikke legitim bruk.
Blir passordet eller inndataene mine sendt til en server?
Nei. MD4-beregningen kjøres helt i JavaScript i nettleseren din — det finnes ikke noe nettleser-API for MD4, så den er implementert direkte i denne sidens klientsidekode, og ingenting du skriver blir noensinne overført noe sted.