L'LM hash o LAN Manager hash è uno dei formati che Microsoft LAN Manager e Microsoft Windows usano per memorizzare password che sono lunghe non più di 14 caratteri. Questo tipo di hash è l'unico metodo per criptare password usato in LAN Manager (da cui il nome dell'hash) e da versioni di Windows fino a Windows Me. È anche supportato da versioni più recenti di Windows per assicurare la retrocompatibilità, anche se in Windows Vista deve essere attivato manualmente.

Algoritmo L'LM hash funziona nel seguente modo La password dell'utente viene convertita da stringa OEM a tutto maiuscolo. La password viene anche troncata dopo 14 byte. La password viene a sua volta divisa in due metà da 7 byte. Questi valori sono usati per creare due chiavi DES, una per ogni blocco da 7 byte, convertendo i sette byte a un flusso di bit e aggiungendo un bit zero alla fine di ogni sette bit. Questo genera i 64 bit necessari per ogni chiave DES. Ognuna di queste di chiavi è usata per cifrare con il DES la stringa costante in ASCII “KGS!@#$%”, trasformandola in due valori da 8 byte. Questi due valori sono concatenati per formare un valore da 16 byte, il quale è l'LM hash.

Sicurezza Sebbene sia basato sul DES, un cifrario a blocchi ben noto e studiato, l'LM hash può essere violato molto facilmente a causa di due debolezze nella sua implementazione. La prima è che le password più lunghe di 7 caratteri sono divise in due ed ogni metà è trattata separatamente. La seconda è che tutte le lettere minuscole della password sono convertite in maiuscolo prima del calcolo dell'hash.

La prima debolezza permette di attaccare separatamente le due metà della password: mentre ci sono differenti password ottenibili da 14 caratteri ASCII stampabili, questi scendono a con i soli 7 caratteri di una metà della password. Riducendo, inoltre, il campo dei caratteri a causa della conversione da minuscolo a maiuscolo, si riducono anche il numero delle possibili combinazioni per ogni metà a . Con un attacco a forza bruta condotto sulle due singole metà, un moderno computer può violare un LM hash in poche ore.

Dato che l'LM hash non include un nonce, vale a dire non include un valore univoco ma utilizza l'hash puro, un attacco di tipo a Rainbow tables porta alla scoperta delle password in pochi secondi. Questo tipo di attacco sfrutta il cosiddetto compromesso tempo-memoria: per accelerare il calcolo della password vengono caricati in memoria milioni di hash precalcolati che vengono confrontati con quello da violare. Un confronto è molto più veloce di un calcolo puro dell'hash. Esistono molti software che integrano la possibilità di sferrare un simile attacco: tra questi abbiamo RainbowCrack, L0phtCrack, Cain & Abel, Ophcrack

Per ovviare alle debolezze dell'LM Hash, Microsoft introdusse in Windows NT 3.1 un nuovo algoritmo denominato NTLM, poi aggiornato alla versione 2 con Windows NT 4.0.

Note

Voci correlate Pwdump

Collegamenti esterni The Shmoo Group offre Rainbow tables precompilate che sono scaricabili via Bit Torrent

(~11GB di password basate sul dizionario italiano)

Categoria:Hash crittografici