Re: Is PIE randomization breaking klibc binaries?

Chuck Ebbert
2007-07-24T20:34:39Z

On 07/20/2007 06:05 PM, H. Peter Anvin wrote:
>> It looks like that the PIE randomization patch breaks klibc
>> binaries on x86-64.
>>
>
> Interesting.
>
> klibc binaries are indeed statically linked, but composed of two
> different ELF images: the application itself and the shared libary
> (which is referenced from the application header as the "interpreter").
> Neither of these is an ET_DYN file; they are both ET_EXEC, so it
> *should* be unaffected by the PIE randomization patch. Obviously, that
> seems to not be the case.
>
> My guess is that this patch mishandles interpreter images which are
> ET_EXEC. Jan, any insight?

Well, they don't run on Fedora 6 either (which has the same code, it's
part of exec-shield):

$ strace ./cat
execve("./cat", ["./cat"], [/* 55 vars */]) = -1 ENOENT (No such file or directory)
...
$ file cat
cat: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked (uses shared libs), stripped

Funny nobody noticed that before...