La debolezza qui è la mancanza di Entropia nel codice di reimpostazione della password.
Voglio dire che scegli un numero casuale a 6 cifre (338625), e provalo contro molti utenti. Quindi l'attaccante deve indovinare un codice di reset da 10^6
di possibilità. Ad un certo punto potrebbe funzionare.
Calcolo: poiché Facebook ha una grande base di utenti e riceve un numero elevato di richieste di reimpostazione della password, dice 10000 ( 10^4
) in 3 minuti prima della scadenza, che è paragonabile a 10^6
.
La probabilità che questo codice di riposo della password sia valido per alcuni utenti è 0.01
.
Is making the reset code much bigger will help resolving the problem,
or Facebook will need a new reset technology?
Facebook può semplicemente risolverlo aumentando l'entropia del codice di reimpostazione della password.
Questo può essere fatto facilmente da:
- Avere alfabeti (
[A-Z|a-z]
- 52 ), cifre ( 0-9
- 10 ), caratteri speciali ( dire 10 ) in il codice di reimpostazione della password.
- Avere una buona lunghezza di dire 10 caratteri (Risposta da Reryry McCune).
Calcolo: per un codice di reset di lunghezza pari a 6, l'utente malintenzionato deve ora indovinare un codice di ripristino tra (52+10+10)^6
.
La probabilità che questo codice di ripristino scelto in modo casuale da un utente malintenzionato corrisponda a un codice di reimpostazione della password valido tra il 10^4
precedente è 0.000000071
o 7.1*10^-8
. Invece di farlo, l'hacker ha maggiori possibilità di indovinare la password stessa e provarla contro molti utenti.
How to defend from this attack, should I reset it again after I
receive the reset message from the attacking process, or should I
reset via mail?
Penso che gli sforzi per proteggersi da questo attacco dovrebbero venire da Facebook.
Dal momento che gli utenti non possono accedere al messaggio / email di ripristino non appena arriva. Dal punto di vista dell'utente tutto quello che posso pensare è di abilitare l'autenticazione Two Factor.