Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1512921

Re: [kernel-hardening] Re: [PATCH] fork: make whole stack_canary random

Path csiph.com!eternal-september.org!feeder.eternal-september.org!aioe.org!gothmog.csi.it!bofh.it!news.nic.it!robomod
From Daniel Micay <danielmicay@gmail.com>
Newsgroups linux.kernel
Subject Re: [kernel-hardening] Re: [PATCH] fork: make whole stack_canary random
Date Mon, 31 Oct 2016 22:30:02 +0100
Message-ID <sysjw-7Pf-29@gated-at.bofh.it> (permalink)
References <sylrH-3r1-9@gated-at.bofh.it> <synjQ-4H2-31@gated-at.bofh.it> <synDb-4Pf-9@gated-at.bofh.it> <syrGN-7md-15@gated-at.bofh.it> <syrQt-7pC-19@gated-at.bofh.it> <sys09-7Ib-1@gated-at.bofh.it> <sys9Q-7LH-9@gated-at.bofh.it> <sysjv-7Pf-11@gated-at.bofh.it>
Dkim-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:subject:from:to:cc:date:in-reply-to:references :mime-version; bh=eAHIwv+Y+SCcrZxUwleoDa6b2+T0zoYSqynmDzT2ZZw=; b=pVK/7ZmSwJFtAX/1HKuxRXozdPBF+OyW8cZfJ0hn1mGuKWkzup8tA4F2nQonhJBo94 gceVCsn2r4alpvDms0g65atbl1f4azKAGolsWnDTqB2nc8ZSAV/8B+zfGenx67Du6+hD 5lXvy8vH05bcj0ridcM8HKiXInGgtymPdeV0sWcINPSdcNNQzR+oButMN4PpJWD9bGIO BXXoJknEEDFKGMTOVFdaqOcrPlAJK+x+Adl+sRWu0SRi8B1emm+1H/dGAmXcGkqAMrbD H4vUcuayoZ3IBYM0VkU18Cr7bs8LzhP2VR5ATyumTpY1ztKm6WYhBeEiBPmzn7kpbFZD MeEw==
X-Google-Dkim-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:message-id:subject:from:to:cc:date:in-reply-to :references:mime-version; bh=eAHIwv+Y+SCcrZxUwleoDa6b2+T0zoYSqynmDzT2ZZw=; b=fVPxKQrDGclxySwGC1ZJsXLyWfbg5C8pPXmkK5fkfDnBHAgTXPgpVSESn3hKDbwpPe e1gz1J8uUd0DFW9IImruZP2cbcbvJlNec1dPV6YJz0zAgX20QdeCrZTvaG8MT/z3ddy0 8sHcjEdFDKf1sUykUVvMjWpXjaApGhc5W/nAEZs8G37tneEWc3dNCtkyUE0iU4VgGgcc JWVQbH0nHddGQlz9nazl+PeoexPJY1naehuRK+A2+QzeKv0u+f9A+FLooUwsENnR0vY2 tYL5TY3zxDI8tJL7xuGIbQ6aaQ9y0dcOXbbf9jF9EL7dESkY66+ksv5CFZBANAu7MtYk fySQ==
X-Gm-Message-State ABUngvdim7ST+c5sz9U5YKCkYuQch1MIsx5NA0fBViqzw/h82C+sj+H38b/a97G55IFFTw==
X-Received by 10.237.63.99 with SMTP id q32mr14985270qtf.156.1477949187751; Mon, 31 Oct 2016 14:26:27 -0700 (PDT)
Content-Type multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-R6vl2bnfngJG/0ZwYDkc"
X-Mailer Evolution 3.22.2
MIME-Version 1.0
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 63
Organization linux.* mail to news gateway
X-Original-Cc Kees Cook <keescook@chromium.org>, kernel-hardening@lists.openwall.com, Andrew Morton <akpm@linux-foundation.org>, Michal Hocko <mhocko@suse.com>, Ingo Molnar <mingo@kernel.org>, Andy Lutomirski <luto@kernel.org>, LKML <linux-kernel@vger.kernel.org>
X-Original-Date Mon, 31 Oct 2016 17:26:25 -0400
X-Original-Message-ID <1477949185.8761.13.camel@gmail.com>
X-Original-References <1477922641-2221-1-git-send-email-jann@thejh.net> <CAGXu5j+Hz=AmmTAh3+QOv1wTG3HA60LPK0Dq6F8uybNQ5e+sHw@mail.gmail.com> <20161031162918.GA2994@pc.thejh.net> <87mvhks0vs.fsf@mid.deneb.enyo.de> <1477947388.8761.3.camel@gmail.com> <1477947674.8761.4.camel@gmail.com> <87ins8rzqm.fsf@mid.deneb.enyo.de> <20161031212251.GB3286@pc.thejh.net>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref csiph.com linux.kernel:1512921

