All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: George Dunlap <dunlapg@umich.edu>
Cc: "Keir (Xen.org)" <keir@xen.org>,
	Ian Campbell <Ian.Campbell@citrix.com>,
	Jan Beulich <JBeulich@suse.com>,
	"xen-devel@lists.xen.org" <xen-devel@lists.xen.org>
Subject: Re: Xen.efi and secure boot
Date: Mon, 26 Nov 2012 18:16:53 +0000	[thread overview]
Message-ID: <50B3B215.3020000@citrix.com> (raw)
In-Reply-To: <CAFLBxZaQqh0K=W_nc3LM1u4U9DZvTu6jMGHNduE4JgkVo317WQ@mail.gmail.com>

On 26/11/12 17:57, George Dunlap wrote:
> So while doing a bit of investigation into a request that we have
> instructions for how to sign a Xen binary, I came across a related
> pair of questions.  If we boot from a signed Xen binary, then:
> 1. Will Xen then successfully boot a signed dom0 kernel / initrd?
> 2. Will Xen fail to boot an unsigned dom0 kernel / initrd?
>
> I think if Xen is signed, then ideally we want both 1 and 2 to be
> true, right?  Does UEFI provide a way to check the signature of
> files?  Does it happen automatically, or would we need to add extra
> support?  Or would we need to embed a public key within the Xen binary
> and have Xen check the signatures of files that it reads?
>
>  -George

The problem is deeper than that.

The idea of secure boot is that only signed/verified code can perform
privileged operations.  One can argue as to exactly where this boundary
lies, but in the native case, it contains any kernel level code. 
Userspace uses the kernel API/ABI subject to the permissions checks
present and (assuming no security holes), everyone is happy.

In the Xen case, Xen will happily accept any privileged hypercalls from
dom0.  So you could argue that anything able to make ioctls against
/dev/xen/privcmd (and friends) would need to be within the signed code. 
This is the entire toolstack, and all root processes.

Furthermore, cross-domain systems like xenbus/xenstore would also need
to be signed.  Imagine the carnage a malicious xenstored could cause!

I am struggling to think of a way of getting secure boot working
correctly without signing all of dom0.

-- 
Andrew Cooper - Dom0 Kernel Engineer, Citrix XenServer
T: +44 (0)1223 225 900, http://www.citrix.com

  reply	other threads:[~2012-11-26 18:16 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-26 17:57 Xen.efi and secure boot George Dunlap
2012-11-26 18:16 ` Andrew Cooper [this message]
2012-11-27 10:51   ` George Dunlap
2012-11-27 11:20     ` Alan Cox
2012-11-27 13:43     ` Pasi Kärkkäinen
2012-11-27 10:56   ` Ian Campbell
2012-11-27 11:23     ` Alan Cox
2012-11-26 20:12 ` Stefano Stabellini
2012-11-26 21:51   ` Alan Cox
2012-11-27  9:50     ` George Dunlap
2012-11-27 11:00       ` Jan Beulich
2012-11-27  8:05 ` Jan Beulich
2012-11-28 15:33 ` Jan Beulich
2012-11-30 10:27   ` Jan Beulich
2012-11-30 10:42     ` George Dunlap
2012-11-30 10:58       ` Mats Petersson
2012-11-30 11:05       ` Jan Beulich
2012-11-30 10:56     ` George Dunlap
2012-11-30 11:23       ` Jan Beulich
2012-11-30 11:26         ` Jan Beulich
2012-11-30 11:34         ` George Dunlap
2012-11-30 12:15           ` Jan Beulich

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=50B3B215.3020000@citrix.com \
    --to=andrew.cooper3@citrix.com \
    --cc=Ian.Campbell@citrix.com \
    --cc=JBeulich@suse.com \
    --cc=dunlapg@umich.edu \
    --cc=keir@xen.org \
    --cc=xen-devel@lists.xen.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.