[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200805171628.03801.rusty@rustcorp.com.au>
Date: Sat, 17 May 2008 16:28:03 +1000
From: Rusty Russell <rusty@...tcorp.com.au>
To: "H. Peter Anvin" <hpa@...or.com>
Cc: Johannes Berg <johannes@...solutions.net>,
virtualization@...ts.linux-foundation.org,
Jeff Garzik <jeff@...zik.org>,
Herbert Xu <herbert@...dor.apana.org.au>,
Christian Borntraeger <borntraeger@...ibm.com>,
LKML <linux-kernel@...r.kernel.org>,
Theodore Tso <tytso@....edu>, Matt Mackall <mpm@...enic.com>
Subject: Re: [PATCH 2/2] lguest: virtio-rng support
On Saturday 17 May 2008 14:50:31 H. Peter Anvin wrote:
> Rusty Russell wrote:
> > On Friday 16 May 2008 20:49:41 Johannes Berg wrote:
> >>> +
> >>> +/* Our random number generator device reads from /dev/urandom into the
> >>> Guest's + * input buffers. The usual case is that the Guest doesn't
> >>> want random numbers + * and so has no buffers although /dev/urandom is
> >>> still readable, whereas + * console is the reverse.
> >>
> >> Is it really a good idea to use the hosts /dev/urandom to fill the
> >> guests /dev/random?
> >
> > Technically it's up to rngd in the guest to decide whether to feed
> > entropy or not (ie. /dev/urandom or /dev/random).
>
> Uhm, no. It's not. Unless the host provides actual entropy
> information, you have a security hole.
Huh? We just can't assume it adds entropy. AFAICT rngd -H0 is what we want
here.
> > If we use /dev/random in the host, we risk a DoS. But since /dev/random
> > is 0666 on my system, perhaps noone actually cares?
>
> There is no point in feeding the host /dev/urandom to the guest (except
> for seeding, which can be handled through other means); it will do its
> own mixing anyway.
Seeding is good, but unlikely to be done properly for first boot of some
standard virtualized container. In practice, feeding /dev/urandom from the
host will make /dev/urandom harder to predict in the guest.
> The reason to provide anything at all from the host
> is to give it "golden" entropy bits.
But you did not address the DoS question: can we ignore it? Or are we trading
off a DoS in the host against a potential security weakness in the guest?
If so, how do we resolve it?
Thanks,
Rusty.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists