Come può Microsoft convalidare una password più corta su account Microsoft (MSDN)?

6

Di recente l'ho trovato durante l'accesso a MSDN. (Ho visto questa schermata dopo aver digitato le mie credenziali iniziali.)

Ho una password di 20+ cifre, tuttavia apparentemente c'è un nuovo requisito per gli account Microsoft affinché la password non sia lunga più di 16 cifre. Se digito le prime 16 cifre della mia password, sono in grado di accedere.

Questo mi ha fatto pensare: se le password vengono memorizzate come hash unidirezionali, un hash da una password di 16 cifre e uno da 20 cifre non sono lontanamente simili. Non è possibile convalidare un hash di 20 cifre utilizzando solo le prime 16 cifre.

Se Microsoft sta memorizzando correttamente le password (salt & hash), come possono convalidare una versione più breve della mia password?

    
posta Paperjam 21.08.2012 - 21:33
fonte

3 risposte

13

Tre possibilità:

  1. Microsoft l'ha sempre troncato e tu non ne eri consapevole. Puoi usare il vecchio sistema con una password di 16 caratteri e caratteri errati alla fine?

  2. Stavano memorizzando le password in testo semplice (o crittografando in modo equivalente le password, consentendo loro di decodificare la password per troncarla).

  3. Quando hai migrato per la prima volta gli account (o segretamente in previsione della migrazione), ti hanno richiesto di inserire la password completa di 18 caratteri, verificato che fossi tu chi hai detto che eri contraria e poi creato e memorizzato un nuovo hash di 16 caratteri della password troncata per il nuovo sistema. Questo è improbabile ma possibile.

Indipendentemente da ciò, il troncamento delle password o la forzatura di brevi lunghezze delle password è una cattiva politica delle password. Previene i passphrase moderatamente forti facili da ricordare ; ad esempio correct horse battery staple di 28 caratteri. Le lunghezze delle password non devono essere troncate almeno fino a circa ~ 50 caratteri. Se il tuo database richiede una lunghezza massima fissa, probabilmente ha senso troncare da qualche parte circa 100 caratteri o giù di lì a quel punto è consentito le passphrase che probabilmente hanno più entropia di quelle che possono essere inserite in un hash 128/256 bit che sono lunghezze hash perfettamente forti.

    
risposta data 21.08.2012 - 21:42
fonte
4

Questo è possibile in un paio di modi. Innanzitutto se la password viene archiviata utilizzando una sorta di crittografia reversibile che consente un confronto con testo normale. Secondo se l'algoritmo di hashing utilizzato per memorizzare la password agisce solo sui primi 16 caratteri.

    
risposta data 21.08.2012 - 21:42
fonte
4

Sebbene non abbia una conoscenza diretta della politica di archiviazione delle password di Microsoft, suggerirei un paio di possibili scenari

  1. Molto probabilmente - Stanno troncando la password prima che la cancellino. Quindi se la tua password è 'iamaverylongpasswordandover16characters' il sito si limita a ridurlo ai primi 16 caratteri prima di eseguirlo attraverso la funzione di hashing. TBH non ha un'enorme riduzione della sicurezza, ma non è ancora auspicabile in quanto indebolisce le password delle persone
  2. meno probabile - Stanno conservando in chiaro. Cattive pratiche evidenti.
  3. anche meno probabile: stanno utilizzando un HSM e li memorizzano con la crittografia a 2 vie, in modo che possano recuperare il testo normale per confrontare i primi 16 caratteri.

Se fossi un uomo scommettente, i miei soldi sarebbero sul numero 1.

    
risposta data 21.08.2012 - 21:43
fonte

Leggi altre domande sui tag