He estado escuchando esta palabra todo el día. ¿Alguien me puede dar una breve introducción? ¿En qué se diferencia de ASLR?
HiASLR es un término que representa el ASLR mejorado en Windows 8. La parte "hi" se refiere a la mejora en la entropía generada por el aumento en el número de bits aleatorios que la pila y el montón pueden compensar. Microsoft también incluyó la asignación al azar a varios montones del sistema, tablas del sistema, etc. para hacer posible la utilización de un sled NOP o la filtración de información. Más difícil.
La siguiente tabla está tomada de Ken Johnson y Matt Miller "explotan las mejoras de mitigación en Win8 " hable en 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.
Tenga en cuenta que la columna final representa H igh E ntropy, que es el nombre oficial de HiASLR.