Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Critical VMware Vulnerability, Exploit Released

Posted by kdawson on Thu Feb 28, 2008 02:41 PM
from the heads-up-incoming dept.
BaCa writes "Core Security has issued an advisory disclosing a vulnerability that could severely impact organizations relying on VMware's desktop virtualization software. It involves directory traversal using VMware's shared folders, and could allow an attacker access to the host system from a guest VM. Core also released an exploit for the vulnerability."
+ -
story

Related Stories

This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • Limited issue (Score:3, Interesting)

    by nhtshot (198470) on Thursday February 28 2008, @02:45PM (#22591936)
    It only affects the desktop systems. Interesting to see vulnerabilities finally start cropping up in the panacea virtualization techs.

    But, this isn't a very big deal.
    • Re:Limited issue (Score:5, Insightful)

      by Brian Gordon (987471) on Thursday February 28 2008, @03:46PM (#22592652)
      Anyone using Shared Folders is just asking for trouble anyway.. any sort of production setup will have a proper virtual network.
      • That was my first thought as well, would have to be an amateur running the show.
      • Anyone using Shared Folders is just asking for trouble anyway

        I second that. Shared Folders is a bad idea and shouldn't exist. I suspect some "big customer" has VMware convinced the sky will fall should they not provide f<bleep/>ing Shared Folders. I hope that customer gets badly owned by this nonsense. You deserve it. This is purely self-inflicted and you should be laughed at and fired. With any luck the PHB you work for cracks his own jaw with the predictable knee jerk reaction and makes you put in a several weekends disabling every "Shared Folders" ins

  • by Mostly a lurker (634878) on Thursday February 28 2008, @02:46PM (#22591950)
    I have played with the shared folder feature, but never saw any real advantage over just using standard networking (SMB, NFS etc.) Is there some advantage to VMware's shared folder feature that I am too blind to see?
    • by sammy baby (14909) on Thursday February 28 2008, @02:56PM (#22592084) Journal
      Mostly that it doesn't require you to configure folder sharing in the host OS. You enable folder sharing in the VM, and you don't have to add any additional services on the host.

      Of course, if you're using desktop product (like VMWare Server) you can always do host-only networking and limit your shares to the host-only interfaces. But that's a little more work.
      • by sammy baby (14909) on Thursday February 28 2008, @03:01PM (#22592176) Journal
        Oh, I almost forgot: if I'm not mistaken, folder sharing from inside VMware doesn't require any network access. So it works even if you turn of the network interfaces on the guest OS.
        • Re: (Score:3, Informative)

          that is very true - very useful for virus / back door testing.. gives you a way of getting files onto the image without it being able to spread them (also without having to burn a disk - which would be another way)
      • fyi: VMplayer (not necessarily server) also allows configuring the VM to do host-only communications.
    • It's more transparent to the user, there's no setup. Personally I just use standard networking.
    • Re: (Score:3, Informative)

      but never saw any real advantage over just using standard networking (SMB, NFS etc.) Is there some advantage to VMware's shared folder feature that I am too blind to see?
      I was using MS's Virtual PC, and I used the shared folder's add on so that I could leave the networking disabled as I was afraid of certain software calling home.
    • I have played with the shared folder feature, but never saw any real advantage over just using standard networking (SMB, NFS etc.) Is there some advantage to VMware's shared folder feature that I am too blind to see?

      Yes. 8^)

      I'm a little conservative about security, so I run a snapshotted Windows XP under VMWare with the network interface disabled unless I absolutely need it. Shared folders allow me to access and save all the files I work on in this environment.

      ... Needless to say, I'll be re-evaluating my approach once I've had a chance to look at exactly how this directory traversal exploit works.

  • Don't do that, then! (Score:5, Informative)

    by NNKK (218503) <nknight@runawaynet.com> on Thursday February 28 2008, @02:48PM (#22591978) Homepage
    VMware's shared folders mechanism has always been a security hole waiting to happen (VMware's own docs pretty much admit that). I don't use them on servers at all, nor on any desktop where security has anything to do with the reason I'm using virtualization.
      • Re: (Score:3, Informative)

        by Anonymous Coward
        VMPlayer Does support shared folder, you just have to edit the .vmx file yourself...
  • I always use SSH as transfer between the host and guest environment, yes it is slower but so much saver.
    • Re: (Score:3, Insightful)

      you have one CPU and you are asking it to both encrypt and decrypt a stream which can't be sniffed on the wire because it isn't going on the wire. I guess it is less silly on dual core or more where you could be encrypting on one core and decrypting on another. Either way it doesn't sound particularly efficient. That said if it is fast enough and you are familiar with it as a tool then please carry on.
      • I'm not the original poster, but this comment made me think.

        First of all, what if you're bridging? Does the OS snag the packet that's destined for its interface, or does it forward to the switch first?

        Second, lots of people don't set up FTP anymore, due to better alternatives. What other options would you use? You could use Samba--again, if you have it set up.

        Usually, I'd also use scp, but I'd use a weak (and fast) encryption mechanism. It's a shame that OpenSSH got rid of the "no encryption" cipher. I
          • You can't assume that in software. A software implementation of a bridge might simply send packets out the interface which is connected to the live wire. I've seen similar (bad) implementations in code which purports to act as a bridge. The bug was originally noticed when connections through the bridge back to the host couldn't be made, since the switch received packets on the same port to which they should be forwarded.
            • by BestNicksRTaken (582194) on Thursday February 28 2008, @05:26PM (#22593914)
              it doesn't traverse the switch as i've tested by making a little loopback cable (rj45 connector with a couple of wires twisted) that is sufficient to fool the nic into a link-up state - but not actually be connected to anything and ssh (etc) still works between host and guests in bridged mode.

              it definitely goes through the host's network stack, which is inefficient but convenient i guess.

              its actually bloody annoying that vmware pays any attention to the hosts nic's link state, as if you're not connected to a switch/wlan, then you have no networking (unless you have a handy loopback cable!) and have to switch to host-only mode.

              i'm getting a bit fed-up of vmware server though, especially that awful web gui in v2 beta, and they still haven't fixed the solaris10 networking issues that they've known about since before it was a "supported" guest os (try using nfs/jumpstart under vmware).

              unfortunately i don't have the hardware to make xen/kvm useful, and virtualbox is a bit "unpolished" to be kind, seen bad reviews of parallels on the mac, so the linux version is probably worse.
              • Good to hear.

                It's sad that there aren't any good, robust virtual machine solutions out there. VMWare really does seem to be the best on all platforms, though trying to use anything non-Windows/Linux is probably going to be frustrating.

                Xen really isn't much better. They have support for Windows on machines with hardware virtualization instructions, but more obscure operating systems just don't get support.
  • This doesnt affect VMWare server though,which most people use in home settings (given that it is free)
    • VMWare Player is free too, and supports limited video acceleration. It's what I use to convince Photoshop 4 to let me run it when I need to poke around in actual .PSD files (it freaks out and tell me that I need more than 256M RAM if I run it with the full 2GB).
    • I would be willing to bet most VMware in the home usage is VMware Player which is also free and has better graphical performance. Both Player 1 and Player 2 on Windows are affected.
  • by vux984 (928602) on Thursday February 28 2008, @03:03PM (#22592202)
    serious, even critical flaw, but still not -that- bad. A short term workaround involves turning off the file sharing feature.

    And really, if you are running vmware for high security and server isolation you would NEVER have that on anyway. Because the existence of a shared folder is implicitly not isolation.

    And the value in vmware is not 'high security' but 'high utilisation'. The ability to run multiple low load systems on one hardware platform, while not having to worry about package dependency, compatibility, or even that they run on the same OS. And the ease at which you can move one virtualized 'server' to another hardware instance, and other server management conviences.

    VMWare as a security mechanism? Its pretty good I suppose. In theory you can approach the same level of security you would have by using separate boxes for the servers. But that's it... you can only approach, you're never going to reach parity, and you certainly aren't going to exceed it.

    So VMWare is a security tradeoff... you trade a bit of security for better cash, space, and cpu utilisation.

    That said, VMware security is quite good. Its a much smaller attack surface than, say, a chroot jail. But there is still an attack surface. If you want the highest possible security, dedicated hardware behind a firewall is, was, and probably always will be the best solution.

    In closing, I'm sure we'll see a proper fix for this in short order.
    • by theotherbastard (939373) on Thursday February 28 2008, @03:08PM (#22592240)
      And really, if you are running vmware for high security and server isolation you would NEVER have that on anyway. Because the existence of a shared folder is implicitly not isolation.

      Actually, if you are running vmware for high security and server isolation you are running it on ESX, or at least VMware Server. Neither of which are vulnerable to this exploit.
      • Re: (Score:3, Informative)

        I would think that there are quite a few desktop users in helpdesk settings, or some of them just curious, that use virtualization with the specific purpose of checking out possibly malicious software. As others have noted, some of them might even have turn networking off, with the intent of stopping phone-home or explicit attacks from the VM.
      • Re: (Score:3, Informative)

        Actually, if you are running vmware for high security and server isolation you are running it on ESX, or at least VMware Server. Neither of which are vulnerable to this exploit.

        You're probably also running it on a unix.

        The description says basically that Windows' MultiByteToWideChar takes invalid UTF8 and unless you specifically tell it not to it allows errors such as expressing 7-bit characters as several bytes (or probably also allowing the longer variations of any character). Valid UTF8 only allows the smallest possible representation of a character. So vmware checks for "..", but the string is really more like "{4 zero bit}.{4 zero bits}." that when converted from utf8 to w

  • A load balanced network of highly available virtual servers running on my laptop...

    Does that make me a bad person?
     
    • > A load balanced network of highly available virtual servers running on my laptop.

      Nice! I'm working on Capistrano deployment stuff and so my Macbook is running a couple of FC8 VMs. It's not happy about it either...

  • In Beta they enabled their full drag and drop by default, but turned it off-by-default after a storm of protest on the Parallels forums. The reason for the protest is that they implemented the ability to do Mac-Windows drag and drop everywhere (instead of just to and from the Windows desktop) by creating a special magic UNC path that provided full local-user access to the root of the OS X file system.

    As far as I know that's still in there, for both drag-and-drop and, if I recall correctly, for their "Coherence" mode where the Windows run in a pseudo-multi-window mode integrated to the Mac user interface.
  • by Zordak (123132) on Thursday February 28 2008, @05:06PM (#22593644) Homepage Journal
    I'm always careful to run potentially vulnerable applications like this in a secure virtual environment.
  • If I read the description correctly, it's a local exploit - the advisory says it's remotely exploitable, but it sounds like a remote user would have to be able to log into your virtualized system (using something like RDP). It seems like it'd be unusual to allow remote users to connect to a virtualized OS on a desktop.

    On those rare instances I run VMware Fusion, it's NATted. Fortunately the main use I have for Windows anymore is just to test web page breakage on IE.

  • Just goes to show that you should always run VMWare in its own separate virtual machine (perhaps using Bochs or QEMU) to avoid security problems.
  • Only Windows hosts are vulnerable. Linux hosts aren't. Why is that?

    Answer: On Linux, no MultiByteToWideChar conversion is necessary, so the VMware developers can't screw it up.

    VMware developers are at fault, but Microsoft's complicated design shares some of the blame.

    Microsoft boasts a great user interface, but the interface they provide to developers (developers, developers, Steve!) is utter crap.

    Yeesh.

    • So...do we pounce on VMWare for being closed source and therefore _obviously_ insecure, now?

      no, we pounce on them if they don't bother to fix this... ever.
      from TFA:

      Successful exploitation requires that the Shared Folder's feature to be enabled which is the default on VMware products that have the feature AND at least one folder of the Host system is configured for sharing.

      not only does this feature need to be enabled but you also have to configure at least one folder for sharing. makes sense. until it

      • I'm pretty sad that this post got modded down so much. It really does expose a glaring fallacy--that open source is inherently more secure. Oh well, I've got Karma to burn.

        It's true that more eyes can look at the code. It's true that anyone can try to fix it and then submit a patch. But it requires action for this to be the case. Firefox is a classic example of a major open source project which consistently has security holes left unpatched. It's a major project, people! It's practically the poster-c
      • I totally agree with you. Sadly I don't mod anymore.
    • Re:Duh? (Score:5, Informative)

      by spud603 (832173) on Thursday February 28 2008, @03:06PM (#22592222)
      Yes, but if you RTFA you'll see that this vulnerability allows an attacker to access any part of the host file system, not just the shared files. That is bad.
      • Re:Duh? (Score:5, Informative)

        by Sancho (17056) on Thursday February 28 2008, @04:30PM (#22593176) Homepage
        This is a great example of how virtual machines can actually reduce security (something that Theo de Raadt said not that long ago, and was lambasted for.) Here's a case where a local exploit in the guest could turn into a root exploit in the host--all by virtual of the fact that virtual machines (necessarily) run as root on the host. Even if they didn't run as root, it would allow two local exploits (one on the guest and one on the host), and presumably the possible infection of other guests running under the same local user.
        • Why do VMs have to run as root?
          • Generally, they access privileged instructions and memory, and they run code directly on the processor. A pure software emulator would not have this requirement.
        • This is a great example of how virtual machines can actually reduce security

          No, this is an example of a poor implementation of shared folders. This does not invalidate the use of virtual machines as a security mechanism. However, I will repeat what I said before on this subject: Virtualization solves an availability problem not a security problem.

          (something that Theo de Raadt said not that long ago, and was lambasted for.)

          He was lambasted for creating a controversy that didn't exist just so that he would

    • by garett_spencley (193892) on Thursday February 28 2008, @03:31PM (#22592510) Journal
      About 8 years ago I was working at a dot-bomb that produced an "Intranet" solution. We weren't a huge company but we did have customers who deployed our product on their production web servers, as well we offered a "hosted" solution where we hosted the virtual desktop solution on our own servers.

      One day a nice whitehat sent an e-mail to all@.com describing that he had found a buffer overflow in our CGI binary that could be exploited in order to get shell access with the permissions of whatever user the webserver was running as. He told us exactly how to exploit it but he did not provide any kind of proof-of-concept code.

      Well, the main developer and maintainer of the CGI program (an extremely experienced and talented programmer who is, to this day, still one of the programmers that I look up to the most - for reasons other than what I am about to describe obviously) assured everyone in the company that exploiting such a programming error would be soooooo incredibly difficult that it was a complete non-issue.

      Based on his assurances the whitehat was ignored and customers were never notified of the problem and many of them went on running a vulnerable application.

      I tried explaining to everyone that buffer overflows in services were exploited all the time to gain remote access but I was a junior level programmer at the time and was ignored.

      I imagine that had the whitehat provided us with exploit code that we could use to actually test the problem ourselves and demonstrate it to the "non-believers" then seriousness of the problem would have been forced and the issues would have gotten a lot more attention.

      Anyway, of course Core could have provided the code to VMWare only, but the basic idea is that with exploit code in the wild it gives an extra push to get VMWare to fix the problem quickly.
    • well if you read the whole thing they have a time line from first notcing to notifying VMware and refining the problem all the way to posting the POC..

      personaly i like it when they post POC's as it not only lets others see how they do it on paper insetead of in rough idea's or theory.

      someone else might read the POC and see how it is exloiting this and realize that it can be used to effect something else and then inform people about that.

      keeping the nature of the problem hiden from the public does not help c
    • A lot more people use the desktop versions than you seem to think, and quite a few folks use them for testing of software they think might be suspect. I don't know why you would use shared folders in that environment but it's a good thing to be reminded that shared folders are inherently a security hole (albeit one not so large as this, normally).
      • Much easier method:

        cat /proc/scsi/scsi
        Attached devices:
        Host: scsi2 Channel: 00 Id: 00 Lun: 00
            Vendor: VMware, Model: VMware Virtual S Rev: 1.0
            Type: Direct-Access ANSI SCSI revision: 02