it.phhsnews.com


it.phhsnews.com / Che cos'è ASLR e come protegge il computer?

Che cos'è ASLR e come protegge il computer?


La Randomizzazione dello spazio degli indirizzi (ASLR) è una tecnica di sicurezza utilizzata nei sistemi operativi, implementata per la prima volta nel 2001. Le versioni correnti di tutti i principali sistemi operativi (iOS, Android, Windows, macOS e Linux) sono dotati di protezione ASLR. Ma nella settimana scorsa è stato trovato un nuovo metodo per aggirare l'ASLR. Quindi, dovresti essere preoccupato?

Per coloro che non hanno un background di programmazione di basso livello, ASLR può essere fonte di confusione. Per capirlo, devi prima capire la memoria virtuale.

Cos'è la memoria virtuale?

La memoria virtuale è una tecnica di gestione della memoria con molti vantaggi, ma è stata creata principalmente per semplificare la programmazione. Immagina di avere Google Chrome, Microsoft Word e molti altri programmi aperti su un computer con 4 GB di RAM. Nel complesso, i programmi su questo computer utilizzano molto più di 4 GB di RAM. Tuttavia, non tutti i programmi saranno sempre attivi o necessitano dell'accesso simultaneo a tale RAM.

Il sistema operativo assegna blocchi di memoria ai programmi denominati pagine . Se non c'è abbastanza RAM per archiviare tutte le pagine contemporaneamente, le pagine meno probabili saranno memorizzate nel disco rigido più lento (ma più spazioso). Quando sono necessarie le pagine memorizzate, cambieranno spazi con meno pagine necessarie attualmente nella RAM. Questo processo è chiamato paginazione e presta il nome al file pagefile.sys su Windows.

La memoria virtuale semplifica la gestione della memoria da parte dei programmi e li rende anche più sicuri. I programmi non devono preoccuparsi di dove altri programmi stanno memorizzando i dati, o quanta RAM è rimasta. Possono solo chiedere al sistema operativo memoria aggiuntiva (o restituire memoria non utilizzata) secondo necessità. Tutto ciò che il programma vede è un singolo blocco continuo di indirizzi di memoria per il suo uso esclusivo, chiamato indirizzi virtuali. Il programma non è autorizzato a guardare la memoria di un altro programma.

Quando un programma ha bisogno di accedere alla memoria, fornisce al sistema operativo un indirizzo virtuale. Il sistema operativo contatta l'unità di gestione della memoria (MMU) della CPU. La MMU traduce tra indirizzi virtuali e fisici, restituendo tali informazioni al sistema operativo. Il programma non interagisce direttamente con la RAM.

Che cos'è ASLR?

La Randomizzazione dello spazio degli indirizzi (ASLR) è utilizzata principalmente per proteggere dagli attacchi di overflow del buffer. In un overflow del buffer, gli hacker alimentano una funzione quanti più dati spazzatura possono gestire, seguiti da un carico utile dannoso. Il payload sovrascriverà i dati a cui il programma intende accedere. Le istruzioni per passare a un altro punto nel codice sono un carico utile comune. Il famoso metodo JailbreakMe per il jailbreak di iOS 4, ad esempio, ha utilizzato un attacco di overflow del buffer, suggerendo ad Apple di aggiungere ASLR a iOS 4.3.

I buffer overflow richiedono a un utente malintenzionato di sapere dove si trova ogni parte del programma in memoria. Capirlo è solitamente un processo difficile di tentativi ed errori. Dopo averlo determinato, devono creare un carico utile e trovare un posto adatto per iniettarlo. Se l'attaccante non sa dove si trova il suo codice obiettivo, può essere difficile o impossibile sfruttarlo.

