[Unix] Salt e sicurezza password

di il
4 risposte

[Unix] Salt e sicurezza password

Se ho ben capito quando il sistema memorizza la password di un utente, la decifra tramite una funzione hash (DES, MD5), ma dapprima la concatena ad un salt, ovvero un valore binario di 12 bit.

Quindi:

H( salt || password ) -> memorizzata nel file shadow 
Ma il sistema ricorda il salt a me associato o come fa a capire se la mia password è esatta nel momento in cui effettuo il login??

Grazie e buona serata

4 Risposte

  • Re: [Unix] Salt e sicurezza password

    Il salt viene aggiunto alla password.
    quindi
    pass: Pippo
    salt: abc
    md5("pippoabc")=ZzXx
    save("ZzXxabc")
  • Re: [Unix] Salt e sicurezza password

    Per la verità vengono usati tipicamente MD5, blowfish, eksblowfish, SHA256 o SHA512,
    a seconda di un flag memorizzato nel primo carattere dell'hash, poi viene memorizzato
    il salt, ed infine il "vero" hash del salt+password.

    Li vedi usando passwd con le opzioni -tipohash e -salt quellochevuoi.

    In sostanza nel file passwd (o shadow, se usi linux) salta fuori una stringa composta da
    $tipohash$salt$hashvero

    Lo scopo è quello di rendere la vita difficile ai cracker, dovendo lavorare su tutte le password (cioè le righe del file) partendo in ogni caso da zero.
    Se non ci fosse il sale => si userebbero rainbowtable.
    Con un sale uguale per tutti=>con tabelle di parole, alla prima decifrazione si troverebbe il sale => e si tornerebbe al punto 1

    Considera che una macchina *nix può avere anche centinaia di utente, non solo i 2 o 3 di un normale computer desktop
  • Re: [Unix] Salt e sicurezza password

    Quindi quando effettuo il login va a trovare in una tabella il salt corrispondente al mio username:

    username:paolovox -> salt:ZzXx

    Inserisco la password:
    password:abc

    ora calcola H( ZzXxabc ) -> 1234

    e se l'hash è uguale a quello associato all'utente nel file shadow, accedo senza problemi altrimenti no, a meno che con una botta di fortuna ci sia una collisione.

    Grazie per le risposte.
  • Re: [Unix] Salt e sicurezza password

    Grosso modo (al netto dei dettagli sia pure importanti, riguardo a shadow ed a cosa è e non è, e perchè lo è)
Devi accedere o registrarti per scrivere nel forum
4 risposte