[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: [Xen-devel] [PATCH]Fix the bug of guest os installationfailure and win2k boot failure
Hi, Keir, I think it is a common problem because there is always a time slot for all instruction emulation. In the time slot, an attacker could replace the old instruction with a new one. Just for example, if one thread issues a "push reg" operation, and during the time slot, another thread can replace it with a "pop reg" operation. Because there is no mechanism for us to check whether the instruction has been changed during that time slot. This may cause the guest OS doesn't work well. So, I think this kind of issue may not only happen with I/O emulations. :-) Best regards, -- Dongxiao -----Original Message----- From: Keir Fraser [mailto:keir.fraser@xxxxxxxxxxxxx] Sent: 2008年3月18日 18:03 To: Xu, Dongxiao; Cui, Dexuan; xen-devel@xxxxxxxxxxxxxxxxxxx Subject: Re: [Xen-devel] [PATCH]Fix the bug of guest os installationfailure and win2k boot failure On 18/3/08 09:35, "Xu, Dongxiao" <dongxiao.xu@xxxxxxxxx> wrote: > Do you mean that in a multi-thread process, one thread issues an I/O > operation, and in the time slot that just after the processor has fetched the > instruction, validated the access, but before Xen re-fetches the instruction > for emulation, another thread steals that I/O instruction and replace it with > a new one? Maybe we can regard it as a kind of attack... We could regard it as that, since that is what it would be. :-) > This could be happen in theory, but I think other instruction emulation > may also have this problem. Which other instruction emulations? Can you give an example? > In your last sentence, do you mean that we still > need to do an entire I/O permission check (including CPL, IOPL, and TSS I/O > bitmap) in x86_emulate() for safety consideration? Thanks! :-) Yes. Like I said: the CPL-IOPL check is very cheap, the TSS bitmap check is a little more expensive but probably relatively rare. And in any case the I/O port access latency is largely dominated by the VMEXIT/VMENTRY times. Also the devices we emulate are mostly managed by mmio. -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |