[devel] PIE Executables
Dmitry V. Levin
=?iso-8859-1?q?ldv_=CE=C1_altlinux=2Eorg?=
Сб Май 31 02:53:18 MSD 2008
On Thu, May 22, 2008 at 10:14:05AM +0300, Kirill A. Shutemov wrote:
> On Thu, May 22, 2008 at 09:50:27AM +0300, Led wrote:
> > Thursday, 22 May 2008 08:02:03 Kirill A. Shutemov написав:
[...]
> > > Эвристику ломает преждеверменный strip. Опция -s при линковке удаляет
> > > символ __preinit_array_end по которому shared library отделяется от
> > > position independed executable.
> >
> > Точно! Спасибо!
> > Надо бы это где-то задокументировать. Потому как ИМХО неочевидно, что strip
> > при сборке у нас, получается, недопустим :(
>
> Я считаю, что это слабость эвристики. Нужно что-то делать.
Дело в том, что pic и pie объекты действительно слабо отличаются,
см. напр. diff -u /usr/lib/ldscripts/elf_i386.x{s,d}
Единственное, что можно попробовать, это проверку порядка секций,
у pie objects .interp должна быть первой.
--
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 197 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20080531/0c407f51/attachment-0002.bin>
Подробная информация о списке рассылки Devel