„Mindenkinek ott volt az orra előtt. Tyler meg én csak rámutattunk. Mindenkinek ott volt a nyelve hegyén. Tyler meg én csak kimondtuk.”
Az NTLM protokollal kapcsolatos pass-the-hash támadások már rég óta ismertek: Egy támadó megszemélyesíthet távoli felhasználókat az autentikációs protokollt alkalmazó szolgáltatások számára, amennyiben rendelkezik egy legitim felhasználó jelszavának MD4 hash-ével. Ez támadói szemszögből azért barátságos, mert a felhasználó választhat bármilyen erős jelszót, nekünk nem kell feltörnünk azt, hiszen az autentikációs folyamat csak a hash ismeretét igényli.
Hogy honnan szerezzük meg a hash-t? Tipikus eset, hogy egy hálózatban hozzáférést szerzünk egyetlen hoszthoz, majd a helyi jelszó adatbázist vagy a gyorsítótárat kirámolva hash-ekkel autentikálunk a hálózat más gépeire. Egy másik lehetőség, hogy az NTLM kihívás-válasz protokolljába ékelődve, vagy pl. egy SMB szervernek kiadva magunkat olyan kihívásokat osztunk egy kliensnek, melyre már van egy szép rainbow táblánk, ami remélhetőleg kipörgeti a kapott válaszból az áhított hash-t.
Az idő azonban telik: ma már nem érdemes rainbow-táblákkal vacakolni, mikor néhány GPU jobb teljesítményt nyújt, ráadásul tetszőleges kihívásra. De ennél még jobb (rosszabb) a helyzet:
Mark Gamache nem rég rámutatott, hogy a Moxie Marlinspike-ék által demonstált MS-CHAPv2 törési módszer gyakorlatilag egy-az-egyben alkalmazható az NTLM protokollra is:
by Moxie Marlinspike - az MD4 ezesetben még 5 db 0-t csap a normál kimenethez
Egy lehallgatott kihívás-válasz párból két darab hét karakteres (és egy darab két karakteres) DES kulcs kipörgetésével megkaphatjuk a hash-ünket, ami minimális költséget jelent egy támadó számára (CloudCracker-en kevesebb mint egy nap, valamint néhányszor tíz dollár).
A Windows XP és a Server 2003 még mindig alapértelmezetten engedélyezi ezt az autentikációs módot, a veszélyes kézfogásra pedig a felhasználók könnyen rávehetők (lásd még fájlmegosztások és UNC elérési utak). Az LM és NTLM protokollok Registry-ből tilthatók, a Microsoft pedig FixIt-eket is kiadott, melyekkel néhány kattintással biztonságosabbá tehetjük rendszereinket. Az összes támogatott Windows verzió, de még az NT 4.0 utolsó változata és a Samba is támogatja az NTLMv2-t, tessék letiltani az elavult protokollokat!