xen-devel
[Xen-devel] Re: [RFC] transcendent memory for Linux
To: |
Dan Magenheimer <dan.magenheimer@xxxxxxxxxx> |
Subject: |
[Xen-devel] Re: [RFC] transcendent memory for Linux |
From: |
Jeremy Fitzhardinge <jeremy@xxxxxxxx> |
Date: |
Tue, 30 Jun 2009 15:46:48 -0700 |
Cc: |
npiggin@xxxxxxx, akpm@xxxxxxxx, xen-devel@xxxxxxxxxxxxxxxxxxx, tmem-devel@xxxxxxxxxxxxxx, alan@xxxxxxxxxxxxxxxxxxx, linux-mm@xxxxxxxxx, kurt.hackel@xxxxxxxxxx, Rusty Russell <rusty@xxxxxxxxxxxxxxx>, linux-kernel@xxxxxxxxxxxxxxx, dave.mccracken@xxxxxxxxxx, Marcelo Tosatti <mtosatti@xxxxxxxxxx>, Himanshu Raj <rhim@xxxxxxxxxxxxx>, sunil.mushran@xxxxxxxxxx, Avi Kivity <avi@xxxxxxxxxx>, Pavel Machek <pavel@xxxxxx>, Martin Schwidefsky <schwidefsky@xxxxxxxxxx>, Keir Fraser <keir.fraser@xxxxxxxxxxxxx>, chris.mason@xxxxxxxxxx, Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx> |
Delivery-date: |
Mon, 06 Jul 2009 08:04:00 -0700 |
Envelope-to: |
www-data@xxxxxxxxxxxxxxxxxxx |
In-reply-to: |
<c31ca108-9b68-40ba-936f-3ed2a56fd90b@default> |
List-help: |
<mailto:xen-devel-request@lists.xensource.com?subject=help> |
List-id: |
Xen developer discussion <xen-devel.lists.xensource.com> |
List-post: |
<mailto:xen-devel@lists.xensource.com> |
List-subscribe: |
<http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe> |
List-unsubscribe: |
<http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe> |
References: |
<c31ca108-9b68-40ba-936f-3ed2a56fd90b@default> |
Sender: |
xen-devel-bounces@xxxxxxxxxxxxxxxxxxx |
User-agent: |
Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1b3pre) Gecko/20090513 Fedora/3.0-2.3.beta2.fc11 Lightning/1.0pre Thunderbird/3.0b2 |
On 06/30/09 14:21, Dan Magenheimer wrote:
> No, the uuid can't be verified. Tmem gives no indication
> as to whether a newly-created pool is already in use (shared)
> by another guest. So without both the 128-bit uuid and an
> already-in-use 64-bit object id and 32-bit page index, no data
> is readable or writable by the attacker.
>
You have to consider things like timing attacks as well (for example, a
tmem hypercall might return faster if the uuid already exists).
Besides, you can tell whether a uuid exists, by at least a couple of
mechanisms (from a quick read of the source, so I might have overlooked
something):
1. You can create new shared pools until it starts failing as a
result of hitting the MAX_GLOBAL_SHARED_POOLS limit with junk
uuids. If you then successfully "create" a shared pool while
searching, you know it already existed.
2. The returned pool id will increase unless the pool already exists,
in which case you'll get a smaller id back (ignoring wraparound).
> Hmmm... that is definitely a thornier problem. I guess the
> security angle definitely deserves more design. But, again,
> this affects only shared precache which is not intended
> to part of the proposed initial tmem patchset, so this is a futures
> issue.)
Yeah, a shared namespace of accessible objects is an entirely new thing
in the Xen universe. I would also drop Xen support until there's a good
security story about how they can be used.
J
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|