lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87shf09hmj.fsf@xmission.com>
Date:   Tue, 03 Oct 2017 14:05:40 -0500
From:   ebiederm@...ssion.com (Eric W. Biederman)
To:     Jürg Billeter <j@...ron.ch>
Cc:     Andrew Morton <akpm@...ux-foundation.org>,
        Oleg Nesterov <oleg@...hat.com>,
        Linus Torvalds <torvalds@...ux-foundation.org>,
        Michael Kerrisk <mtk.manpages@...il.com>,
        Filipe Brandenburger <filbranden@...gle.com>,
        David Wilcox <davidvsthegiant@...il.com>, hansecke@...il.com,
        linux-kernel@...r.kernel.org
Subject: Re: [RESEND PATCH] prctl: add PR_[GS]ET_PDEATHSIG_PROC

Jürg Billeter <j@...ron.ch> writes:

> On Tue, 2017-10-03 at 12:40 -0500, Eric W. Biederman wrote:
>> Jürg Billeter <j@...ron.ch> writes:
>> > What's actually the reason that CLONE_NEWPID requires CAP_SYS_ADMIN? 
>> > Does CLONE_NEWPID pose any risks that don't exist for
>> > CLONE_NEWUSER|CLONE_NEWPID?  Assuming we can't simply drop the
>> > CAP_SYS_ADMIN requirement, do you see a better solution for this use
>> > case?
>> 
>> CLONE_NEWPID without a permission check would allow runing a setuid root
>> application in a pid namespace.  Off the top of my head I can't think of
>> a really good exploit.  But when you mess up pid files, and hide
>> information from a privileged application I can completely imagine
>> forcing that application to misbehave in ways the attacker can control.
>> Leading to bad things.
>
> Could we allow unprivileged CLONE_NEWPID if the no_new_privs bit is
> set?

We discussed this early on, and the decision was that no_new_privs would
be kept simple and the user namespace would be what enabled additional
functionality.

Given how much of a challenge dealing with the additional attack surface
of enabling additional functionality in the kernel I think that was the
right call.  That has been the difference between no_new_privs being
done and user namespaces interesting since they have been merged.

Eric

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