Non ho ancora capito se l'argomento recupero password è accettato dalle regole del forum...
Comunque ti do delle info generiche ma secondo me molto utili per capire come funziona la cosa...
Le password sono memorizzate sotto forma di hash.
(cos'è un hash!? mo venghino avanti signori !)
LM e NTLM sono due sistemi di hashing differenti. Il primo compatibile con i win9x (e quindi pensato per win9x!) l'altro no.
LM prevede password di max 14 caratteri, se la pass è più lunga codifica solo i primi 14 caratteri.
Altra carratteristica di LM è il fatto che prima dell'hashing tutti i caratteri alfabetici sono convertiti in maiuscolo ("Casa11" e "caSa11" avranno la stessa codifica!). Inoltre, cosa molto importante, le pass più lunghe di 7 caratteri vengono convertite in due stringhe, una che contiene i primi 7 car e l'altra con i rimanenti. Le due stringhe vengono poi convertite INDIPENDENTEMENTE le une dalle altre nel rispettivo hash e infine come hash complessivo viene usato la sequenza dei due hash concatenati. Fondamentalmente quindi il recupero di pass da hash LM si riduce a trovare password di max 7 caratteri e per di più i caratteri alfabetici sono tutti maiuscoli!!!! ( mai sistema fu più fragile!!!!) E' per questo che i sistemi di recupero basati su brute forcing spesso trovano prima la parte finale della password: se la pass è di 9 caratteri devo trovare una pass di 7 più una di 2. Quella di 2 caratteri viene trovata all'istante!
Con NTLM tutti questi problemi vengono superati: hash unico per tutta la pass che può essere > 14 e niente conversione in maiuscolo.
Debolezza di NTLM puo' essere considerato il fatto che pass uguali hanno lo stesso hash. Posso quindi confrontare le password confrontando direttamente gli hash. Nei sistemi unix viene invece aggiunto anche un seme casuale in modo da superare questo problema.
Purtroppo normalmente sui pc è attiva sia la codifica LM che quella NTLM quindi abbiamo memorizzati due hash per la stessa password.
Ovviamente cosa furba è attaccare l'algoritmo più debole quindi LM!
Con vari programmini si puo' piuttosto velocemente (ore al max 1 giorno) trovare la password che codifica l'hash LM tramite brute forcing.
Questa è la VERA password solo se la password originale era minore di 14 caratteri e i caratteri erano tutti maiuscoli. Nella quasi totalità dei casi la cosa è vera purtroppo (basta considerare tutti i caratteri minuscoli invece che maiuscoli poiche è più probabile che siano tutte minuscole piuttosto che tutte minuscole!)
Se così non è abbiamo comunque una ottima base di partenza per trovare la vera pass attraverso l'hash NTLM. Conosciamo infatti tutti i primi 14 caratteri a meno del case.... tutto questo comunque nel 99% dei casi non è necessario!
Saminside è una versione diciamo sperimentale che prevede come dizionario solo caratteri. La versione completa sarà a pagamento. Se finisce l'elaborazione (guarda che avevi una pass veramente banale e corta per trovarla in 10min!) e non ha trovato la pass significa che sono presenti anche altri caratteri.
Se ti interessa solo accedere al sistema però ti consiglio un strumento che resetta semplicemente la password.

Rispondi quotando