Ottima domanda! Cercherò di abbattere i modelli di sicurezza.
Is there anything inherently more secure about having users enter a 4/8 digit code online vs. sending a code or simple message from their device?
Mentre l'SMS nel suo complesso rappresenta un debole metodo 2FA (vedi l'articolo sopra di The Verge), almeno il primo richiede che l'hacker esegua un po 'di hacking sulla rete globale delle telecomunicazioni. Quest'ultimo viene banalmente rotto da chiunque conosca i servizi online per l'invio di un SMS con qualsiasi from:
numero.
SMS è un debole metodo 2FA
Iniziamo col dire che SMS non è un modo sicuro per fornire informazioni sensibili. Questo articolo di The Verge sembra allineare abbastanza bene con la mia comprensione:
By exploiting known flaws in the cell network, the group was able to intercept all text messages sent to the number for a set period of time. That was enough to reset the password to the Gmail account and then take control of the Coinbase wallet. All the group needed was the name, surname and phone number of the targeted Bitcoin user.
Positive Technologies was able to hijack the text messages using its own research tool, which exploits weaknesses in the cellular network to intercept text messages in transit. Known as the SS7 network, that network is shared by every telecom to manage calls and texts between phone numbers. There are a number of known SS7 vulnerabilities, and while access to the SS7 network is theoretically restricted to telecom companies, hijacking services are frequently available on criminal marketplaces.
Fonte: The Verge .
Quindi, con la consapevolezza che stiamo confrontando la sicurezza di due varianti di un sistema molto insicuro, procediamo.
Modello di sicurezza per l'inserimento del codice di verifica nell'interfaccia utente web
Modello di sicurezza: per consentire a un utente malintenzionato di falsificare la proprietà del tuo numero di telefono, è necessario:
- Avvia il flusso di onboarding del sito web, fornendo i tuoi dati.
- Leggi il codice SMS inviato al tuo numero di cellulare.
- Inserisci quel numero nel flusso di onboarding.
La rimozione di questo attacco richiede la possibilità di leggere i tuoi messaggi SMS in tempo reale, cosa che, come indicato in precedenza da The Verge, è facilmente realizzabile.
Risposta all'SMS con "ciao"
Modello di sicurezza: per consentire a un utente malintenzionato di falsificare la proprietà del tuo numero di telefono, è necessario:
- Avvia il flusso di onboarding del sito web, fornendo i tuoi dati.
- Ricevi un SMS dal server.
- Rispondi al numero SMS del server con la parola "ciao".
A prima vista, sembra lo stesso modello di sicurezza di cui sopra: "se l'attaccante ha hack di SS7 e può leggere i tuoi SMS, allora possono rispondere anche a loro" .
Ma in realtà questo modello è molto più debole ; non esiste in realtà alcun accoppiamento tra i passaggi 2 e 3. Ci sono un milione di siti web che consentono si invia un SMS e si imposta il numero di from:
desiderato, quindi fintanto che l'utente malintenzionato conosce il numero SMS del server, può falsificare il "ciao" dal proprio numero anche se non è in grado di leggere gli SMS in arrivo.
Risposta all'SMS con un codice
Modello di sicurezza: per consentire a un utente malintenzionato di falsificare la proprietà del tuo numero di telefono, è necessario:
- Avvia il flusso di onboarding del sito web, fornendo i tuoi dati.
- Ricevi un SMS dal server che contiene un codice.
- Rispondi al numero SMS del server con questo codice.
Bene, abbiamo risolto il problema di aggancio e richiesto che l'utente malintenzionato fosse in grado di leggere gli SMS in arrivo. Come notato sopra, l'invio di messaggi che sembrano provenire da te è banale, quindi penso che questo modello di sicurezza sia equivalente a quello tradizionale di "digita il codice SMS nel sito web".
Tuttavia ti imbatterai in problemi di usabilità in quanto digitando correttamente un codice nella tastiera del tuo telefono è molto più fastidioso che digitarlo sul tuo computer, quindi non sono sicuro di ottenere nulla qui.
Riepilogo (come sopra)
Is there anything inherently more secure about having users enter a 4/8 digit code online vs. sending a code or simple message from their device?
Mentre l'SMS nel suo complesso rappresenta un debole metodo 2FA (vedi l'articolo sopra di The Verge), almeno il primo richiede che l'hacker esegua un po 'di hacking sulla rete globale delle telecomunicazioni. Quest'ultimo viene banalmente rotto da chiunque conosca i servizi online per l'invio di un SMS con qualsiasi from:
numero.