da crazy.cat » gio apr 08, 2004 2:30 pm
Alcuni suggerivano per sbloccare le psw dimenticate di 2000 e Xp, di cancellare il file Sam (io ci ho provato per curiosità ed ho inchiodato il pc) perché secondo loro conteneva le psw.
Indovinato
In windows 2000 la cosa è complicata dal fatto che tutto il database
è cifrato da una chiave random a 128 bit, che è a sua volta protetta
con un'altra chiava chiamata system key.
Quest'ultima chiave è mantenuta sul disco locale protetta da un non
ben precisato algoritmo di oscurazione.
Normalmente il Sam della macchina è criptato usando una chiave di
avvio che è mantenuta in locale. Questa chiave contiene un codice
di hash che è stato processato durante l'avvio, e permette al
database degli account di essere decriptato e conservato in memoria
dove poi diventa accessibile per il sistema.
Questo comportamento del sistema può essere cambiato usando una
utility da linea di comando che si chiama SYSKEY ed è syskey.exe.
Questa utility consente all'amministratore di cambiare il punto in cui
viene conservato l'hash, permettendo di spostare il codice su un altro
punto del disco o su di un dischetto.
Se viene fatto uno spostamento del file di hash su dischetto, ci si
deve ricordare di conservarlo in un posto sicuro, perché senza questo
dischetto il sistema non può fare boot e non può decifrare il
database degli account e delle password.
Un modo per proteggere meglio i dati è implementare i requisiti minimi
di complessità delle password. Con questa implementazione si hanno a
disposizione diverse librerie che possono essere usate per forzare
gli utenti a stabilire vari livelli di complessità della password.
Microsoft ha una libreria chiama PASSFILT.DLL che fornisce dei
riquisiti di complessità basilari.
È possibile anche creare librerie di controllo password adattate alle
esigenze di sicurezza.
Basta aggiungere il nome della DLL all'interno del registro.
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLSA
NotificationPackages
Le password vengono mantenute all'interno di un database criptato.
Questo database è parte del registro di windows e normalmente non è
accessibile.
Il SAM lo si trova in due locazioni del sistema:
WINNTSYSTEM32CONFIGSAM
WINNTREPAIR
La seconda locazione è creata solo nel caso in cui si faccia almeno
una volta il "dischetto di ripristino" del sistema, che in win2k si
crea dal programma di backup.
Questa copia sel SAM contiene le password degli account GUEST e
ADMINISTRATOR