Обход ASLR
Наиболее важная атака на ASLR формируется за счет раскрытия информации о памяти. В этом случае взломщик использует уязвимость не для непосредственного получения контроля над программой, а для организации утечки информации о распределении памяти, которой затем можно воспользоваться для использования другой уязвимости.
В качестве простого примера рассмотрим следующий код:1. void C() {
2. int index;
3. int prime [16] = { 1,2,3,5,7,11,13,17,19,23,29,31,37,41,43,47 };
4. printf ("Какое простое число из показанных здесь вы хотели бы видеть?");
5. index = read user input ();
6. printf ("На позиции %d находится простое число %d\n", index,
prime[index]);
В коде содержится вызов чтения пользовательского ввода, где это чтение не является частью стандартной библиотеки языка C. Мы просто предполагаем, что эта функция чтения существует и возвращает целочисленное значение, набранное пользователем в командной строке. Мы также предполагаем, что в ней нет ошибок. Но даже при этом из данного кода довольно просто организовать утечку информации. Нужно лишь предоставить индекс больше, чем 15, или меньше, чем 0. Поскольку программа индекс не проверяет, она с готовностью вернет значение любого целого числа из памяти.
Для успешной атаки зачастую вполне достаточно адреса одной функции. Причина в том, что хотя место, куда загружается каждая библиотека, может быть выбрано произвольно, относительное смещение для каждой отдельной функции от этой позиции имеет, как правило, фиксированное значение. Иначе говоря, узнав, где находится одна функция, вы узнаете, где находятся все остальные. Даже если это не так, то при наличии всего лишь одного адреса кода зачастую довольно просто отыскать многие другие адреса, что и показано в работе Snow et al. (2013).
Еще по теме Обход ASLR:
- Почему надо обходиться без "надо"
- РЕВ
- ИДЕНТИФИКАЦИЯ НАРЦИССИЧЕСКАЯ
- Ретроградный Юпитер в знаке Весов
- Помоги нам, Господи?
- ОЧЕРК ОДИННАДЦАТЫЙ ЭКОНОМИКА И ЭКОНОМИСТЫ
- Шаг пятый: последний секрет
- Управитель Солнце.
- Ретроградный Марс в знаке Рыб
- В знаке Весов
- ОЧЕРК ДЕСЯТЫЙ СОЦИОЛОГИЯ И ЮМОР
- Закон посоха.