Su questo blog si sente spesso parlare di DEP e ASLR, ma avete mai pensato a come entrano in gioco per aumentare la sicurezza dei vostri PC, e come migliorarne le funzionalità?
Innanzitutto è importante evidenziare la prima differenza tra le due funzioni di protezione: l’Address Space Layout Randomization può essere usato da quasi tutti i sistemi operativi esistenti, mentre il Data Execution Prevention è una prerogativa dei sistemi Windows, da XP SP2 in poi.
Come dice il nome stesso, l’ASLR si occupa di allocare in memoria, in modo casuale, le librerie usate dai processi attivi, e di nascondere gli indirizzi dello stack o dell’heap: in questo modo si complica il lavoro di un potenziale attaccante, che dovrà innanzitutto trovare la locazione del suo target.
Conti alla mano, più aumentano i bit d’indirizzamento usati dai processori e più il sistema è efficace: per tale motivo il passaggio da 32 a 64 bit ha portato notevoli vantaggi.
Anche nel caso del DEP la sigla è auto esplicativa, poiché tale funzione si occupa di rendere non eseguibile una determinata locazione di memoria, così da bloccare sul nascere famosi attacchi come quelli di buffer overflow.
Del DEP esistono due versioni differenti: quella hardware è utilizzabile solo sulle CPU più recenti, ed è ovviamente la più sicura; quella software, invece, può essere utilizzata quasi su tutte le CPU, ma si limita alla protezione dei file di sistema.
È possibile forzare il sistema operativo a usare un determinato tipo di comportamento modificando manualmente il file boot.ini, aggiungendo la stringa /noexecute=<config>, dove <config> può assumere quattro valori distinti, così come riportato nella pagina ufficiale della Microsoft.
Quest’articolo, per forza di cose, ha trattato gli argomenti in modo rapido e con il solo scopo di far comprendere al maggior numero di persone questi concetti: se siete interessati commentate pure, potremo e approfondiremo l’argomento in dei post futuri.