Уязвимость в процессорах Intel позволяет обойти ASLR

Уязвимость в процессорах Intel позволяет обойти ASLR

Атака заключается в инициировании коллизий в буфере адресов перехода.

Группа исследователей Калифорнийского университета в Риверсайде и Университета штата Нью-Йорк в Бингемптоне обнаружили уязвимость в компоненте центрального процессора, позволяющую злоумышленникам получить доступ к компьютеру и хранящейся на нем информации. Проблема затрагивает модуль предсказания переходов в процессорах Intel Haswell и позволяет обойти механизм безопасности ASLR.

ASLR (Address Space Layout Randomization – «рандомизация размещения адресного пространства») представляет собой технологию, применяемую в большинстве операционных систем и программ для защиты от таких распространенных типов атак, как переполнение буфера и возвратно-ориентированное программирование. ASLR случайным образом изменяет расположение в адресном пространстве процесса ключевых структур (образа файла, стека, подгружаемых библиотек). Благодаря этому атакующему сложнее определить расположение адреса полезной нагрузки в памяти.

По словам исследователей, атака заключается в инициировании коллизий в буфере адресов перехода (Branch Target Buffer, BTB), используемом в процессоре для предсказания переходов и хранения таблицы истории переходов. Злоумышленник может циклично формировать обращения к различным адресам памяти, тем самым создавая коллизии с командами перехода в атакуемом процессе. Далее оценивается время реагирования. Если в некоторых случаях время отклика существенно увеличилось, значит, возникла коллизия. Из этого можно сделать вывод, что адрес уже отражен другим процессом в BTB. Таким образом атакующий может восстановить значение случайного смещения и определить адреса команд перехода.

Исследователям удалось успешно осуществить атаку на последней версии Ubuntu Linux. Тем не менее, метод также работает для Windows и OS X.

Где кванты и ИИ становятся искусством?

На перекрестке науки и фантазии — наш канал

Подписаться