Apple: il PACMAN attack e i timori sulla sicurezza dei chip M1. Mentre i fan di Apple possono esultare in seguito alle novità presentate dalla big tech di Cupertino al recente WWDC, dove spicca il nuovo chip Silicon M2, sul fronte della sicurezza informatica inquietano i risultati del lavoro svolto da un gruppo di ricercatori del MIT, pubblicati nel paper PACMAN: Attacking Arm Pointer Authentication with Speculative Execution. Lo studio evidenzia una possibile falla non risolvibile in un componente fondamentale per la sicurezza dell’hardware.
I proprietari di dispositivi Apple con chip M1 devono effettivamente preoccuparsi? Tale minaccia sarà presente anche in M2? Proviamo a vedere cosa è successo per dare una risposta almeno indicativa a questi due fondamentali quesiti.
Il MIT scopre una vulnerabilità non risolvibile del chip M1
Lo scorso venerdì 10 giugno, i ricercatori del MIT CSAIL hanno pubblicamente comunicato di aver individuato una vulnerabilità hardware che potrebbe essere sfruttata per disabilitare le misure di difesa contro gli attacchi alla memoria, riportando i dettagli per esteso nel paper: PACMAN: Attacking Arm Pointer Authentication with Speculative Execution.
La notizia è stata riportata da The Register e Techcrunch, rimbalzando nel giro di poche ore su tutti i media tech e su diverse testate generaliste. Trattandosi di una questione squisitamente tecnologica e confinata nell’ambito della ricerca, anziché essere la conseguenza di un vero attacco cyber, non si è generato alcun panico, ma i contenuti dello studio sono assolutamente degni di attenzione almeno da parte degli addetti ai lavori.
Secondo quanto riportato da The Register, che ha chiesto chiarimenti a Joseph Ravichandran, uno dei tre firmatari del paper, il principale indiziato di questa vulnerabilità sarebbe il pointer authentication chip (PAC) di M1, un meccanismo di sicurezza finalizzato a prevenire gli attacchi alla memoria di sistema. Un pointer è una variabile che conserva l’indirizzo di memoria di un’altra variabile. Se viene manipolato, è possibile risalire ai dati presenti nella memoria stessa, oltre a poter eseguire del codice non autorizzato sul sistema violato.
La pointer authentication è stata introdotta per la prima volta nel 2017 in Arm v8.3 per proteggere l’integrità del pointer dei chip Arm-based di Apple, in commercio dal 2018. Si tratta di un sistema presente anche sulla più recente flotta Apple Silicon che comprende M1, M1 Pro e M1 Max, oltre ad essere impiegato anche da altri brand che sviluppano chip su base Arm, come Qualcomm e Samsung.
Ravichandran e i suoi colleghi del MIT CSAIL sono riusciti a bypassare il sistema di protezione PAC (Pointer Authentication Code) che in condizioni normali è in grado di causare un crash a fronte del rilevamento di un tentativo di manomissione, impedendo di fatto all’attaccante di portare a termine il suo intento malevolo.
Eludendo il sistema di sicurezza basato sulla crittografia del PAC, i ricercatori sono riusciti a condurre un attacco brute-force senza mandare il crash il sistema, in soli tre minuti: “Il punto chiave – spiega Ravichandran – del nostro PACMAN attack consiste nell’esfiltrare i risultati della PAC verifcation attaverso alcuni canali dell’architettura del chip, senza che il sistema sia in grado di accorgersi di nulla”. In merito alle modalità con cui ciò avviene, il paper precisa dettagli più complessi, come la possibilità di utilizzare sequenze di istruzioni già presenti nella memoria per dare luogo ad altre funzioni, come una pointer verification usata per esfiltrare in maniera non sospetta il risultato citato da Ravichandan.
Il PACMAN Attack è pericoloso per utenti Mac con chip M1?
Il fatto che un sistema sia vulnerabile non equivale al fatto che possa essere automaticamente violato. Devono in generare verificarsi una serie di circostanze, fattore che rende possibile la protezione anche in maniera indiretta. Di norma, un attacco di questo genere viene condotto essenzialmente caricando un’estensione kernel personalizzata in grado di generare un bug software nel kernel stesso e aggiungere un gadget.
Per raggiungere questo risultato, sfruttando una vulnerabilità rilevata in M1, i ricercatori del MIT non avrebbero avuto bisogno di utilizzare alcuna kernel extension. L’avrebbero utilizzata in seguito per dimostrare le modalità con cui sono riusciti a portare a segno il loro attacco, mediante una vera e propria demo.
In ogni caso la situazione, se pur potenzialmente critica, all’atto pratico non dovrebbe costituire dei rischi imminenti, come lo stesso Ravichandran ha precisato: “Il PACMAN attack bypassa il pointer authentication, che corrisponde all’ultima barriera per guadagnare la possibilità di eseguire arbitrariamente un codice, ma per portarlo a segno è necessario che vi sia una vulnerabilità a livello software. Un’esecuzione arbitraria di codice a livello del kernel ti concede l’accesso incondizionato al dispositivo, per cui qualsiasi attaccante diventa in grado di fare ciò che vuole, come se avesse acquisto l’accesso alla root. Per essere in grado di portare a segno PACMAN attack è necessario sfruttare una vulnerabilità a livello di sicurezza del software, in modo da poter utilizzare un gadget, uno snippet del codice presente sul sistema vittima, che viene utilizzato per eseguire l’attacco stesso”.
In buona sostanza, utilizzando un sistema operativo ed applicazioni con i più recenti aggiornamenti in materia di sicurezza, al momento non sussisterebbero particolari rischi. Aver reso nota la vulnerabilità consentirà ovviamente agli attaccanti di provarci, ma al tempo stesso Apple potrà giocare d’anticipo, senza farsi cogliere di sorpresa.
La reazione di Apple e i dubbi su M2
In un primo momento, Apple ha rifiutato di commentare il paper pubblicato dal team di lavoro di MIT CSAIL, che aveva anticipato, con largo anticipo, tutti i dettagli della ricerca agli sviluppatori di Cupertino. Quando la questione è diventata di dominio pubblico, l’azienda, attraverso un breve comunicato ha dichiarato: “Desideriamo ringraziare i ricercatori per la loro collaborazione, in quanto il proof of concept consente di aumentare la nostra comprensione riguardo queste tecniche. A seguito di una nostra accurata analisi, così come emerge dai dettagli condivisi dai ricercatori, abbiamo concluso che al momento non sussista una condizione di rischio immediato per i nostri utenti, in quanto il problema rilevato a livello hardware non consente di bypassare i sistemi di protezione del sistema operativo”.
In termini non tecnici, Apple ha sostanzialmente ribadito l’esigenza di aggiornare costantemente il software, in modo che non si verifichi una condizione che consentirebbe agli attaccanti di sfruttare la sottostante vulnerabilità a livello hardware, nei confronti della quale al momento non ci sarebbe soluzione di rimedio o mitigazione. È altrimenti plausibile che per quanto riguarda le prossime versioni di M1 Apple cerchi una soluzione per risolvere nativamente il problema. Su tale aspetto tuttavia vige il massimo riserbo.
Quella rilevata dal team del MIT non equivale in ogni caso alla prima vulnerabilità non risolvibile scoperta riguardo il chip Apple M1. Nel corso del 2021, Hector Martin, fondatore di Asahi Linux, aveva notificato una falla denominata M1RACLES, che non ha avuto particolari ripercussioni, in quanto non in grado di causare eccessivi problemi, mentre aveva al tempo stesso preferito mantenere riservata un’altra CVE (Common Vulnerabilities and Exposure), sempre relativa a M1, i cui dettagli sarebbero stati condivisi solamente con Apple. Non è dato al momento sapere se si tratti della stessa vulnerabilità in seguito scoperta dal MIT.
Ravichandan ha inoltre precisato come, a seguito di molte analisi, il suo team sia riuscito a identificare soltanto la vulnerabilità pubblicata: “Abbiamo lavorato sul chip M1 in quanto si tratta della prima CPU desktop dotata di pointer authentication. I risultati del nostro lavoro sono stati inviati ad Apple già lo scorso anno, ma sinceramente non sappiamo se abbiano provveduto o meno a mitigare questo aspetto”. Il paper stesso manifesta intenti propositivi anche in merito alla possibile mitigazione di PACMAN, con possibili interventi sulla gestione della memoria che, secondo le ammissioni dei ricercatori, potrebbe tuttavia comportare conseguenze a livello di performance.
Nel corso dell’evento WWDC 2022, Apple ha appena presentato la nuova lineup di dispositivi iPad e Mac basati sul nuovo chip M2, oltre al rinnovo dell’intera famiglia di sistemi operativi iOS e MacOS. Ad oggi non è dato sapere se anche la nuova versione sia afflitta dal medesimo problema del suo predecessore. Il team di MIT CSAIL ha dichiarato di non avere al momento a disposizione un chip M2 per poter effettuare i test già elaborati su M1: “Sulle stesse basi con cui abbiamo condotto la presente ricerca, riteniamo che anche le CPU Arm di prossima generazione, dotate di pointer authentication, possano essere allo stesso modo vulnerabili nei confronti di un PACMAN attack”.
Mentre è del tutto comprensibile la proverbiale riservatezza di Apple nei confronti delle proprie tecnologie, i risultati di una ricerca come quella condotta da MIT CSAIL rilevano ancora una volta come non esista architettura hardware / software che possa ritenersi nativamente al sicuro da possibili minacce di sicurezza informatica. Non sorprende infatti che, a prescindere dalle possibili conseguenze, un’architettura giovane come quella di Apple M1 possa essere interessata da possibili vulnerabilità.