qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] SEV: fixes for -kernel launch with incompatible OVMF
@ 2021-11-01 10:21 Dov Murik
  2021-11-01 10:21 ` [PATCH 1/3] sev/i386: Allow launching with -kernel if no OVMF hashes table found Dov Murik
                   ` (3 more replies)
  0 siblings, 4 replies; 29+ messages in thread
From: Dov Murik @ 2021-11-01 10:21 UTC (permalink / raw)
  To: qemu-devel
  Cc: Tom Lendacky, Ashish Kalra, Brijesh Singh, Eduardo Habkost,
	James Bottomley, Marcelo Tosatti, Dr. David Alan Gilbert,
	Dov Murik, Tobin Feldman-Fitzthum, Paolo Bonzini,
	Philippe Mathieu-Daudé

Tom Lendacky and Brijesh Singh reported two issues with launching SEV
guests with the -kernel QEMU option when an old [1] or wrongly configured [2]
OVMF images are used.

The fixes in patches 1 and 2 allow such guests to boot by skipping the
kernel/initrd/cmdline hashes addition to the initial guest memory (and
warning the user).

Patch 3 is a refactoring of parts of the same function
sev_add_kernel_loader_hashes() to calculate all padding sizes at
compile-time.  This patch is not required to fix the issues above, but
is suggested as an improvement (no functional change intended).

Note that launch measurement security is not harmed by these fixes: a
Guest Owner that wants to use measured Linux boot with -kernel, must use
(and measure) an OVMF image that designates a proper hashes table area,
and that verifies those hashes when loading the binaries from QEMU via
fw_cfg.

The old OVMFs which don't publish the hashes table GUID or don't reserve
a valid area for it in MEMFD cannot support these hashes verification in
any case (for measured boot with -kernel).


[1] https://lore.kernel.org/qemu-devel/3b9d10d9-5d9c-da52-f18c-cd93c1931706@amd.com/
[2] https://lore.kernel.org/qemu-devel/001dd81a-282d-c307-a657-e228480d4af3@amd.com/

Dov Murik (3):
  sev/i386: Allow launching with -kernel if no OVMF hashes table found
  sev/i386: Warn if using -kernel with invalid OVMF hashes table area
  sev/i386: Perform padding calculations at compile-time

 target/i386/sev.c | 34 +++++++++++++++++++++++-----------
 1 file changed, 23 insertions(+), 11 deletions(-)


base-commit: af531756d25541a1b3b3d9a14e72e7fedd941a2e
-- 
2.25.1



^ permalink raw reply	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2021-11-09  7:38 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-01 10:21 [PATCH 0/3] SEV: fixes for -kernel launch with incompatible OVMF Dov Murik
2021-11-01 10:21 ` [PATCH 1/3] sev/i386: Allow launching with -kernel if no OVMF hashes table found Dov Murik
2021-11-01 14:25   ` Tom Lendacky
2021-11-01 17:56     ` Dov Murik
2021-11-03 16:02   ` Daniel P. Berrangé
2021-11-04 18:18     ` Dr. David Alan Gilbert
2021-11-04 18:22       ` Daniel P. Berrangé
2021-11-05  7:41         ` Dov Murik
2021-11-01 10:21 ` [PATCH 2/3] sev/i386: Warn if using -kernel with invalid OVMF hashes table area Dov Murik
2021-11-02 12:36   ` Dr. David Alan Gilbert
2021-11-02 12:56     ` Dov Murik
2021-11-02 18:38       ` Dr. David Alan Gilbert
2021-11-02 19:00         ` Philippe Mathieu-Daudé
2021-11-03 16:07   ` Daniel P. Berrangé
2021-11-05  7:52     ` Dov Murik
2021-11-01 10:21 ` [PATCH 3/3] sev/i386: Perform padding calculations at compile-time Dov Murik
2021-11-02 11:36   ` Dr. David Alan Gilbert
2021-11-02 11:50     ` Dov Murik
2021-11-03 14:49   ` Philippe Mathieu-Daudé
2021-11-02 10:52 ` [PATCH 0/3] SEV: fixes for -kernel launch with incompatible OVMF Brijesh Singh
2021-11-02 13:22   ` Dov Murik
2021-11-02 14:48     ` Brijesh Singh
2021-11-03 14:08       ` Dr. David Alan Gilbert
2021-11-03 15:44         ` Brijesh Singh
2021-11-05  7:38           ` Dov Murik
2021-11-05 18:32       ` Dov Murik
2021-11-08 21:22         ` Brijesh Singh
2021-11-09  7:34           ` Dov Murik
2021-11-03 16:10     ` Daniel P. Berrangé

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).