ASLR (Address Space Layout Randomization)

ASLR (Address Space Layout Randomization) – технология, которая применяется в операционных системах и повышает уровень безопасности систем. Технология ASLR позволяет размещать системные компоненты в разных областях памяти при каждом запуске операционной системы.
Задача этой технологии – внесение случайности в распределение адресов оперативной памяти, используемых приложением. Использование ASLR изменяет расположение в адресном пространстве таких важных структур как образ исполняемого файла, подгружаемых библиотек, кучи и прочего.
Использование ASLR приводит к тому, что целый класс атак (к примеру, переполнение буфера, возврат в библиотеку (return-to-libc)) заканчивается неудачей. Помимо этого технология позволяет обнаруживать подобные атаки, так как в результате неудачных попыток исполнение атакуемого приложения прекращается.