[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.LRH.2.21.1810020608090.14406@namei.org>
Date: Tue, 2 Oct 2018 06:08:16 +1000 (AEST)
From: James Morris <jmorris@...ei.org>
To: "Darrick J. Wong" <darrick.wong@...cle.com>
cc: Alan Cox <gnomes@...rguk.ukuu.org.uk>,
Dave Chinner <david@...morbit.com>, TongZhang <ztong@...edu>,
linux-xfs@...r.kernel.org, LKML <linux-kernel@...r.kernel.org>,
linux-security-module@...r.kernel.org,
Wenbo Shen <shenwenbosmile@...il.com>
Subject: Re: Leaking Path in XFS's ioctl interface(missing LSM check)
On Mon, 1 Oct 2018, Darrick J. Wong wrote:
> If we /did/ replace CAP_SYS_ADMIN checking with a pile of LSM hooks,
Not sure we'd need a pile of hooks, what about just "read" and "write"
storage admin?
Or even two new capabilities along these lines, which we convert existing
CAP_SYS_ADMIN etc. to?
> how do we make sure that we (XFS) avoid breaking existing XFS tools? I
> guess the default compatibility handler for all of those new hooks would
> be "return capable(CAP_SYS_ADMIN) ? 0 : -EPERM;" and then other LSMs
> could restrict that further if so configured.
>
> Seriously, I don't know that much about how LSMs actually perform
> security checks -- it looks like a number of them can be active
> simultaneously, and we just call each of them in a chain until one of
> them denies permission or we run out of LSMs and allow it?
>
Correct.
> FWIW I didn't have a particular security or threat model in mind when I
> made the above list; all I did was break up the existing CAP_SYS_ADMIN
> into rough functional areas. Maybe it makes sense, but maybe I'm
> rambling. :)
>
> --D
>
> > You can build that model where for example only an administrative
> > login from a trusted console may launch processes to do that
> > management.
> >
> > Or you could - if things were not going around the LSM hooks.
> >
> > Alan
>
--
James Morris
<jmorris@...ei.org>
Powered by blists - more mailing lists