L3n
18-01-2011, 22:25
Ciao! La mia è una richiesta di info riguardante una cosa abbastanza tecnica.
Le password in Linux vengono salvate nel file /etc/passwd, se sono oscurate nel file /etc/shadow, dove troviamo le stringhe di ogni account presente sull'OS.
Esempio di contenuto di file shadow:
root:$1$Pm11DX86$t58Ta1.ErOm9TyJbQk//l.:14608:0:99999:6:::
daemon:*:14545:0:99999:7:::
bin:*:14545:0:99999:7:::
sys:*:14545:0:99999:7:::
sync:*:14545:0:99999:7:::
mariorossi:$6$F5o3Sdoc$y.IdYyCK74kDS6zXxW7iFer8JdaagQAViaZJGO1Om8MPZUxn8XTml9TNLn2deLNRPNKwZAvHKfefAtnDVD5Zo/:14671:0:90:6:7:14800:9
Adesso, prendiamo in considerazione la prima stringa di hash, che rappresenta l'account root.
root:$1$Pm11DX86$t58Ta1.ErOm9TyJbQk//l.:14608:0:99999:6:::
E ne estrapolo i campi:
Username = root
$1$ = MD5 (indica il tipo di hash usato)
Salt (sale) = Pm11DX86
Password = t58Ta1.ErOm9TyJbQk//l.
Adesso io ho capito ciò. Però quello che non riesco a capire e che vi chiedo è:
Io scrivo la mia password che voglio impostare come root che è questa "password" e poi mi ritrovo tutto quel papiè di roba hash là sopra, ma come ci si arriva?? Io ho capiot questo:
password in chiaro che voglio impostare = "password"
poi il sistema operativo crea un salt di cifre random in base alla frequenza di clock del sistema e in base alla data e fa così
pone i caratteri del salt prima dei caratteri della password da noi inserita e poi formata la nuova parola hasha il tutto in MD5
(saltpassword) tutto hashato in MD5
dopodichè va a fare la stringa hashata che abbiamo visto prima, con la differenza che attraverso il "$1$" ci indica l'hash utilizzato e dopo ci scrive i caratteri del salt utilizzato, e poi dopo la (password+salt) hashato in MD5, giusto? Il salt quindi non ha criptazioni o altro, quello inserito da solo dopo il $1$ è la stringa di caratteri creata in random così come viene creata, giusto?
Ma un hash in MD5 non deve essere di 32 caratteri?? Senza simboli speciali tipo un punto (.) o uno slash (/)? E allora perchè la password creata con hash in MD5 contiene questi caratteri??
Grazie in anticipo!
P.S. : Ah, un'altra cosa.
Io sono sul terminale di kubuntu in Recovery Mode e voglio copiare un file su una pendrive. Come lo faccio? Ma soprattutto come faccio rilevare la pendrive al terminale in recovery mode? Le porte USB sono disattivate in questa modalità? Qauli sono i comandi per copiare un file e incollarlo su questa pendrive (se riusciamo a farla rilevare)??
Le password in Linux vengono salvate nel file /etc/passwd, se sono oscurate nel file /etc/shadow, dove troviamo le stringhe di ogni account presente sull'OS.
Esempio di contenuto di file shadow:
root:$1$Pm11DX86$t58Ta1.ErOm9TyJbQk//l.:14608:0:99999:6:::
daemon:*:14545:0:99999:7:::
bin:*:14545:0:99999:7:::
sys:*:14545:0:99999:7:::
sync:*:14545:0:99999:7:::
mariorossi:$6$F5o3Sdoc$y.IdYyCK74kDS6zXxW7iFer8JdaagQAViaZJGO1Om8MPZUxn8XTml9TNLn2deLNRPNKwZAvHKfefAtnDVD5Zo/:14671:0:90:6:7:14800:9
Adesso, prendiamo in considerazione la prima stringa di hash, che rappresenta l'account root.
root:$1$Pm11DX86$t58Ta1.ErOm9TyJbQk//l.:14608:0:99999:6:::
E ne estrapolo i campi:
Username = root
$1$ = MD5 (indica il tipo di hash usato)
Salt (sale) = Pm11DX86
Password = t58Ta1.ErOm9TyJbQk//l.
Adesso io ho capito ciò. Però quello che non riesco a capire e che vi chiedo è:
Io scrivo la mia password che voglio impostare come root che è questa "password" e poi mi ritrovo tutto quel papiè di roba hash là sopra, ma come ci si arriva?? Io ho capiot questo:
password in chiaro che voglio impostare = "password"
poi il sistema operativo crea un salt di cifre random in base alla frequenza di clock del sistema e in base alla data e fa così
pone i caratteri del salt prima dei caratteri della password da noi inserita e poi formata la nuova parola hasha il tutto in MD5
(saltpassword) tutto hashato in MD5
dopodichè va a fare la stringa hashata che abbiamo visto prima, con la differenza che attraverso il "$1$" ci indica l'hash utilizzato e dopo ci scrive i caratteri del salt utilizzato, e poi dopo la (password+salt) hashato in MD5, giusto? Il salt quindi non ha criptazioni o altro, quello inserito da solo dopo il $1$ è la stringa di caratteri creata in random così come viene creata, giusto?
Ma un hash in MD5 non deve essere di 32 caratteri?? Senza simboli speciali tipo un punto (.) o uno slash (/)? E allora perchè la password creata con hash in MD5 contiene questi caratteri??
Grazie in anticipo!
P.S. : Ah, un'altra cosa.
Io sono sul terminale di kubuntu in Recovery Mode e voglio copiare un file su una pendrive. Come lo faccio? Ma soprattutto come faccio rilevare la pendrive al terminale in recovery mode? Le porte USB sono disattivate in questa modalità? Qauli sono i comandi per copiare un file e incollarlo su questa pendrive (se riusciamo a farla rilevare)??