La tecnologia nota come Address Space Layout Randomization (ASLR) è implementata da oltre un decennio come sistema i protezione “base” contro i tentativi di attacco di tipo buffer overflow, ma i ricercatori della Vrije Universiteit di Amsterdam hanno scovato un nuovo metodo che sarebbe teoricamente in grado di neutralizzare il layer protettivo offerto da ASLR – per di più usando del “semplice” codice JavaScript da far girare in un browser qualsiasi.
Battezzata ASLR Cache o AnC in breve, la tecnica sfrutta quella che viene identificata come una limitazione fondamentale di ASLR nel modo in cui le moderne CPU gestiscono la memoria e la cache integrata. Sfruttando questa debolezza nell’hardware senza l’ausilio di elementi software, sostengono gli autori dello studio, è possibile bypassare l’azione di ASLR per conoscere l’indirizzo di memoria (teoricamente casuale) dove il processore ha caricato il codice da eseguire.
Il codice JavaScript di AnC sarebbe insomma in grado di “de-randomizzare” gli indirizzi di memoria durante la traduzione da indirizzi virtuali a fisici all’interno dell’unità di gestione della memoria (MMU) della CPU, un processo basato tutto sull’efficienza dell’esecuzione che non sarebbe possibile modificare – per provare a neutralizzare il nuovo attacco – senza conseguenze importanti sulle performance delle suddette CPU.
A mitigare parzialmente la portata del problema, i ricercatori hanno fin qui dovuto associare l’uso di AnC a un’ altra vulnerabilità presente all’interno di un browser bersaglio (Firefox, nella fattispecie) per compromettere totalmente la difesa di ASLR. A giustificare l’allarme sulla portata del rischio, invece, c’è il fatto che fra tutte le 22 microarchitetture di processore testate (Intel, AMD, ARM) nessuna è risultata immune dall’attacco.
Il codice di AnC è in fase di sviluppo e non è ancora pronto per il debutto pubblico come “nemico numero uno” del layer ASLR, spiegano i ricercatori; nondimeno, avvertono, ora che l’esistenza di una così grave vulnerabilità è nota non ci si può più fidare di ASLR come di una “linea di difesa primaria” contro gli attacchi basati sugli errori di memoria.
Alfonso Maruccia