[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] dom0 vs non-dom0 differentiation inside Xen hypervisor
Hi Peter,I think you'll find that all security-sensitive hypercalls contain a test of IS_PRIV(current->domain), which is #defined in xen/include/ xen/sched.h. Only privileged domains are able to carry out operations such as creating a domain, or accessing the memory of another domain. In practice, dom0 is the only privileged domain (and, hence, it is the only domain with its d->is_privileged bit set). However, it is conceivable that another domain could be granted privileges, and so we do not insist on the privileged domain being dom0. Hope this helps. Regards, Derek Murray. On 2 Sep 2007, at 08:12, Peter Teoh wrote: In some parts of IA64 I can see that domain==dom0 checking is done, but in all 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 useless, because another domU can always modify its own kernel binaries to achieve all the features what CONF_XEN_PRIVILEGED_GUEST restrict.Am I right? _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |