From: ebiederm@xmission.com (Eric W. Biederman)
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: "Jürg Billeter" <j@bitron.ch>,
"Andrew Morton" <akpm@linux-foundation.org>,
"Oleg Nesterov" <oleg@redhat.com>,
"Michael Kerrisk" <mtk.manpages@gmail.com>,
"Filipe Brandenburger" <filbranden@google.com>,
"David Wilcox" <davidvsthegiant@gmail.com>,
hansecke@gmail.com,
"Linux Kernel Mailing List" <linux-kernel@vger.kernel.org>
Subject: Re: [RESEND PATCH] prctl: add PR_[GS]ET_PDEATHSIG_PROC
Date: Tue, 03 Oct 2017 14:30:36 -0500 [thread overview]
Message-ID: <87wp4c81wj.fsf@xmission.com> (raw)
In-Reply-To: <CA+55aFzgPXwAsE=GQ5imEsRzfq6G9k3wjA8Esn367MPADzcPyw@mail.gmail.com> (Linus Torvalds's message of "Tue, 3 Oct 2017 10:02:53 -0700")
Linus Torvalds <torvalds@linux-foundation.org> writes:
> On Tue, Oct 3, 2017 at 9:36 AM, Eric W. Biederman <ebiederm@xmission.com> wrote:
>>
>> *Scratches head*
>> pdeath_signal is cleared during exec if bprm->cap_elevated.
>
> It's not cleared if we are *releasing* capabilities, which is exactly
> what might cause a "we can no longer send a signal"
*Doh* Now I see where you are coming from.
>> is_setid is set if the uid != eid or gid != egid.
>
> Again, that may be exactly what changes - the original process may
> have uid != euid, and now we're going from an "we still had a root
> uid/suid" to "dropping everything to euid".
>
> IOW, we're _dropping_ capabilities, not adding them. Maybe we don't
> want to allow signaling the original parent any more.
We never signal the orignal parent. We signal the child that
requested the pdeath_signal when the original parent dies.
The permission check is:
Does the parent have permission to signal the child that requested
the signal.
So the child dropping permissions won't change the result of that
permission check one iota.
The parent dropping permissions may change the result of that permission
check.
I care about this case because we already have the pdeath_signal and the
permission check doesn't make any sense to me, and appears not to be at all
useful.
Plus it is the only caller of group_send_sig_info outside of
kernel/signal.c so I think the kernel would be more maintainable if we
could simplify this piece of code.
> That said, as mentioned, I actually don't think it's a real problem.
> The real problem is entirely conceptual: yet more complexity in an
> area that we've already had problems in before.
>From the conversation so far it does appear we can do better.
Eric
next prev parent reply other threads:[~2017-10-03 19:30 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-09 9:40 [PATCH] prctl: add PR_[GS]ET_PDEATHSIG_PROC Jürg Billeter
2017-09-12 17:05 ` Oleg Nesterov
2017-09-12 18:54 ` Jürg Billeter
2017-09-13 17:11 ` Oleg Nesterov
2017-09-13 17:26 ` Jürg Billeter
2017-09-13 17:48 ` Oleg Nesterov
2017-09-29 12:30 ` [RESEND PATCH] " Jürg Billeter
2017-10-02 23:20 ` Andrew Morton
2017-10-03 3:25 ` Eric W. Biederman
2017-10-03 6:45 ` Jürg Billeter
2017-10-03 14:46 ` Eric W. Biederman
2017-10-03 16:10 ` Linus Torvalds
2017-10-03 16:36 ` Eric W. Biederman
2017-10-03 17:02 ` Linus Torvalds
2017-10-03 19:30 ` Eric W. Biederman [this message]
2017-10-03 20:02 ` Linus Torvalds
2017-10-03 20:32 ` Eric W. Biederman
2017-10-03 17:00 ` Jürg Billeter
2017-10-03 17:40 ` Eric W. Biederman
2017-10-03 17:47 ` Jürg Billeter
2017-10-03 19:05 ` Eric W. Biederman
2017-10-05 16:27 ` Oleg Nesterov
2017-10-08 17:47 ` Jürg Billeter
2017-10-09 16:32 ` Eric W. Biederman
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=87wp4c81wj.fsf@xmission.com \
--to=ebiederm@xmission.com \
--cc=akpm@linux-foundation.org \
--cc=davidvsthegiant@gmail.com \
--cc=filbranden@google.com \
--cc=hansecke@gmail.com \
--cc=j@bitron.ch \
--cc=linux-kernel@vger.kernel.org \
--cc=mtk.manpages@gmail.com \
--cc=oleg@redhat.com \
--cc=torvalds@linux-foundation.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox