• A proposito del DEP e dell'ASLR

    vulnerabilita.jpg

    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.

    Se vuoi aggiornamenti su A proposito del DEP e dell'ASLR inserisci la tua e-mail nel box qui sotto:


    Ho letto e acconsento l'informativa sulla privacy

    Si No

    Acconsento al trattamento dei dati personali di cui al punto 3 dell'informativa sulla privacy

    Si No

    Commenti

    1. Ricky dice:

      Perché il DEP è prerogativa solo dei sistemi Windows? So che l’ASLR è implementato malissimo in Linux. Quali sono i suoi problemi?

    2. Matteo dice:

      Attenzione: il DEP (come sigla) è prerogativa dei sistemi Windows, ma anche Mac OS X (in varie versioni, http://en.wikipedia.org/wiki/NX_bit#Mac_OS_X) supporta la tecnica, peraltro molto simile, del No eXecute.

    3. Matteo dice:

      Dimenticavo di risponderti riguardo l’ASLR e Linux…
      Effettivamente molte distribuzioni di Linux non implementano a dovere l’ASLR, anche se esistono diverse patch del kernel (o patchset) che risolvono abbastanza bene il problema.
      Spiegare approfonditamente la situazione in un commento è quasi impossibile, ma se hai dei dubbi sentiti libero di esprimerli :)

    4. bpz dice:

      ci terrei a sottolineare che il dep o cosidetto data execution prevention è prerogativa del processore, ed è lui che si occupa di marcare le pagine in memoria come di sola lettura e sola scrittura ecc ecc…il dep software (quello di win xp ) che è risultato vulnerabile e bypassabile dopo pochissimo è stato ormai soppiantato dal dep hw che deve essere supportato dal processore:
      INTEL= XD BIT
      AMD= NX BIT.

      riporto link per approfondimento:
      http://www.zdnet.com/blog/ou/guide-to-hardware-based-dep-protection/150
      maggior precisione conoscenza e approfondimento nello scrivere articoli aiuta gli altri ad apprendere.
      grazie.

    5. Matteo Ratini dice:

      bpz, accetto il commento ma non la critica finale: come ho scritto nell’articolo, e aggiunto successivamente nei commenti precedenti, per forza di cose ho dovuto limitare la trattazione alle sole informazioni di base.
      Inoltre, quello che hai detto te non aggiunge nulla, poichè ho già fornito le stesse informazioni: probabilmente, però, non hai nemmeno letto con attenzione l’articolo, e di conseguenza non te ne sei accorto.

    Commenta

    Your email address will not be published. Required fields are marked *