La password Hash / Salted aiuta davvero quando DB è compromesso?

5

Mi sono imbattuto in questo articolo e ho ottenuto un hash di base, attacco di forza salina e forza bruta.

La mia domanda è nell'articolo, l'autore sottolinea quanto sia difficile invertire la password hash / salted a quella originale. Ma se l'intruso ha accesso in scrittura al database, può

  1. crea un nuovo account con pwd "12345678"
  2. registra l'hash "69410532sfb9234234" (solo un esempio)
  3. cambia altri account hash in pwd in "69410532sfb9234234"
  4. accedi dal front-end come altro titolare dell'account tramite pwd "12345678"
  5. L'utile

Mi sono perso qualcosa qui? O l'accesso in scrittura a db è quasi impossibile da ottenere? Gli ultimi database Steam e PSN non forniscono dettagli se l'accesso in scrittura è compromesso.

    
posta Will 18.11.2011 - 02:40
fonte

3 risposte

19

Le password di hashing sono una difesa contro un attacco specifico. L'attacco è: rubare una copia dell'intero file di password (tabella utenti, ldap db, ecc.), Scaricarlo sul proprio computer e tentare di recuperare le password degli utenti. L'obiettivo dell'attacco è: trovare utenti che riutilizzino i loro nomi utente e password attraverso i siti Web e accedere agli account di posta elettronica, banca, social network e altri utenti di tali utenti.

La difesa delle hashing-password funziona così: le password non vengono archiviate direttamente e qualsiasi tentativo di recuperare le password originali richiede che l'autore dell'attacco esegua una quantità di lavoro estremamente grande, almeno rispetto al lavoro richiesto per controlla se una password che l'utente inserisce quando effettua il login corrisponde alla password sul file. Ci sono molte varianti su questa difesa, inclusa la scelta di hash migliori, salatura degli hash, iterazione degli hash, ecc., Il loro scopo è quello di rendere la difesa migliore di altrimenti e difendersi da varianti dell'attacco che sono in grado di muoversi le difese più semplici.

La difesa delle hashing-password non è una difesa contro qualsiasi attacco. Ad esempio, non è di aiuto nei confronti di un attacco in cui l'autore dell'attacco acquisisce accesso al database in modo arbitrario, riscrive tutte le password degli utenti e accede a tutti gli account degli utenti su quel sito. La difesa difende solo dall'attacco di furto di password offline.

Quindi è necessario essere consapevoli dei diversi tipi di attacchi e difendersi da ognuno di essi usando una difesa che funziona contro quel tipo di attacco.

    
risposta data 18.11.2011 - 03:02
fonte
4

Hai ragione, se un utente malintenzionato ottiene l'accesso in scrittura può modificare le password di altre persone e accedere agli account. Lo scopo principale della salatura delle password è di alzare il livello delle password di cracking (che potrebbe essere utile anche se un utente malintenzionato ha accesso in scrittura poiché scoprire la password di qualcuno potrebbe consentire all'utente malintenzionato di accedere agli altri account dell'utente poiché le persone riutilizzano continuamente le password).

Ora, detto questo, è importante ricordare alcune sottigliezze quando si tratta dei benefici dei sali. Ad esempio, se l'utente malintenzionato si preoccupa solo di rompere la tua password individuale, i sali non aiutano molto. Aiutano davvero quando l'aggressore tenta di craccare quante più password possibile.

Ad esempio, assumiamo che ci siano N possibili password e M possibili sali. Se l'utente malintenzionato vuole crackare la propria password, estrarrà il sale dal database e tenterà tutte le password N, e alla fine lo otterrà.

Ora, se l'hacker vuole solo craccare il maggior numero possibile, dovrà provare ognuna delle password N con ciascuno dei sali M, il che significa che dovrà fare calcoli NM.

    
risposta data 18.11.2011 - 02:56
fonte
-2

Per inciso, è utile includere il nome utente / userid come addizionale per la password. In questo modo due utenti con la stessa password non ottengono la stessa password con hash.

    
risposta data 18.11.2011 - 13:06
fonte

Leggi altre domande sui tag