[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <d71a1b44-9b17-4b49-3a38-530c739e8d82@scylladb.com>
Date: Sun, 7 Jan 2018 14:51:59 +0200
From: Avi Kivity <avi@...lladb.com>
To: Theodore Ts'o <tytso@....edu>,
Alan Cox <gnomes@...rguk.ukuu.org.uk>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: Proposal: CAP_PAYLOAD to reduce Meltdown and Spectre mitigation
costs
On 01/07/2018 02:29 PM, Theodore Ts'o wrote:
> On Sun, Jan 07, 2018 at 11:16:28AM +0200, Avi Kivity wrote:
>> I think capabilities will work just as well with cgroups. The container
>> manager will set CAP_PAYLOAD to payload containers; and if those run an init
>> system or a container manager themselves, they'll drop CAP_PAYLOAD for all
>> process/sub-containers but their payloads.
> The reason why cgroups are better is Spectre can be used to steal
> information from within the same privilege level --- e.g., you could
> use Javascript to steal a user's Coindesk credentials or Lastpass
> data, which is going to be *way* more lucrative than trying to mine
> cryptocurrency in the sly in a user's browser. :-)
>
> As a result, you probably want Spectre mitigations to be enabled in a
> root process --- which means capabilities aren't the right answer.
>
>
I don't see the connection. The browser wouldn't run with CAP_PAYLOAD set.
In a desktop system, only init retains CAP_PAYLOAD.
On a server that runs one application (and some supporting processes),
only init and that one application have CAP_PAYLOAD (if the sysadmin
makes it so).
On a containerized server that happens to run just one application, init
will retain CAP_PAYLOAD, as well as the process in the container (if the
sysadmin makes it so).
On a containerized server that happens to run just one application,
which itself runs an init system, the two inits will retain CAP_PAYLOAD,
as well as the application process (if the sysadmin makes it so).
Powered by blists - more mailing lists