Исполняемые файлы против общих объектов

У меня такая же проблема. Об этом сообщается, вы можете следить за ним:

https://bugs.launchpad.net/ubuntu/+source/indicator-power/+bug/1234458

1
задан 27 October 2015 в 18:53

1 ответ

Другое отличие состоит в том, что исполняемые файлы имеют определенное смещение адреса точки входа, то есть 0x08048000 для i386, 0x00400000 для x86 и 0x00010000 для руки.

Общий файл объекта может быть библиотекой, но также исполняемым файлом , Когда вы выполняете исполняемый файл, такого смещения нет. A исполняемые файлы , так сказать, является независимым от позиции исполняемым файлом (PIE), использующим рандомизацию размещения адресного пространства (ASLR). Таким образом, при просмотре файла / proc / pid / maps вы заметите, что расположение загруженных сегментов зависит от каждого исполнения в отличие от стандартных исполняемых файлов.

Идея этой функции заключается в добавлении безопасности к исполняемым файлам, препятствуя атакам на выполнение обратных программных атак. Многие разработчики решили создавать пакеты с включенным PIE как по умолчанию, например, с Fedora 23 или с Ubuntu 17.10.

2
ответ дан 23 May 2018 в 16:19
  • 1
    Интересный ответ. Не хватает нескольких источников (было бы неплохо, если бы вы добавили несколько ссылок, особенно для части точки входа), но я искал несколько вопросов о stackoverflow об этом. Но определенно хороший ответ. – Sergiy Kolodyazhnyy 28 September 2017 в 20:46

Другие вопросы по тегам:

Похожие вопросы: