Messages in this thread | | | Subject | Re: Proposal: CAP_PAYLOAD to reduce Meltdown and Spectre mitigation costs | From | Avi Kivity <> | Date | Sun, 7 Jan 2018 14:51:59 +0200 |
| |
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).
| |