ASLR lavora insieme alla gestione della memoria virtuale per randomizzare le posizioni di diverse parti del programma in memoria. Ogni volta che si esegue il programma, i componenti (incluso lo stack, l'heap e le librerie) vengono spostati in un indirizzo diverso nella memoria virtuale. Gli attaccanti non possono più sapere dove si trova il loro obiettivo attraverso tentativi ed errori, perché l'indirizzo sarà diverso ogni volta. Generalmente, le applicazioni devono essere compilate con il supporto ASLR, ma questo sta diventando di default ed è richiesto anche su Android 5.0 e versioni successive.

Così ASLR ti protegge ancora?

Martedì scorso, i ricercatori di SUNY Binghamton e University della California, Riverside, ha presentato un documento intitolato Jump Over ASLR: Attaccare i predittori di ramo per bypassare ASLR. La carta descrive in dettaglio come attaccare il Branch Target Buffer (BTB). Il BTB fa parte del processore che accelera se le affermazioni prevedono il risultato. Utilizzando il metodo degli autori, è possibile determinare le posizioni delle istruzioni di ramo conosciute in un programma in esecuzione. L'attacco in questione è stato eseguito su una macchina Linux con un processore Intel Haswell (rilasciato per la prima volta nel 2013), ma potrebbe probabilmente essere applicato a qualsiasi sistema operativo e processore moderni.

Detto questo, non dovresti necessariamente disperare. Il documento ha offerto alcuni modi in cui gli sviluppatori di hardware e sistema operativo possono mitigare questa minaccia. Le tecniche ASLR più recenti e a grana fine richiederebbero un maggiore sforzo da parte dell'attaccante, e l'aumento della quantità di entropia (casualità) può rendere l'attacco Jump Over non fattibile. Molto probabilmente, i nuovi sistemi operativi e processori saranno immuni da questo attacco.

Quindi cosa è rimasto da fare per? Il bypass Jump Over è nuovo e non è ancora stato individuato in natura. Quando gli aggressori lo sfruttano, il difetto aumenta il danno potenziale che un utente malintenzionato può causare sul tuo dispositivo. Questo livello di accesso non è senza precedenti; Microsoft e Apple hanno implementato solo ASLR nei loro sistemi operativi pubblicati nel 2007 e successivi. Anche se questo tipo di attacco diventa un luogo comune, non ti sentirai in condizioni peggiori di quanto non lo fossi al tempo di Windows XP.

Ricorda che gli hacker devono ancora ottenere il loro codice sul dispositivo per fare del male. Questo difetto non fornisce loro ulteriori modi per infettarti. Come sempre, dovresti seguire le migliori pratiche di sicurezza. Usa l'antivirus, stai lontano dai siti Web e dai programmi abbozzati e mantieni aggiornato il tuo software. Seguendo questi passaggi e mantenendo gli attori malvagi dal tuo computer, sarai al sicuro come non mai.

Image Credit: Steve / Flickr


10 migliori programmi per sostituire il blocco note

10 migliori programmi per sostituire il blocco note

Notepad è uno dei miei programmi preferiti in Windows ed è per questo motivo che Microsoft lo ha sempre incluso in tutte le versioni di Windows spedite da Windows 1.0, ovvero quasi 30 anni fa. Non solo ha una lunga storia, ma ha anche mantenuto la sua interfaccia pulita e semplice. Blocco note è un semplice editor di testo che può essere utile quando non hai bisogno di alcuna formattazione del testo per il tuo documento.Tut

(How-to)

Come fermare l'avvio di iPhoto quando si collega un iPhone, iPad o scheda di memoria

Come fermare l'avvio di iPhoto quando si collega un iPhone, iPad o scheda di memoria

Dopo il passaggio a OS X, c'era un grosso fastidio che continuava ad accadere ripetutamente - ogni volta che collegare qualsiasi cosa nel mio MacBook e capita di avere una cartella DCIM sul file system, iPhoto si avvierà immediatamente e inizierà la scansione. CORRELATO: Perché ogni fotocamera mette le foto in una cartella DCIM?

(how-to)