Randomizarea aspect spațiu de adrese (ASLR) ( „distribuirea aleatorie a spațiului de adrese“) este o tehnică pentru introducerea în mod aleatoriu zonele de date din memoria virtuală . Aceasta este de obicei poziția heap-ului , stivei și bibliotecilor . Această metodă face posibilă limitarea efectelor atacurilor de tip buffer overflow , de exemplu.
Constă în a face configurația proceselor „aleatorie”, prin plasarea diferitelor elemente de bază în locuri variabile.
Spre deosebire de celelalte, sistemele care utilizează ASLR configurează, prin urmare, procesele într-o manieră aleatorie, ceea ce limitează funcționarea atacurilor pe baza structurilor fixe, cunoscute și documentate ale proceselor.
Lucruri diferite pot fi randomizate : majoritatea sistemelor, de exemplu, definesc adrese stive sau stive.
Tehnica randomizării spațiului de adrese a fost utilizată de câțiva ani pe sisteme libere precum OpenBSD sau Linux . Implementarea Linux este acceptată în kernel de la versiunea 2.6.20 (Iunie 2005), deși poate fi dezactivat prin opțiune norandmaps. Există, de asemenea, implementări externe sub formă de patch-uri precum PaX .
Implementarea este acceptată nativ pe Windows de la Windows Vista (februarie 2007), sub Mac OS X ( parțial ) de la sistemul 10.5 (Leopard) (octombrie 2007) și sub iOS 4.3 .