Alla conferenza WWDC dello scorso anno, Apple ha annunciato piani per deprecare le “estensioni del kernel” (KEXTs) di macOS e sostituirle con un nuovo meccanismo chiamato “estensioni di sistema”.”
Il primo passo verso questo annuncio è stato fatto con il rilascio di macOS Catalina (10.15.0) nel settembre 2019, quando le estensioni di sistema sono state introdotte insieme alle estensioni del kernel.
Il passo finale del piano di Apple entrerà in vigore nelle prossime settimane, con il prossimo rilascio di macOS Catalina 10.15.4.
Secondo Apple, a partire da macOS 10.15.4, l’uso delle estensioni del kernel attiverà una notifica all’utente che il software include un’API deprecata e chiederà all’utente di contattare lo sviluppatore per le alternative.
Qual è la differenza tra i due?
Sono entrambi estensioni del kernel ed estensioni di sistema allo stesso scopo. Permettono agli utenti di installare applicazioni che estendono le capacità native del sistema operativo macOS.
Le applicazioni installano estensioni del kernel/sistema che permettono loro di eseguire operazioni per le quali macOS non ha caratteristiche o funzioni native.
I software antivirus Mac, i firewall, i client VPN, i proxy DNS, i driver USB e altri, fanno tutti uso di estensioni del kernel.
La differenza tra questi due nuovi sistemi di estensione è che le vecchie estensioni del kernel eseguono il loro codice a livello del kernel macOS, mentre le nuove estensioni di sistema vengono eseguite in uno spazio utente più strettamente controllato.
Grande mossa per la sicurezza
“Dal punto di vista di Apple, questo è un grande passo verso il miglioramento della sicurezza di macOS”, ha detto a ZDNet Patrick Wardle, Principal Security Researcher di Jamf, e un noto esperto di sicurezza di macOS, in un’intervista questa settimana.
“Le estensioni del kernel di terze parti rappresentano un succoso vettore di attacco per gli attaccanti che prendono di mira macOS”, ha aggiunto. “Soprattutto se tu, come attaccante, puoi sfruttare un’estensione del kernel, o caricarne una tua (supponendo che sia firmata).”
E gli attacchi che coinvolgono KEXTs sono accaduti in passato.
“È davvero game over per macOS,” ha detto Wardle. “Molti meccanismi di sicurezza sono implementati/forzati nel kernel.”
Wardle dice che un attacco come questo non funzionerebbe con le estensioni di sistema, in quanto vengono eseguite in modalità utente.
“Poiché non vengono eseguite nel kernel, un exploit non ti dà più accesso in modalità kernel come ha fatto con un exploit KEXT,” ha detto Wardle.
“Quindi Apple vuole fondamentalmente buttare fuori tutti, soprattutto per motivi di sicurezza.”
Potenziali lati negativi
Tuttavia, Wardle dice che c’è anche un lato negativo in questa mossa.
Il primo è che cacciando gli sviluppatori di app fuori dal kernel, Apple guadagna anche molto più controllo su macOS, simile al controllo che hanno su iOS.
Fino ad ora, macOS è stato un paradiso per gli sviluppatori e i suoi utenti. Se macOS non aveva una caratteristica specifica, gli sviluppatori potevano semplicemente creare un’applicazione e sfruttare un’estensione del kernel per aggiungere le caratteristiche di cui avevano bisogno.
Il secondo aspetto negativo è che molti strumenti di sicurezza stessi, si sono pesantemente basati e sono stati costruiti intorno all’accesso completo delle estensioni del kernel forniscono al Mac di un utente. Si potrebbe sostenere che la mossa di Apple verso le estensioni di sistema potrebbe finire per neutralizzare i prodotti di sicurezza, che perderanno parte della loro capacità di rilevare e fermare il malware lungo la strada.
Tuttavia, Wardle, che è l’autore di molti strumenti di sicurezza gratuiti per macOS, dice che Apple ha fornito “alcuni grandi framework in modalità utente che forniscono agli strumenti di sicurezza di terze parti le capacità di cui hanno bisogno”, quindi sembra che Apple non si sia ancora tagliata il ramo da sotto i piedi.
Ma per il momento, non è chiaro se le estensioni di sistema possano fornire la stessa versatilità e libertà di codifica delle estensioni del kernel. Questo resta da vedere – e un argomento per un altro articolo – poiché avremo bisogno di più tempo per gli sviluppatori di macOS per fare lentamente il passaggio alle estensioni di sistema andando avanti.
Tuttavia, Wardle sottolinea che la mossa è una buona mossa per la sicurezza di macOS, nel complesso, a prescindere da altre possibili ragioni per la mossa di Apple.