Show key headers only | View raw


[Multipart message — attachments visible in raw view] - view raw

On Mon, 2016-10-31 at 22:22 +0100, Jann Horn wrote:
> On Mon, Oct 31, 2016 at 10:10:41PM +0100, Florian Weimer wrote:
> > * Daniel Micay:
> > 
> > > > It makes a lot of sense on x86_64 where it means the canary is
> > > > still 56 bits. Also, you want -fstack-check for protecting again
> > > > stack overflows rather than stack *buffer* overflow. SSP won't
> > > > really help you in that regard. Sadly, while -fstack-check now
> > > > works well in GCC 6 with little performance cost, it's not
> > > > really a
> > 
> > I think GCC still does not treat the return address push on
> > architectures which have such a CALL instruction as an implicit
> > stack
> > probe.
> > 
> > > > complete feature (and Clang impls it as a no-op!).
> > 
> > How many guard pages at the end of the stack does the kernel
> > guarantee?  I saw some -fstack-check-generated code which seemed to
> > jump over a single guard page.
> 
> Until recently: Zero, no guard pages below stacks, stack overflow
> goes straight into some other allocation.
> Now: One guard page, thanks to a lot of work by Andy Lutomirski.
> (I think that change is in the current 4.9-rc3 kernel, but not in
> any stable kernel yet.)

I think Florian is talking about the main thread stack in userspace.

Thus the next part about how it doesn't actually *guarantee* a guard
page at all right now for that. Userspace has to work around that if
it's worried about it (it can't really happen in practice though, but
it's not great that mmap with a hint + no MAP_FIXED can break it).

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH] fork: make whole stack_canary random Jann Horn <jann@thejh.net> - 2016-10-31 15:10 +0100
  Re: [PATCH] fork: make whole stack_canary random Kees Cook <keescook@chromium.org> - 2016-10-31 17:10 +0100
    Re: [kernel-hardening] Re: [PATCH] fork: make whole stack_canary  random Jann Horn <jann@thejh.net> - 2016-10-31 17:30 +0100
      Re: [kernel-hardening] Re: [PATCH] fork: make whole stack_canary random Florian Weimer <fw@deneb.enyo.de> - 2016-10-31 21:50 +0100
        Re: [kernel-hardening] Re: [PATCH] fork: make whole stack_canary  random Jann Horn <jann@thejh.net> - 2016-10-31 22:00 +0100
        Re: [kernel-hardening] Re: [PATCH] fork: make whole stack_canary  random Daniel Micay <danielmicay@gmail.com> - 2016-10-31 22:00 +0100
          Re: [kernel-hardening] Re: [PATCH] fork: make whole stack_canary  random Daniel Micay <danielmicay@gmail.com> - 2016-10-31 22:10 +0100
            Re: [kernel-hardening] Re: [PATCH] fork: make whole stack_canary random Florian Weimer <fw@deneb.enyo.de> - 2016-10-31 22:20 +0100
              Re: [kernel-hardening] Re: [PATCH] fork: make whole stack_canary  random Jann Horn <jann@thejh.net> - 2016-10-31 22:30 +0100
                Re: [kernel-hardening] Re: [PATCH] fork: make whole stack_canary random Florian Weimer <fw@deneb.enyo.de> - 2016-10-31 22:30 +0100
                Re: [kernel-hardening] Re: [PATCH] fork: make whole stack_canary  random Daniel Micay <danielmicay@gmail.com> - 2016-10-31 22:30 +0100
              Re: [kernel-hardening] Re: [PATCH] fork: make whole stack_canary  random Daniel Micay <danielmicay@gmail.com> - 2016-10-31 22:30 +0100
                Re: [kernel-hardening] Re: [PATCH] fork: make whole stack_canary random Florian Weimer <fw@deneb.enyo.de> - 2016-10-31 22:40 +0100
                Re: [kernel-hardening] Re: [PATCH] fork: make whole stack_canary  random Daniel Micay <danielmicay@gmail.com> - 2016-10-31 23:10 +0100
                Re: [kernel-hardening] Re: [PATCH] fork: make whole stack_canary random Florian Weimer <fw@deneb.enyo.de> - 2016-10-31 23:20 +0100

csiph-web