Re: [PATCH] docs: security: Confidential computing intro and threat model

From: Sean Christopherson
Date: Wed Apr 26 2023 - 12:05:14 EST


On Wed, Apr 26, 2023, Dave Hansen wrote:
> On 4/25/23 08:02, Sean Christopherson wrote:
> >> +While the traditional hypervisor has unlimited access to guest data and
> >> +can leverage this access to attack the guest, the CoCo systems mitigate
> >> +such attacks by adding security features like guest data confidentiality
> >> +and integrity protection. This threat model assumes that those features
> >> +are available and intact.
> > Again, if you're claiming integrity is a key tenant, then SEV and SEV-ES can't be
> > considered CoCo.
>
> This document is clearly trying to draw a line in the sand and say:
>
> CoCo on one side, non-CoCo on the other
>
> I think it's less important to name that line than it is to realize what
> we need to do on one side versus the other.
>
> For instance, if the system doesn't have strong guest memory
> confidentiality protection, then it's kinda silly to talk about the
> guest's need to defend against "CoCo guest data attacks".
>
> Sure, the mitigations for "CoCo guest data attacks" are pretty sane even
> without all this CoCo jazz. But if your goal is to mitigate damage that
> a VMM out of the TCB can do, then they don't do much if there isn't
> VMM->guest memory confidentiality in the first place.
>
> So, sure, CoCo implementations exist along a continuum. SGX is in there
> (with and without integrity protection), as are SEV=>SEV-ES=>SEV and
> MKTME=>TDX.
>
> This document is making the case that the kernel should go to some new
> (and extraordinary) lengths to defend itself against ... something.

Then name the document something other than confidential-computing.rst, e.g.
tdx-and-snp-threat-model.rst. Because this doc isn't remotely close to achieving
its stated goal of providing an "architecture-agnostic introduction ... to help
developers gain a foundational understanding of the subject". IMO, it does more
harm than good on that front because it presents Intel's and AMD's viewpoints as
if they are widely accepted for all of CoCo, and that is just flagrantly false.

: In order to effectively engage with the linux-coco mailing list and contribute
: to ongoing kernel efforts, one must have a thorough familiarity with these
: concepts. Add a concise, architecture-agnostic introduction and threat model
: to provide a reference for ongoing design discussions and to help developers
: gain a foundational understanding of the subject.