You are correct that this isn't an issue for everyone and you are correct that this isn't an issue if reasonable security practices are employed. On the other hand, most security issues reported here wouldn't be issues if reasonable security practices were employed. I have been saying that for years. Because it does not apply to your particular environment doesn't invalidate the issue. There are many, many situations where someone would want to access a vmware guest via the console and not allow any network access at all. One that comes to mind is an offline root CA that you can only fire up only when you need it--a virtual offline machine. Another situation for myself is I keep all my hacking/pen-testing tools on a vm that I can use when I need them, and quickly move to any vm host I need to run them on. I don't necessarily want to make that virtual machine accessible from the network. Anyway, it is absurd to say you will never log in to the console, sometimes you just have to. Whether it affects you personally or not, it certainly is helpful to know that the capability exists so you can make better informed security decisions--and that there is an undocumented switch to disable that feature. Addressing some other points: > If the host OS (or an account within it) is compromised, > of course all bets are off when it comes to a virtual machine running > within it. This isn't completely true. Yes, it is much more difficult to secure a virtual machine that way, but it can be done. You could, for example, use full disk encryption to prevent someone from mounting a virtual disk outside the guest OS. Besides, I concede that point in my article, emphasizing that an automated attack increases the seriousness of the problem. > Furthermore, this attack only works if you are running the vmware guest > utilities *and* you are currently logged into a GUI desktop running the > vmware userland process. VMWare constantly reminds you that you don't have the vmware guest tools installed. I'd say that most people do install them. But that doesn't matter anyway because you can just use the VIX API function VixVM_InstallTools to install them if they aren't already there. And you do not need to be logged in, the VIX API allows you to wait until the command actually runs. So it can just sit there until the next time you do login to the console. Mark Burnett http://xato.net > -----Original Message----- > From: Arthur Corliss [mailto:corliss@xxxxxxxxxxxxxxxx] > Sent: Thursday, August 23, 2007 10:49 AM > To: M. Burnett > Cc: bugtraq@xxxxxxxxxxxxxxxxx > Subject: Re: VMWare poor guest isolation design > > On Wed, 22 Aug 2007, M. Burnett wrote: > > > I have run across a design issue in VMware's scripting automation API > that > > diminishes VM guest/host isolation in such a manner to facilitate > privilege > > escalation, spreading of malware, and compromise of guest operating > systems. > > > > VMware's scripting API allows a malicious script on the host machine > to > > execute programs, open URLs, and perform other privileged operations > on any > > guest operating system open at the console, without requiring any > > credentials on the guest operating system. Furthermore, the script > can > > execute programs even if you lock the desktop of the guest OS. > > > > For example, if a non-admin user is logged in at the vm host, but > logged in > > to guest operating systems as an administrator, the script running as > a > > non-admin on the host can still execute admin-level scripts on the > guests. > > > > I obviously did not discover this issue--the API developers provided > it as a > > feature-I am simply pointing out the potential danger, that it was a > poor > > design decision, and that there is a need to establish best practices > for > > virtual machine guest and host isolation. > > I don't see this as a serious problem. This is the virtual equivalent > of no > physical security. If the host OS (or an account within it) is > compromised, > of course all bets are off when it comes to a virtual machine running > within > it. > > Furthermore, this attack only works if you are running the vmware guest > utilities *and* you are currently logged into a GUI desktop running the > vmware userland process. > > I personally look at this as an issue for Windows. I personally don't > install the vmware guest software for my Linux VMs, nor would I log > into a > GUI as root. For that matter, if you are merely hosting the guest VMs > why > would you need to ever use the vmware console after installation? Use > a > network-based access method, making the need for the vmware guest > utilities > unnecessary. That should be sufficient for all OS'es. > > In (not so) short, this attack vector is virtually worthless if > reasonable > security practices are employed. > > --Arthur Corliss > Live Free or Die
Attachment:
smime.p7s
Description: S/MIME cryptographic signature