Ho sentito questa parola per tutto il giorno. Qualcuno può darmi una breve introduzione? In cosa differisce da ASLR?
HiASLR è un termine che rappresenta l'ASLR migliorato in Windows 8. La parte "ciao" si riferisce al miglioramento nell'entropia generata dall'aumento del numero di bit casuali che lo stack e l'heap possono essere compensati da. Microsoft ha anche incluso la randomizzazione in vari heap di sistema, tabelle di sistema, ecc. Per rendere possibile l'utilizzo di una slitta NOP o di perdite di informazioni più difficile.
La seguente tabella è tratta da "Exploit Mitigation Improvements di Ken Johnson e Matt Miller in Win8 " parla a BlackHat USA 2012.
Entropy (in bits) | Windows 7 | Windows 8 |
per region | 32-bit | 64-bit | 32-bit | 64-bit | 64-bit HE |
-----------------------|--------+--------|--------+--------|-----------|
Bottom-up allocations* | 0 | 0 | 8 | 8 | 24 |
Stacks | 14 | 14 | 17 | 17 | 33 |
Heaps | 5 | 5 | 8 | 8 | 24 |
Top-down allocations* | 0 | 0 | 8 | 17 | 17 |
PEBs / TEBs | 4 | 4 | 8 | 17 | 17 |
EXE images | 8 | 8 | 8 | 17** | 17** |
DLL images | 8 | 8 | 8 | 19** | 19** |
Non-ASLR DLL images* | 0 | 0 | 8 | 8 | 24 |
* opt-in, either via flag in module or system option
** 64-bit DLLs based below 4GB get 14 bits, EXEs below 4GB get 8 bits.
Si noti che la colonna finale rappresenta H igh E ntropy, che è il nome ufficiale di HiASLR.