Mi è stato chiesto di fornire un'interfaccia web pubblica a cui vengono forniti indirizzi email (che appartengono ai nostri utenti) per client pubblici (ad esempio un'applicazione Web o un'applicazione mobile nativa) indipendentemente dal fatto che un utente abbia attivato l'autenticazione a due fattori. Attualmente sto valutando il rischio per la sicurezza introdotto con questo requisito. Ho una brutta sensazione ma finora non ho trovato nessun grosso problema con quello. Questo è quello che posso pensare:
- Le informazioni che un utente ha attivato o meno 2FA potrebbero essere utilizzate da un utente malintenzionato per concentrarsi prima sugli account deboli (ad esempio attacchi di indovinare la password online). Tuttavia, è ben noto che solo un una piccola parte degli utenti ha attivato 2FA. Quindi, un utente malintenzionato non risparmia molto se distingue tra account 1FA e 2FA e quindi il vantaggio è piuttosto ridotto.
- Sapendo che un utente ha abilitato 2FA, l'utente malintenzionato sa anche che l'utente ci ha fornito un numero di telefono poiché utilizziamo i codici SMS come secondo fattore. Non vedo alcun vantaggio qui per l'attaccante come 1) dovrebbe essere molto improbabile che un utente non abbia un telefono (cellulare) e 2) altri utenti (senza 2FA) potrebbero averci dato i loro numeri di telefono pure.
- Un utente malintenzionato potrebbe supporre che un utente abbia dati che vale la pena proteggere. Questo è attualmente il più grande problema che riesco a vedere. Nel caso in cui ci sia qualche vulnerabilità sul nostro sito che consente a un utente malintenzionato di ottenere i dati dei nostri utenti, un utente malintenzionato potrebbe concentrarsi prima sugli account 2FA per ottenere quanti più dati preziosi possibili prima che l'attacco venga rilevato.
Mi sono perso qualcosa?