Re: [PATCH] binfmt_elf: fix PIE load with randomization disabled

From: H.J. Lu
Date: Wed Dec 11 2013 - 08:41:36 EST


On Wed, Dec 11, 2013 at 5:36 AM, Jiri Kosina <jkosina@xxxxxxx> wrote:
> On Mon, 9 Dec 2013, H.J. Lu wrote:
>
>> >> so that he could load his program compiled as PIE above 4GB.
>> >> If kernel is changed not to honor it, his program won't work any more.
>> >> In normal case, PIE has zero vaddr and this doesn't apply.
>> >>
>> >
>> > That doesn't seem to be PIE at all, and if it is PIE, then it should be
>> > relocatable (I agree btw with randomizing upward from the selected address.)
>>
>> Kernel can consider PIE with non-zero vaddr isn't real PIE.
>
> Why?
>
> I still think PIE with non-zero vaddr should be randomized by putting
> random offset to the vaddr. Don't you think so? Why?
>

When -Ttext-segment=XXX is used, the program is expected to
load at XXX, regardless -pie is used or not. I will change the
linker to set type to ET_EXEC in this case so that it will be
independent of kernel.


--
H.J.
--
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/