Equipaggiamo il nostro Leggendario [Tinfoil Hat]
.
I siti Web possono registrare le mie password?
Supponiamo che il sito Web abbia eseguito correttamente l'hashing. Quando si accede a un sito Web, è possibile prendere la password in chiaro e confrontarla con l'hash memorizzato. Se la passsword corrisponde all'hash memorizzato nel database, ti permetterà di autenticarti. In caso contrario, ti informerà che la tua password non è valida.
Quindi cosa?
Bene, succede che chiunque con un minimo di conoscenza di programmazione possa registrare password non valide aggiungendo una nuova riga a un metodo di autenticazione per qualsiasi tipo di sito web. anche se si tratta di un famoso portale web open source, forum o qualsiasi tipo di pacchetto. Finché la sorgente può essere modificata, si può cambiare tutto ciò che vogliono, in questo modo:
private void CheckPasswordBeforeHackingMyAOL-CD(string input, string username)
{
if (IsValid(input) && IsValid(username) && Bcrypt.TestHash(input, Database.GetHashForUser(username))
{
AuthenticateMyFace();
}
else
{
Database.LogFailedAttemptDetailsWithParametersBecauseSQLInjectionSucks(username, input);
InformUserThatTheirPasswordDoesntWorkButDontTellThemWhatWereReallyDoing();
}
}
In effetti, un programmatore potrebbe eseguire questo hashing prima per tutto ciò che riguarda le password. Non c'è niente che impedisca a nessuno di farlo.
Gestione del rischio
Ecco alcune domande da considerare:
- Ti interessa l'integrità di entrambi gli account?
- La stessa email è in uso in entrambi gli account?
- Usi la stessa password sia per l'e-mail che per i siti Web in questione (spero di no)?
Se sì a 1-3, consiglierei di cambiare la password. A meno che tu non ti interessi.
Ora che abbiamo dimostrato che questo è possibile su ogni fronte, dovresti aver paura di un simile attacco? Non me ne preoccuperei. Se sei preoccupato, dovresti probabilmente usare qualcosa come KeePass per gestire le credenziali del sito web in modo da non doverti preoccupare.