Sicurezza del servizio di deposito per il portachiavi iCloud
iCloud fornisce un’infrastruttura sicura per il deposito del portachiavi che aiuta a garantire che solo gli utenti e i dispositivi autorizzati possano effettuare un recupero. Dietro iCloud, vi sono i cluster HSM (moduli di sicurezza hardware) che proteggono i record depositati. Come descritto in precedenza, ciascuno dispone di una chiave utilizzata per codificare i record di propria competenza.
Per recuperare un portachiavi, l’utente deve autenticarsi con l’account e la password di iCloud e rispondere al messaggio SMS inviato al numero di telefono registrato. Fatto questo, l’utente deve inserire il proprio codice di sicurezza iCloud. Il cluster HSM verifica che l’utente conosca il proprio codice di sicurezza iCloud utilizzando il protocollo Secure Remote Password (SRP); il codice non viene inviato ad Apple. Ogni membro del cluster verifica in modo indipendente che l’utente non abbia superato il numero massimo di tentativi consentiti per recuperare il proprio record, come spiegato in seguito. Se la maggioranza concorda, il cluster decifra il record depositato e lo invia al dispositivo dell’utente.
A questo punto il dispositivo utilizza i dati depositati per decifrare le chiavi casuali usate per codificare il portachiavi dell’utente. Con queste chiavi, il portachiavi, recuperato da CloudKit e dall’archivio chiave-valore dell’utente su iCloud, viene decrittografato e ripristinato sul dispositivo. Il servizio di deposito consente soltanto 10 tentativi di autenticazione per recuperare il record depositato. Dopo una serie di tentativi non riusciti, il record viene bloccato e l’utente deve contattare il Supporto Apple per poter effettuare ulteriori tentativi. Dopo il decimo tentativo non riuscito, il cluster HSM distrugge il record depositato e il portachiavi è perduto per sempre. Si tratta di una protezione contro gli attacchi di forza bruta volti a recuperare il record: in questo modo, i dati sono tutelati anche a costo di sacrificare il portachiavi.
Queste politiche sono codificate nel firmware HSM. Le schede di accesso amministrativo che permettono di modificare il firmware sono state distrutte. Qualsiasi tentativo di alterare il firmware o di accedere alla chiave privata causa l’eliminazione della chiave privata da parte del cluster HSM. Se ciò dovesse verificarsi, il proprietario di ciascun portachiavi custodito dal cluster riceve un messaggio che lo informa che il record depositato è andato perduto; potrà quindi scegliere di registrarsi nuovamente.