Sicurezza del sistema in watchOS
Apple Watch utilizza molte delle stesse funzionalità di sicurezza della piattaforma basate sull’hardware presenti in iOS. Ad esempio, Apple Watch:
Implementa l’avvio protetto e gli aggiornamenti software sicuri.
Protegge l’integrità del sistema operativo.
Aiuta a proteggere i dati sia sul dispositivo che durante la comunicazione con un iPhone abbinato o con internet.
Le tecnologie adottate includono quelle elencate in “Sicurezza del sistema” (come ad esempio la protezione dell’integrità del kernel, la protezione SKP e la protezione dell’integrità dei coprocessori di sistema), nonché la protezione dei dati, il portachiavi e tecnologie di rete.
Aggiornamento di watchOS
È possibile configurare watchOS affinché esegua l’aggiornamento durante la notte. Per ulteriori informazioni sul modo in cui il codice di Apple Watch viene archiviato e utilizzato durante l’aggiornamento, consulta la sezione dedicata alle keybag.
Rilevamento del polso
Se il rilevamento del polso è abilitato, il dispositivo si blocca automaticamente poco dopo essere stato rimosso dal polso dell’utente. Se il rilevamento del polso è disabilitato, Centro di Controllo fornisce un’opzione per bloccare Apple Watch. Quando Apple Watch è bloccato, Apple Pay può essere utilizzato solo inserendo il codice sull’orologio stesso. Il rilevamento del polso si disattiva dall’app Watch su iPhone e può essere applicato tramite una soluzione MDM.
Blocco attivazione
Quando Dov’è è attivato su iPhone, l’Apple Watch abbinato può utilizzare il blocco attivazione. Il blocco attivazione rende più difficile l’utilizzo o la vendita di un Apple Watch smarrito o rubato. Il blocco attivazione richiede l’ID Apple e la password dell’utente per annullare l’abbinamento, inizializzare o riattivare Apple Watch.
Abbinamento protetto con iPhone
Apple Watch può essere abbinato solo con un iPhone alla volta. Quando l’abbinamento ad Apple Watch viene annullato, iPhone comunica delle istruzioni per inizializzare tutti i contenuti e tutti i dati dall’orologio.
L’abbinamento di Apple Watch e iPhone è protetto utilizzando un processo OOB (out‑of‑band) per scambiare le chiavi pubbliche, seguito dal segreto condiviso del collegamento Bluetooth® Low Energy (BLE). Apple Watch mostra un motivo animato, che viene acquisito dalla fotocamera di iPhone. Tale motivo contiene un segreto codificato che consente l’abbinamento OOB per BLE 4.1. Se necessario, come metodo di abbinamento alternativo può essere usato un codice BLE standard.
Una volta stabilita la sessione BLE, codificata tramite il protocollo di sicurezza più alto disponibile nelle specifiche di base Bluetooth, iPhone e Apple Watch scaricano le chiavi tramite:
Una procedura basata sul servizio Apple Identity Service (IDS), come descritto in Panoramica sulla sicurezza di iMessage.
Uno scambio di chiavi tramite il protocollo IKEv2/IPsec. Lo scambio di chiavi iniziale è autenticato tramite la chiave di sessione Bluetooth (per l’abbinamento) o tramite le chiavi IDS (per l’aggiornamento del sistema operativo). Ciascun dispositivo genera una coppia di chiavi casuale (una chiave pubblica e una chiave privata) Ed25519 da 256 bit e, durante il processo di scambio iniziale, le chiavi pubbliche vengono scambiate. Quando un Apple Watch con watchOS 10 o versione successiva viene abbinato per la prima volta, la radice delle chiavi private si trova nel Secure Enclave.
Su un iPhone con iOS 17 o versione successiva, la radice delle chiavi private non si trova nel Secure Enclave, perché se un utente esegue il ripristino del backup di iCloud sullo stesso iPhone l’abbinamento all’Apple Watch esistente viene conservato senza richiedere la migrazione.
Nota: il meccanismo usato per lo scambio e la codifica delle chiavi può variare e dipende dalla versione del sistema operativo su iPhone e su Apple Watch. Gli iPhone con iOS 13 o versioni successive abbinati a Apple Watch con watchOS 6 o versioni successive utilizzano solo il protocollo IKEv2/IPsec per lo scambio e la codifica delle chiavi.
Una volta scambiate le chiavi:
La chiave della sessione Bluetooth viene scartata e tutte le comunicazioni tra iPhone e Apple Watch sono codificate tramite uno dei metodi descritti sopra (con i collegamenti codificati Bluetooth, Wi-Fi e cellulare che forniscono un livello di codifica secondario).
(Solo IKEv2/IPsec) Le chiavi vengono archiviate nel portachiavi di sistema e utilizzate per l’autenticazione di future sessioni IKEv2/IPsec tra i dispositivi. Le ulteriori comunicazioni tra i dispositivi vengono crittografate e la loro integrità viene protetta tramite AES-256-GCM su iPhone con iOS 15 o versioni successive abbinate ad Apple Watch Series 4 o modelli successivi con watchOS 8 o versioni successive. (Su dispositivi meno recenti con versioni di sistema operativo meno recenti viene utilizzato ChaCha20-Poly1305 con chiavi a 256 bit).
L’indirizzo Bluetooth Low Energy del dispositivo cambia a intervalli di 15 minuti per ridurre il rischio che il dispositivo venga tracciato localmente a causa della trasmissione di un identificativo persistente.
Per supportare le app che devono trasmettere dati, la codifica viene fornita tramite i metodi descritti in Sicurezza di FaceTime, mediante il servizio IDS dell’iPhone abbinato o mediante una connessione a internet diretta.
Apple Watch implementa una codifica hardware dell’archiviazione e una protezione dei file e degli elementi del portachiavi basata sulle classi, nonché keybag con controllo degli accessi per gli elementi del portachiavi. Anche le chiavi usate per le comunicazioni tra Apple Watch e iPhone sono tutelate dal sistema di protezione basato su classi. Per ulteriori informazioni, consulta Keybag per la protezione dei dati.
Sblocco automatico e Apple Watch
Per una maggiore praticità, durante l’utilizzo di più dispositivi Apple, alcuni dispositivi possono sbloccarne altri in determinate situazioni. Lo sblocco automatico supporta tre scenari di utilizzo:
Apple Watch può essere sbloccato da iPhone.
Il Mac può essere sbloccato da Apple Watch.
iPhone può essere sbloccato da Apple Watch se l’utente viene rilevato con il naso e la bocca coperti.
Tutti e tre i casi si basano sugli stessi principi di base: un protocollo Station-to-Station (STS) reciprocamente autenticato, con chiavi a lungo termine scambiate nel momento in cui la funzionalità viene abilitata e chiavi di sessione effimere uniche negoziate per ciascuna richiesta. A prescindere dal canale di comunicazione sottostante, il tunnel STS viene negoziato direttamente tra i chip Secure Enclave in entrambi i dispositivi e tutto il materiale crittografico viene mantenuto all’interno del dominio sicuro (a eccezione dei Mac senza Secure Enclave, in cui il tunnel STS termina nel kernel).
Sblocco
Una sequenza di sblocco completa può essere suddivisa in due fasi. Per iniziare, il dispositivo da sbloccare (chiamato “destinazione”) genera un apposito segreto crittografico e lo invia al dispositivo che esegue lo sblocco (chiamato “iniziatore”). Successivamente, l’iniziatore esegue lo sblocco utilizzando il segreto generato precedentemente.
Per consentire lo sblocco automatico, i dispositivi si connettono tramite una connessione Bluetooth Low Energy (BLE). Quindi un segreto per lo sblocco di 32 byte generato in modo casuale dal dispositivo di destinazione viene inviato all’iniziatore tramite il tunnel STS. Durante prossimo sblocco tramite sensore biometrico o tramite codice, il dispositivo di destinazione cifra la propria chiave derivata dal codice con il segreto per lo sblocco ed elimina tale segreto dalla propria memoria.
Per eseguire lo sblocco, i dispositivi avviano una nuova connessione BLE, quindi utilizzano la connessione Wi‑Fi peer-to-peer per stimare in maniera sicura la loro distanza reciproca. Se i dispositivi si trovano entro la distanza specificata e le politiche di sicurezza richieste sono soddisfatte, l’iniziatore invia il segreto per lo sblocco alla destinazione tramite il tunnel STS. La destinazione quindi genera un nuovo segreto per lo sblocco di 32 byte e lo restituisce all’iniziatore. Se il segreto attuale inviato dall’iniziatore decrittografa correttamente il record per lo sblocco, il dispositivo di destinazione viene sbloccato e la chiave derivata dal codice viene nuovamente cifrata con un nuovo segreto. Infine, il nuovo segreto per lo sblocco e la chiave derivata dal codice vengono eliminati dalla memoria del dispositivo di destinazione.
Politiche di sicurezza per lo sblocco automatico di Apple Watch
Per una maggiore praticità, Apple Watch può essere sbloccato da iPhone direttamente dopo l’avvio iniziale, senza che l’utente debba inserire il codice sull’Apple Watch stesso. Perché ciò sia possibile, il segreto casuale per lo sblocco (generato durante la primissima sequenza di sblocco, quando viene abilitata la funzionalità) viene usato per creare un record di escrow a lungo termine, che viene archiviato nella keybag di Apple Watch. Il segreto del record di escrow viene archiviato nel portachiavi di iPhone e viene usato per avviare una nuova sessione dopo ogni riavvio di Apple Watch.
Politiche di sicurezza per lo sblocco automatico di iPhone
Per lo sblocco automatico di iPhone tramite Apple Watch vengono implementate delle politiche di sicurezza aggiuntive. Apple Watch non può essere utilizzato al posto di Face ID su iPhone per altre operazioni, come l’acquisto con Apple Pay o le autorizzazioni nelle app. Quando Apple Watch sblocca correttamente un iPhone abbinato, l’orologio mostra una notifica e produce un feedback aptico associato. Se l’utente tocca il pulsante “Blocca iPhone” nella notifica, l’orologio invia ad iPhone un comando di blocco tramite BLE. Quando iPhone riceve tale comando, si blocca e disabilita sia Face ID che lo sblocco tramite Apple Watch. Il successivo sblocco di iPhone dovrà essere effettuato tramite il codice di iPhone.
Per poter sbloccare un iPhone abbinato da Apple Watch (quando l’opzione è abilitata), è necessario che siano soddisfatti i seguenti criteri:
iPhone deve essere stato sbloccato tramite un altro metodo almeno una volta dopo che l’Apple Watch associato è stato indossato al polso ed è stato sbloccato.
I sensori devono poter rilevare che il naso e la bocca sono coperti.
La distanza misurata deve essere 2-3 metri o meno.
Apple Watch non deve essere in modalità notturna.
Apple Watch o iPhone devono essere stati sbloccati recentemente oppure Apple Watch deve aver rilevato del movimento fisico che indica che l’utente che lo indossa è attivo (ad esempio, non sta dormendo).
iPhone deve essere stato sbloccato almeno una volta nelle ultime 6,5 ore.
iPhone deve essere in uno stato che consenta a Face ID di eseguire lo sblocco del dispositivo. (Per ulteriori informazioni, consulta Face ID, Touch ID, codici e password).
Approvazione in macOS con Apple Watch
Quando è abilitato lo sblocco automatico con Apple Watch, è possibile utilizzare Apple Watch insieme a Touch ID o al suo posto per approvare le richieste di autorizzazione e autenticazione di:
App di Apple e macOS che richiedono l’autorizzazione
App di terze parti che richiedono l’autenticazione
Password salvate di Safari
Note protette
Utilizzo sicuro di Wi-Fi, dati cellulare, iCloud e Gmail
Quando Apple Watch non si trova all’interno della copertura Bluetooth, può essere utilizzata la connessione Wi‑Fi o cellulare. Apple Watch si collega automaticamente alle reti Wi‑Fi alle quali l’iPhone abbinato si è già connesso e le cui credenziali sono state sincronizzate su Apple Watch mentre entrambi i dispositivi si trovavano nel raggio di copertura. Questo comportamento di connessione automatica può essere configurato rete per rete nella sezione Wi‑Fi dell’app Impostazioni di Apple Watch. È possibile accedere manualmente alle reti Wi‑Fi a cui non è mai stata effettuata una connessione da nessuno dei due dispositivi tramite la sezione Wi‑Fi dell’app Impostazioni di Apple Watch.
Quando Apple Watch e iPhone sono fuori distanza di copertura, Apple Watch si connette direttamente ai server di iCloud e di Gmail per scaricare la posta, piuttosto che sincronizzare i dati di Mail con l’iPhone abbinato tramite internet. Per gli account Gmail, l’utente deve eseguire l’autenticazione a Google nella sezione Mail dell’app Watch su iPhone. Il token OAuth ricevuto da Google viene inviato ad Apple Watch in formato codificato tramite IDS di Apple, in modo che possa essere utilizzato per scaricare la posta. Questo token OAuth non viene mai utilizzato per la connessione al server Gmail dall’iPhone abbinato.