Sta generando un token univoco sufficiente per l'autenticazione?

0

Stiamo costruendo un dispositivo fisico. Questo dispositivo deve comunicare con un server remoto. A tal fine, il dispositivo invia per prima cosa una richiesta HTTP (protetta da SSL) per "registrare" il dispositivo con il server, che risponde con un token di stringa unico e lungo generato da un generatore di numeri pseudocasuali crittograficamente sicuro (CSPRNG), che a sua volta è associato a quel dispositivo. Il token viene ritrasferito al dispositivo tramite una connessione SSL. Il dispositivo include quindi questo token insieme ad altre caratteristiche identificative (come un indirizzo MAC e un indirizzo IP) tramite una connessione SSL quando si inviano richieste.

È sufficiente a determinare che il dispositivo di comunicazione è chi dice di essere? Poiché tutte le richieste passano attraverso una connessione SSL, un hacker non sarebbe in grado di rubare facilmente il token, corretto? Un hacker dovrebbe acquisire il dispositivo fisico per estrarre il token, ma ogni dispositivo ha un token univoco, quindi il furto non influisce sulla funzionalità di altri dispositivi nel sistema.

    
posta arao6 21.05.2017 - 21:48
fonte

1 risposta

1

Se questa soluzione è appropriata dipende da un paio di fattori. Come sottolineato nei commenti, la sfida con la soluzione descritta è che supponendo che un utente malintenzionato possa raggiungere l'endpoint del servizio, è possibile completare la procedura di registrazione e ottenere token validi per l'uso.

  • Il servizio accetta la registrazione da qualsiasi indirizzo MAC o solo quelli che conosci appartengono a dispositivi validi? Se l'intervallo accettato è limitato, potrebbe essere più difficile per un utente malintenzionato scoprire un indirizzo valido per effettuare la richiesta?
  • Il tuo servizio avrà contromisure contro gli attacchi di forza bruta? Supponendo che l'utente malintenzionato possa ottenere l'OUI per gli indirizzi MAC che stai utilizzando, potrebbero farlo circolare cercando di ottenere token validi. In questo scenario le protezioni a forza bruta potrebbero aiutare.
  • Quale asserzione di sicurezza stai cercando di usare questo token? Se stai solo accoppiando un utente con un dispositivo e poi utilizzandolo per impedire all'utente di accedere a più dispositivi, allora questo potrebbe funzionare in una certa misura, anche se c'è il rischio che l'utente possa copiare il token su un altro dispositivo e cambiare l'indirizzo MAC per abbinare l'originale.
risposta data 22.05.2017 - 14:32
fonte

Leggi altre domande sui tag