Re: Is PIE randomization breaking klibc binaries?

From: Chuck Ebbert
Date: Tue Jul 24 2007 - 16:34:41 EST


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...
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/