Perché Si Dovrebbe Preoccupare ogni volta che un Servizio di Database delle Password È Trapelato

0
308

“Il nostro database delle password è stata rubata ieri. Ma non preoccupatevi: le password sono crittografate.” Vediamo regolarmente dichiarazioni come questa linea, tra cui di ieri, da Yahoo. Ma dovremmo davvero prendere queste rassicurazioni al valore nominale?

La realtà è che la password del database compromessi sono una preoccupazione, non importa quanto un’azienda può provare a girare. Ma ci sono alcune cose che potete fare per isolare te stesso, non importa come il male di una società di sicurezza pratiche.

Come Le Password Devono Essere Conservati

Ecco come le aziende dovrebbero memorizzare le password in un mondo ideale: Si crea un account e fornire una password. Invece di memorizzare la password stessa, il servizio genera un “hash” dalla password. Questa è un’impronta unica che non può essere invertito. Per esempio, la password è “password” può trasformarsi in qualcosa che assomiglia più a una “4jfh75to4sud7gh93247g…”. Quando si immette la password per l’accesso, il servizio genera un hash da esso e controlla se il valore di hash corrisponde al valore memorizzato nel database. In nessun momento il servizio di salvare mai la password stessa a disco.

Per determinare la tua attuale password, un utente malintenzionato di accedere al database dovrebbe pre-calcolare l’hash di password comuni e quindi controllare se sono presenti nel database. Gli aggressori fare questo con le tabelle di ricerca—le liste enormi di hash che corrispondono password. Gli hash può quindi essere confrontato con il database. Per esempio, un utente malintenzionato dovrebbe conoscere l’hash per “password1” e poi vedere se qualsiasi account nel database utilizzando l’hash. Se lo sono, l’attaccante conosce la password è “password1”.

Per evitare questo, i servizi dovrebbero “sale” loro hash. Invece di creare un hash della password stessa, si aggiunge una stringa casuale di fronte o alla fine della password prima di hashing. In altre parole, un utente deve inserire la password “password” e il servizio potrebbe aggiungere il sale e l’hash di una password che appare più come “password35s2dg.” Ogni account utente deve disporre di un proprio ed unico di sale, e questo farebbe sì che ogni account utente avrebbe un diverso valore di hash per la propria password nel database. Anche se più account la password “password1”, l’avrebbero hash diversi a causa dei diversi valori di sale. Questa sarebbe la sconfitta di un utente che ha cercato di pre-calcolare gli hash delle password. Invece di essere in grado di generare gli hash applicata per ogni account utente in tutto il database, che avrebbero dovuto generare unica hash per ogni account utente e la sua unica di sale. Questo richiederebbe molto più tempo di calcolo e di memoria.

Questo è il motivo per cui spesso dicono di non preoccuparsi. Un servizio mediante procedure di sicurezza appropriate, si deve dire che erano in uso salata gli hash delle password. Se si sta semplicemente dicendo che la password sono “hash” che è più preoccupante. LinkedIn hash della password, per esempio, ma non sale di loro—così è stato un grande affare quando LinkedIn perso 6,5 milioni di password cifrate nel 2012.

Bad Password Pratiche

Questa non è la cosa più difficile da implementare, ma molti siti web che riescono ancora a rovinare tutto in una varietà di modi:

  • Il salvataggio delle Password in Testo Normale: Piuttosto che perdere tempo con l’hashing, alcuni dei peggiori criminali possono solo il dump la password in testo normale in un database. Se un database è compromessa, le password sono ovviamente compromessa. Non importa quanto forti erano.
  • Hash della Password Senza la Salatura Loro: Alcuni servizi potrebbero hash della password e dare lì, la scelta di non utilizzare i sali. Tale password del database dovrebbe essere molto vulnerabili alle tabelle di ricerca. Un utente malintenzionato potrebbe generare gli hash di password e quindi verificare se la loro esistenza in un database che potrebbe fare questo per ogni account in una sola volta se non sale è stato utilizzato.
  • Il riutilizzo di Sali: Alcuni servizi possono utilizzare un sale, ma si può riutilizzare la stessa di sale per ogni password di account utente. Questo è inutile se stesso sale sono stati utilizzati per ogni utente, due utenti con la stessa password potrebbe avere lo stesso hash.
  • L’utilizzo di Brevi Sali: Se sali di poche cifre sono utilizzati, sarebbe possibile generare tabelle di ricerca che incorporated ogni possibile sale. Per esempio, se una sola cifra sono stati utilizzati come sale, l’utente malintenzionato potrebbe facilmente generare elenchi di hash che incorporated ogni possibile sale.

Le aziende non sempre raccontare tutta la storia, quindi, anche se dicono una password con hash (o hash e salata), essi non possono essere utilizzando le migliori pratiche. Sempre peccare per eccesso di cautela.

Altre Preoccupazioni

È probabile che il valore del sale è anche presente nel database delle password. Questo non è così male—se un unico valore salt sono stati utilizzati per ogni utente, gli aggressori avrebbe dovuto spendere enormi quantità di potenza di CPU rottura di tutte le password.

In pratica, In modo che molte persone usano ovvio password che sarebbe probabilmente essere facile per determinare molte utente password degli account. Per esempio, se un utente malintenzionato sa hash e sanno il sale, si può facilmente controllare per vedere se si sta utilizzando alcune delle password più comuni.

ARTICOLO CORRELATOCome gli Aggressori in Realtà “Hack Account Online e di Come proteggersi

Se un utente malintenzionato ha fuori per voi e vuole rompere la password, si può fare con la forza bruta, fintanto che sanno il valore del sale—che probabilmente fare. Locali, l’accesso non in linea con la password del database, gli aggressori possono impiegare tutti gli attacchi di forza bruta che vogliono.

Altri dati personali anche probabile che le perdite quando un database di password di furto: i Nomi utente, indirizzi e-mail, e altro ancora. Nel caso di Yahoo di perdita, di sicurezza domande e risposte sono state trapelate—che, come tutti sappiamo, rendere più facile per rubare le credenziali di accesso di qualcuno account.

Aiuto, Cosa Devo Fare?

Qualunque sia il servizio dice che quando il suo database delle password è rubato, è meglio pensare che ogni servizio è completamente incompetente e agire di conseguenza.

In primo luogo, non riutilizzare le password su più siti web. Utilizzare un gestore di password che genera una password unica per ogni sito web. Se un utente malintenzionato riesce a scoprire che la vostra password per un servizio è “43^tSd%7uho2#3” e utilizzare solo la password su un sito web, hanno imparato niente di utile. Se si utilizza la stessa password ovunque, si poteva accedere al tuo account di altri. Questo è quante persone conti diventare “violato.”

Se un servizio non diventa compromessa, assicurarsi di cambiare la password. Si dovrebbe anche cambiare la password su altri siti se si riutilizza lì — ma non si deve fare e che, in primo luogo.

Si dovrebbe anche considerare l’utilizzo di autenticazione a due fattori, che ti proteggerà anche se un utente malintenzionato impara la tua password.

ARTICOLI CORRELATIPerché Si Dovrebbe Usare un Password Manager, e Come iniziare aCiò che È l’Autenticazione a Due fattori, e Perché Ne ho Bisogno?

La cosa più importante è di non riutilizzare le password. Password compromessa database non può far male se si utilizza una password unica, ovunque, a meno che non memorizzare qualcosa di importante nel database, come il tuo numero di carta di credito.

Immagine di Credito: Marc Falardeau su Flickr, Wikimedia Commons