linux-api.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Pavel Emelyanov <xemul-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
To: Oleg Nesterov <oleg-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
	Tycho Andersen
	<tycho.andersen-Z7WLFzj8eWMS+FvcfC7Uqw@public.gmane.org>
Cc: linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	Kees Cook <keescook-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>,
	Andy Lutomirski <luto-kltTT9wpgjJwATOyAt5JVQ@public.gmane.org>,
	Will Drewry <wad-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>,
	Roland McGrath <roland-/Z5OmTQCD9xF6kxbq+BtvQ@public.gmane.org>,
	"Serge E. Hallyn"
	<serge.hallyn-GeWIH/nMZzLQT0dZR+AlfA@public.gmane.org>
Subject: Re: [PATCH] seccomp: add ptrace commands for suspend/resume
Date: Tue, 2 Jun 2015 22:02:10 +0300	[thread overview]
Message-ID: <556DFDB2.3050205@parallels.com> (raw)
In-Reply-To: <20150602182829.GA23449-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>


>> +int suspend_seccomp(struct task_struct *task)
>> +{
>> +	int ret = -EACCES;
>> +
>> +	spin_lock_irq(&task->sighand->siglock);
>> +
>> +	if (!capable(CAP_SYS_ADMIN))
>> +		goto out;
> 
> I am puzzled ;) Why do we need ->siglock? And even if we need it, why
> we can't check CAP_SYS_ADMIN lockless?
> 
> And I am not sure I understand why do we need the additional security
> check, but I leave this to you and Andy.
> 
> If you have the rights to trace this task, then you can do anything
> the tracee could do without the filtering.

I think _this_ check is required, otherwise the seccomp-ed task (in
filtered mode) fork-s a child, then this child ptrace-attach to parent
(allowed) then suspend its seccomd. And -- we have unpriviledged process 
de-seccomped.

-- Pavel

  parent reply	other threads:[~2015-06-02 19:02 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-01 19:28 [PATCH] seccomp: add ptrace commands for suspend/resume Tycho Andersen
     [not found] ` <1433186918-9626-1-git-send-email-tycho.andersen-Z7WLFzj8eWMS+FvcfC7Uqw@public.gmane.org>
2015-06-01 19:38   ` Andy Lutomirski
     [not found]     ` <CALCETrVaE5UsTSQDf=48R8J9gG6YiMdp30wOMD+aZvxtOjrLRQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-06-01 19:47       ` Tycho Andersen
2015-06-01 19:51         ` Andy Lutomirski
     [not found]           ` <CALCETrU2c99wQHfVS6Bi_7=sAYSr-gEUpRdgz=+FiGgGxbPyMg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-06-01 20:12             ` Tycho Andersen
2015-06-02 15:46               ` Tycho Andersen
2015-06-01 20:00       ` Tycho Andersen
2015-06-02  9:36   ` Andrey Wagin
     [not found]     ` <CANaxB-zacYuo21jLVZyEfyf=UdDnTjYvHdgNpfL+c_DXWRz-eg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-06-02 13:05       ` Tycho Andersen
2015-06-02 18:48         ` Oleg Nesterov
     [not found]           ` <20150602184848.GA24907-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-06-03 16:13             ` Tycho Andersen
2015-06-03 16:54               ` Oleg Nesterov
     [not found]                 ` <20150603165451.GA20911-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-06-03 16:58                   ` Tycho Andersen
2015-06-03 18:36                   ` Tycho Andersen
2015-06-02 18:28   ` Oleg Nesterov
     [not found]     ` <20150602182829.GA23449-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-06-02 19:02       ` Pavel Emelyanov [this message]
2015-06-02 19:24         ` Jann Horn
     [not found]         ` <556DFDB2.3050205-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
2015-06-02 19:27           ` Andy Lutomirski
     [not found]             ` <CALCETrVYHYfogj3nTY-3ui87+tVi3mG3D4=Xdk-_MpisG8BczA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-06-03 14:45               ` Tycho Andersen
2015-06-02 21:27           ` Oleg Nesterov
2015-06-03 14:43       ` Tycho Andersen
2015-06-03 16:41         ` Oleg Nesterov
     [not found]           ` <20150603164121.GA19189-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-06-03 17:10             ` Tycho Andersen
2015-06-03 17:11           ` Andy Lutomirski

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=556DFDB2.3050205@parallels.com \
    --to=xemul-bzqdu9zft3wakbo8gow8eq@public.gmane.org \
    --cc=keescook-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org \
    --cc=linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=luto-kltTT9wpgjJwATOyAt5JVQ@public.gmane.org \
    --cc=oleg-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=roland-/Z5OmTQCD9xF6kxbq+BtvQ@public.gmane.org \
    --cc=serge.hallyn-GeWIH/nMZzLQT0dZR+AlfA@public.gmane.org \
    --cc=tycho.andersen-Z7WLFzj8eWMS+FvcfC7Uqw@public.gmane.org \
    --cc=wad-F7+t8E8rja9g9hUCZPvPmw@public.gmane.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;
as well as URLs for NNTP newsgroup(s).