L'articolo di Wikipedia continua:
This places the stack base in an area 8 MB wide containing 524,288
possible positions; and the mmap base in an area 1 MB wide containing
256 possible positions.
Quest'ultimo è troppo piccolo per essere efficace e un utente malintenzionato deve solo sondare 256 indirizzi in un segmento per trovare il puntatore dell'indirizzo mmap()
.
Quello che l'articolo non menziona è l'uso limitato di ASLR in Linux. Tradizionalmente il kernel 2.6 usava ASLR solo per processi (di rete) in aree di memoria specifiche (quando compilato PIE) durante il caricamento di VDSO su un indirizzo fisso. Tale misura è efficace solo se tutti gli indirizzi sono randomizzati. I kernel più recenti hanno un supporto migliore per la randomizzazione degli indirizzi. Nota che varie versioni di Windows hanno la stessa identica cosa.