Address Space Layout Randomization

Address Space Layout Randomization

Address space layout randomization (ASLR) — технология, применяемая в операционных системах, при использовании которой случайным образом изменяется расположение в адресном пространстве процесса важных структур, а именно: образа исполняемого файла, подгружаемых библиотек, кучи и стека.

Технология ASLR значительно усложняет успешную эксплуатацию нескольких типов уязвимостей. Например, даже если при помощи переполнения буфера или другим методом атакующий получит возможность передать управление по произвольному адресу, ему нужно будет угадать, где же именно расположен стек или куча или другие места в памяти в которые он может поместить шелл-код. Сходные проблемы возникнут и при атаке типа Возврат в библиотеку (return-to-libc), так как атакующий не знает адреса, по которому загружена библиотека. В данных примерах от нападающего скрыты конкретные адреса. Если ему не удастся угадать правильный адрес, приложение скорее всего аварийно завершится, тем самым лишив атакующего возможности повторной атаки и привлекая внимание системного администратора.

Содержание

Реализации

OpenBSD

Одна из ранних реализаций ASLR. Включено по умолчанию

Linux

С 2005 года (ядро 2.6.12) Линукс имеет простой вариант ASLR. Различные патчи безопасности (PaX, ExecShield, и др) реализуют более сложные и полные варианты ASLR. В дистрибутивах, содержащих в названии «Hardened», а также в современных версиях Ubuntu, сильные варианты включены по умолчанию.

Для случайного расположения в памяти образа исполняемого файла он должен быть скомпилирован в режиме Position-independent executable (вариант Позиционно-независимого кода для исполняемых файлов).

Microsoft Windows

Включено по умолчанию в Windows Vista (2007), Windows Server 2008, Windows 7, Windows Server 2008 R2. Отключается для приложений собранных сo специальными флагами и при работе в режиме совместимости с более ранними версиями Windows. При помощи набора средств от Майкрософта- EMET (Enhanced Mitigation Experience Toolkit) включается для любых выбранных приложений на Windows XP и Windows Server 2003.

Mac OS X

Некоторая случайность при загрузке библиотек добавлена в Mac OS X v10.5 (2007). В OS X Mountain Lion является частью ядра системы.


Ссылки


Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Полезное


Смотреть что такое "Address Space Layout Randomization" в других словарях:

  • Address space layout randomization — (ASLR) is a computer security technique which involves randomly arranging the positions of key data areas, usually including the base of the executable and position of libraries, heap, and stack, in a process s address space. Benefits Address… …   Wikipedia

  • Address Space Layout Randomization — L’Address Space Layout Randomization (ASLR) ou randomisation de l espace d adressage est une technique permettant de placer de façon aléatoire les zones de données dans la mémoire virtuelle. Il s agit en général de la position du tas, de la pile …   Wikipédia en Français

  • Address Space Layout Randomization — (ASLR, auf Deutsch in etwa Zufallsgestaltung des Adressraum Aufbaus) ist eine Technik, die die Ausnutzung von Sicherheitslücken in Computersystemen erschwert. ASLR vergibt den Programmen zufällig die Adressbereiche, somit ist das System praktisch …   Deutsch Wikipedia

  • Address space layout randomization — L’Address Space Layout Randomization (ASLR) ou distribution aléatoire de l espace d adressage est une technique permettant de placer de façon aléatoire les zones de données dans la mémoire virtuelle. Il s agit en général de la position du tas, de …   Wikipédia en Français

  • Executable space protection — In computer security, executable space protection is the marking of memory regions as non executable, such that an attempt to execute machine code in these regions will cause an exception. It makes use of hardware features such as the NX bit.The… …   Wikipedia

  • ASLR — Address space layout randomization L’Address Space Layout Randomization (ASLR) ou randomisation de l espace d adressage est une technique permettant de placer de façon aléatoire les zones de données dans la mémoire virtuelle. Il s agit en général …   Wikipédia en Français

  • ASLR — Address Space Layout Randomization (ASLR) ist eine Technik, die die Ausnutzung von Sicherheitslücken in Computersystemen erschwert. ASLR vergibt den Programmen zufällig die Adressbereiche, somit ist das System praktisch nicht mehr deterministisch …   Deutsch Wikipedia

  • PaX — In computer security, PaX is a patch for the Linux kernel that implements least privilege protections for memory pages. The least privilege approach allows computer programs to do only what they have to do in order to be able to execute properly …   Wikipedia

  • Buffer overflow — In computer security and programming, a buffer overflow, or buffer overrun, is an anomalous condition where a process attempts to store data beyond the boundaries of a fixed length buffer. The result is that the extra data overwrites adjacent… …   Wikipedia

  • Mac OS X Lion — Mac OS X v10.7 Lion Part of the Mac OS X family …   Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»