Выявлен метод обхода защиты ASLR на процессорах Intel
Метод является разновидностью атак по сторонним каналам (side-channel attacks) и основан на косвенном определении адресов, на которые осуществляется переход в процессе ветвления в коде программы, через инициирование коллизий в буфере предсказания ветвлений (Branch Target Buffer, BTB), используемом в процессоре для предсказания переходов и хранения таблицы истории переходов.

Циклично формируя переходы по различным адресам памяти атакующий отслеживает возникновение коллизии хэша, используемого в качестве индекса при записи в таблицу BTB. Далее, подобная коллизия отслеживается в процессе с ASLR. В результате оценки времени срабатывания перехода, единичные факты существенного увеличения времени отклика воспринимаются как признак коллизии, что позволяет определить местоположение известных команд перехода в адресном пространстве ядра или другого пользовательского процесса, пользуясь тем, что команды перехода по разным виртуальным адресам в результате коллизии хэша могут быть сопоставлены с одной и той же записью в BTB, ссылающейся на один целевой адрес перехода.

Источник: http://www.opennet.ru/opennews/art.shtml?num=45350
|
0 | Tweet | Нравится |
|