Questo è un tipo di attacco temporale , che porta a un enumerazione del nome utente vulnerabilità.
Se questa è una minaccia o meno dipende dal design del tuo sistema. Se i nomi utente dovrebbero essere privati, è una preoccupazione. Alcuni sistemi sono scritti in modo tale che l'enumerazione degli utenti si adatta al design, come i provider di posta elettronica, dato che gli indirizzi di posta elettronica sono generalmente pubblici e se qualcuno ha l'indirizzo email [email protected]
allora hanno sicuramente una sorta di account email in example.com
e non vi è nulla trapelato lasciando che altri utenti sappiano che questo esiste. Il nome utente è pubblico comporta un rischio maggiore in quanto un utente malintenzionato saprà quali account possono essere presi di mira. In un sistema di posta elettronica, tuttavia, questo può essere ottenuto da un utente malintenzionato che invia un'email all'indirizzo per scoprire se rimbalza, quindi in questo caso non è possibile fare altro per limitare questo vettore di attacco (se si desidera che gli errori di battitura negli indirizzi di posta elettronica siano notificato al mittente, ovviamente).
Fondamentalmente la vulnerabilità è riassunto bene qui :
As an attacker if I can use your login or forgotten password page to narrow my list from 10000 targets to 1000 targets, I will.
A volte si presume che se un sito Web consente la registrazione dell'utente con nomi utente scelti dall'utente o una reimpostazione della password, l'enumerazione degli utenti è sempre possibile. Questo non è sempre il caso - un sistema di registrazione utente può essere combinato con un sistema di reimpostazione della password e consentire a un utente di seleziona un indirizzo email univoco come nome utente senza rivelare ad altre parti che è già in uso. Ciò si ottiene restituendo sempre lo stesso messaggio all'utente sul sito Web, ma inviando per e-mail il collegamento al passaggio successivo del processo all'indirizzo fornito. Ciò garantisce che solo chi ha accesso a quell'indirizzo email possa registrare o reimpostare la password. Naturalmente questo sarebbe per un sistema di sicurezza medio in cui si presume che un MITM di posta elettronica o altro compromesso non sia un vettore di attacco valido o utile.
Gli attacchi a tempo per loro natura richiederanno del tempo per l'esecuzione di un attaccante. Quindi potrebbero voler usare questo attacco sul tuo sistema per restringere la loro lista prima di tentare un attacco di forza bruta sui tentativi di accesso "lenti", che richiederanno anche del tempo.
Se desideri restringere il vettore di attacco, devi introdurre un ritardo artificiale che effettuerà tutti gli accessi indipendentemente dal fatto che abbiano un nome utente valido o meno per lo stesso intervallo di tempo.