All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Drysdale <drysdale@google.com>
To: Andy Lutomirski <luto@amacapital.net>
Cc: Al Viro <viro@zeniv.linux.org.uk>,
	LSM List <linux-security-module@vger.kernel.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	James Morris <james.l.morris@oracle.com>,
	Kees Cook <keescook@chromium.org>,
	Linux API <linux-api@vger.kernel.org>,
	Meredydd Luff <meredydd@senatehouse.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 01/11] fs: add O_BENEATH_ONLY flag to openat(2)
Date: Mon, 30 Jun 2014 16:49:28 +0100	[thread overview]
Message-ID: <20140630154928.GB10375@google.com> (raw)
In-Reply-To: <CALCETrU=HLmw9n-DxPkFV1xP5wtzQ7-YF3-uao6YiGZODA9kdw@mail.gmail.com>

On Mon, Jun 30, 2014 at 07:49:41AM -0700, Andy Lutomirski wrote:
> On Jun 30, 2014 3:36 AM, "David Drysdale" <drysdale@google.com> wrote:
> >
> > Add a new O_BENEATH_ONLY flag for openat(2) which restricts the
> > provided path, rejecting (with -EACCES) paths that are not beneath
> > the provided dfd.  In particular, reject:
> >  - paths that contain .. components
> >  - paths that begin with /
> >  - symlinks that have paths as above.
> 
> I like this a lot.  However, I think I'd like it even better if it
> were AT_BENEATH_ONLY so that it could be added to the rest of the *at
> family.
> 
> --Andy

Wouldn't it need to be both O_BENEATH_ONLY (for openat()) and 
AT_BENEATH_ONLY (for other *at() functions), like O_NOFOLLOW and
AT_SYMLINK_NOFOLLOW?  (I.e. aren't the AT_* flags in a different
numbering space than O_* flags?)

Or am I misunderstanding?


  reply	other threads:[~2014-06-30 15:49 UTC|newest]

Thread overview: 87+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-06-30 10:28 [RFC PATCH 00/11] Adding FreeBSD's Capsicum security framework (part 1) David Drysdale
2014-06-30 10:28 ` [PATCH 01/11] fs: add O_BENEATH_ONLY flag to openat(2) David Drysdale
2014-06-30 14:49   ` Andy Lutomirski
2014-06-30 15:49     ` David Drysdale [this message]
2014-06-30 15:53       ` Andy Lutomirski
     [not found]         ` <CALCETrWJ-rqDo8OvSZWPUt1806gObNtwVHvC4M6kfQgvd3Eg9w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-07-08 12:07           ` Christoph Hellwig
2014-07-08 12:07             ` Christoph Hellwig
     [not found]             ` <20140708120702.GB30459-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2014-07-08 12:48               ` Meredydd Luff
2014-07-08 12:48                 ` Meredydd Luff
     [not found]                 ` <CAD=T17FQEZV+iy91wQAvAdd0PW2tsfjpU7atp-xeatm5sEGz5Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-07-08 12:51                   ` Christoph Hellwig
2014-07-08 12:51                     ` Christoph Hellwig
     [not found]                     ` <20140708125138.GA4749-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2014-07-08 13:04                       ` Meredydd Luff
2014-07-08 13:04                         ` Meredydd Luff
2014-07-08 13:12                         ` Christoph Hellwig
2014-06-30 20:40   ` Andi Kleen
2014-06-30 21:11     ` Andy Lutomirski
     [not found]     ` <87mwcuw2pj.fsf-KWJ+5VKanrL29G5dvP0v1laTQe2KTcn/@public.gmane.org>
2014-07-01  9:53       ` David Drysdale
2014-07-01  9:53         ` David Drysdale
2014-07-01 18:58         ` Loganaden Velvindron
     [not found]   ` <1404124096-21445-2-git-send-email-drysdale-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2014-07-08 12:03     ` Christoph Hellwig
2014-07-08 12:03       ` Christoph Hellwig
     [not found]       ` <20140708120331.GA30459-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2014-07-08 16:54         ` David Drysdale
2014-07-08 16:54           ` David Drysdale
2014-07-09  8:48           ` Christoph Hellwig
     [not found] ` <1404124096-21445-1-git-send-email-drysdale-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2014-06-30 10:28   ` [PATCH 02/11] selftests: Add test of O_BENEATH_ONLY & openat(2) David Drysdale
2014-06-30 10:28     ` David Drysdale
2014-06-30 10:28   ` [PATCH 03/11] capsicum: rights values and structure definitions David Drysdale
2014-06-30 10:28     ` David Drysdale
2014-06-30 10:28   ` [PATCH 04/11] capsicum: implement fgetr() and friends David Drysdale
2014-06-30 10:28     ` David Drysdale
2014-06-30 10:28 ` [PATCH 05/11] capsicum: convert callers to use fgetr() etc David Drysdale
2014-06-30 10:28 ` [PATCH 06/11] capsicum: implement sockfd_lookupr() David Drysdale
2014-06-30 10:28 ` [PATCH 07/11] capsicum: convert callers to use sockfd_lookupr() etc David Drysdale
2014-06-30 10:28 ` [PATCH 08/11] capsicum: add new LSM hooks on FD/file conversion David Drysdale
2014-06-30 10:28 ` [PATCH 09/11] capsicum: implementations of new LSM hooks David Drysdale
     [not found]   ` <1404124096-21445-10-git-send-email-drysdale-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2014-06-30 16:05     ` Andy Lutomirski
