This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] dom0 vs non-dom0 differentiation inside Xen hypervisor

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] dom0 vs non-dom0 differentiation inside Xen hypervisor
From: "Peter Teoh" <htmldeveloper@xxxxxxxxx>
Date: Mon, 3 Sep 2007 08:45:31 +0800
Delivery-date: Sun, 02 Sep 2007 17:45:51 -0700
Dkim-signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:mime-version:content-type; b=Wgf+Sc1gRcJxLihZr0LoFspiCr1HNh3ymTwajCnuOv22Jk7oO7nT44wZxAzVc5xKttgetvCqK0jRBr7czRKwrtDCoPbpEDyn4m7PwzgAWdcE3Vu76LujsVSOyXAbaqrqvIrQlc1yjGcBx8DLwC0gKnBw+odhPrYRBVIXnptkfc4=
Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:mime-version:content-type; b=XZUefXOumT5iIPKe2z5MGC698habOStYEuc2xjGis1Y/zvWU2cA3Xw9B1OnNq85SOUWpWwRW7wcyx7KILpnj30cvV8V1U7eKeFAsrLEuD3pzqvl91rWOgsMvHHACPiP44Vr8E9RhUDn2VB/ofMQqXDgpoNWT5aIuldlL2QtkZro=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
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/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
In some parts of IA64 I can see that domain==dom0 checking is done, but in all of x86 - I have yet to find a proper checking that the hypercalls comes from a dom0 domain instead of any other domain.

Theoretically, this means that any domain (PV or HVM) can always modify its own kernel binary and then make a direct hypercall (via int 0x82 or SYSENTER) into the hypervisor, executing domain controller commands like create domain etc.

Is this possible?   Access control should be done from the hypervisor side, so any existing dom0 checking (CONFIG_XEN_PRIVILEGED_GUEST compilation option - done from the dom0 side) seems like pointless, because another domU can always modify its own kernel binaries to achieve all the features what CONFIG_XEN_PRIVILEGED_GUEST restrict - be it Windows XP or Linux.

Please enlighten us.
Xen-devel mailing list