Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAPLrYEQw=CQAqSQTyO1KjXz5ypB1GRtUp7gZoRzuxJfTaqcsHA@mail.gmail.com>
Date: Mon, 6 Aug 2012 10:46:56 +0200
From: Daniel Cegiełka <daniel.cegielka@...il.com>
To: musl@...ts.openwall.com
Subject: Re: noexecstack

2012/8/6 orc <orc@...server.ru>:
> On Mon, 6 Aug 2012 09:16:10 +0200
> Daniel Cegiełka <daniel.cegielka@...il.com> wrote:
>

>> It would be very nice if we could solve this problem in this way. I'm
>> currently using this patch, but this is not the best solution in my
>> opinion. Ideally if the system (kernel, binutils, libc) enforce
>> noexecstack by default... definitely worth look closer at this issue.
>
> Consider this patch as enforcing binutils' noexecstack by default:
>
> diff -Naur binutils-2.17.50.0.17.o/ld/ldmain.c
> binutils-2.17.50.0.17/ld/ldmain.c ---
> binutils-2.17.50.0.17.o/ld/ldmain.c     2007-06-19
> 01:31:40.000000000 +0800 +++ binutils-2.17.50.0.17/ld/ldmain.c
> 2012-08-03 19:59:26.658980680 +0800 @@ -281,6 +281,8 @@
> link_info.pei386_auto_import = -1; link_info.spare_dynamic_tags = 5;
>    link_info.sharable_sections = FALSE;
> +  link_info.execstack = FALSE;
> +  link_info.noexecstack = TRUE;
>
>    ldfile_add_arch ("");
>    emulation = get_emulation (argc, argv);
>
> (this one for binutils 2.17.50.0.17, recent maybe patched with finding
> where link_info is initialized and appending this two lines)
>
> GCC generates same .note.GNU-stack section definition in it's asm
> output, as seen in your patch, but I don't know when it needs
> executable stack and generates another definition.

I'm afraid that this option will not work with .S files. Here is a
comment to this feature:

http://www.cygwin.com/ml/binutils/2003-06/msg00128.html

Here is another patch:

http://sourceware.org/ml/binutils/2003-05/msg00741.html

it's like in the Vasily's patch with stack flags (PF_R | PF_W | PF_X):

http://www.openwall.com/lists/owl-dev/2012/08/05/3

Daniel

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.