NetBSD Problem Report #58087

From www@netbsd.org  Fri Mar 29 01:52:46 2024
Return-Path: <www@netbsd.org>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
	by mollari.NetBSD.org (Postfix) with ESMTPS id B4DF11A9239
	for <gnats-bugs@gnats.NetBSD.org>; Fri, 29 Mar 2024 01:52:46 +0000 (UTC)
Message-Id: <20240329014755.A09121A923B@mollari.NetBSD.org>
Date: Fri, 29 Mar 2024 01:47:55 +0000 (UTC)
From: campbell+netbsd@mumble.net
Reply-To: campbell+netbsd@mumble.net
To: gnats-bugs@NetBSD.org
Subject: hyperv provides random seed
X-Send-Pr-Version: www-1.0

>Number:         58087
>Category:       kern
>Synopsis:       hyperv provides random seed
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Mar 29 01:55:00 +0000 2024
>Originator:     Taylor R Campbell
>Release:        current
>Organization:
The NetBSD-V Foundation
>Environment:
>Description:
According to Niels Ferguson, `The Windows 10 random number generation
infrastructure', October 2019, Hyper-V provides an ACPI table called
`OEM0' with a random seed (p. 14):

> * ACPI-OEM0
> 
> The ACPI-OEM0 is an ACPI table with the name OEM0.  The Hyper-V
> hypervisor will create this table with 64 bytes of random data.  The
> random data is derived from the host RNG infrastructure, and a fresh
> value is passed every time a guest is powered up.  OEMs could provide
> this table on physical machines too, but we are not aware of any OEM
> doing that.  The ACPI-OEM0 table is read by winload.  It ensures that
> any VM guest on Hyper-V has good entropy at startup.  (This is
> especially important as many VMs are often launched from the same
> disk image, so they all get the same seedfile data.)

https://download.microsoft.com/download/1/c/9/1c9813b8-089c-4fef-b2ad-ad80e79403ba/Whitepaper%20-%20The%20Windows%2010%20random%20number%20generation%20infrastructure.pdf

We should take advantage of this in NetBSD when booting on
Hyper-V (and make sure to zero it out when exposing the table
through /dev/acpi).
>How-To-Repeat:
boot NetBSD on hyperv
>Fix:
Yes, please!

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.47 2022/09/11 19:34:41 kim Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2024 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.