2014-06-30 16:05       ` Andy Lutomirski
     [not found]       ` <CALCETrUBCL1jKfooLaqrJCb-uYrMwYPQL2v-M04NTVf2LoD_fw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-07-02 13:49         ` Paul Moore
2014-07-02 13:49           ` Paul Moore
2014-07-02 17:09           ` David Drysdale
2014-07-02 17:09             ` David Drysdale
2014-06-30 10:28 ` [PATCH 10/11] capsicum: invocation " David Drysdale
2014-06-30 10:28 ` [PATCH 11/11] capsicum: add syscalls to limit FD rights David Drysdale
2014-06-30 10:28 ` [PATCH 1/5] man-pages: open.2: describe O_BENEATH_ONLY flag David Drysdale
2014-06-30 22:22   ` Andy Lutomirski
2014-06-30 10:28 ` [PATCH 2/5] man-pages: capsicum.7: describe Capsicum capability framework David Drysdale
2014-06-30 10:28 ` [PATCH 3/5] man-pages: rights.7: Describe Capsicum primary rights David Drysdale
2014-06-30 10:28 ` [PATCH 4/5] man-pages: cap_rights_limit.2: limit FD rights for Capsicum David Drysdale
     [not found]   ` <1404124096-21445-16-git-send-email-drysdale-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2014-06-30 14:53     ` Andy Lutomirski
2014-06-30 14:53       ` Andy Lutomirski
     [not found]       ` <CALCETrUi71FgVABRF4C+n_STc02j=GxRwBqDaoC+NLeAP9Ui3w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-06-30 15:35         ` David Drysdale
2014-06-30 15:35           ` David Drysdale
     [not found]           ` <20140630153503.GA10375-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2014-06-30 16:06             ` Andy Lutomirski
2014-06-30 16:06               ` Andy Lutomirski
2014-06-30 16:32               ` David Drysdale
2014-06-30 10:28 ` [PATCH 5/5] man-pages: cap_rights_get: retrieve Capsicum fd rights David Drysdale
     [not found]   ` <1404124096-21445-17-git-send-email-drysdale-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2014-06-30 22:28     ` Andy Lutomirski
2014-06-30 22:28       ` Andy Lutomirski
2014-07-01  9:19       ` David Drysdale
2014-07-01  9:19         ` David Drysdale
2014-07-01 14:18         ` Andy Lutomirski
2014-07-03  9:12 ` [RFC PATCH 00/11] Adding FreeBSD's Capsicum security framework (part 1) Paolo Bonzini
2014-07-03  9:12   ` [Qemu-devel] " Paolo Bonzini
2014-07-03 10:01   ` Loganaden Velvindron
2014-07-03 10:01     ` [Qemu-devel] " Loganaden Velvindron
     [not found]   ` <53B51E81.4090700-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2014-07-03 18:39     ` David Drysdale
2014-07-03 18:39       ` [Qemu-devel] " David Drysdale
2014-07-03 18:39       ` David Drysdale
     [not found]       ` <20140703183927.GA1629-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2014-07-04  7:03         ` Paolo Bonzini
2014-07-04  7:03           ` [Qemu-devel] " Paolo Bonzini
2014-07-04  7:03           ` Paolo Bonzini
2014-07-07 10:29           ` David Drysdale
2014-07-07 10:29             ` [Qemu-devel] " David Drysdale
2014-07-07 12:20             ` Paolo Bonzini
2014-07-07 12:20               ` [Qemu-devel] " Paolo Bonzini
     [not found]               ` <53BA9094.9080401-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2014-07-07 14:11                 ` David Drysdale
2014-07-07 14:11                   ` [Qemu-devel] " David Drysdale
2014-07-07 14:11                   ` David Drysdale
2014-07-07 22:33                 ` Alexei Starovoitov
2014-07-07 22:33                   ` [Qemu-devel] " Alexei Starovoitov
2014-07-07 22:33                   ` Alexei Starovoitov
     [not found]                   ` <CAADnVQ+c2E6eG_juEDh-GyheveqScxQ=98jqO1ZOjp1PgfVBGQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-07-08 14:58                     ` Kees Cook
2014-07-08 14:58                       ` [Qemu-devel] " Kees Cook
2014-07-08 14:58                       ` Kees Cook
2014-08-16 15:41                     ` Pavel Machek
2014-08-16 15:41                       ` [Qemu-devel] " Pavel Machek
2014-08-16 15:41                       ` Pavel Machek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140630154928.GB10375@google.com \
    --to=drysdale@google.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=james.l.morris@oracle.com \
    --cc=keescook@chromium.org \
    --cc=linux-api@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-security-module@vger.kernel.org \
    --cc=luto@amacapital.net \
    --cc=meredydd@senatehouse.org \
    --cc=viro@zeniv.linux.org.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.