[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