Slashdot Mirror


MS Virtual PC Flaw Defeats Windows Defenses

Coop's Troops writes "An exploit writer at Core Security Technologies has discovered a serious vulnerability that exposes users of Microsoft's Virtual PC virtualization software to malicious hacker attacks. The vulnerability, which is unpatched, essentially allows an attacker to bypass several major security mitigations — DEP, SafeSEH and ASLR — to exploit the Windows operating system. As a result, some applications with bugs that are not exploitable when running in a not-virtualized operating system are rendered exploitable if running within a guest OS in Virtual PC."

33 of 141 comments (clear)

  1. This gets me every time by Ben4jammin · · Score: 4, Insightful

    Arce said Core reported the flaw to Microsoft last August... Microsoft officials declined to comment until they had a chance to review Core’s advisory on the issue

    So how many months do you need to review once you are told about it???

    1. Re:This gets me every time by ircmaxell · · Score: 4, Interesting

      So how many months do you need to review once you are told about it?

      Simple. How many months will you give them before you go public?

      At the possibility of being flamebait here, how the heck does MS keep publishing products full of security holes? I know Linux and Mac have had their share of holes, but it seems as if every week there's a new announcement about some MS product that has either a 0 day flaw, or another MAJOR flaw? And even worse is their failure to deal with them in a reasonable amount of time! I mean 6 months to COMMENT on an advisory? That's ridiculous... Sure, they may have a lot of notices to work through, but if that's the case, hire more developers to deal with the security issues! They are out spreading the message that you can depend on MS products, and then leave gaping holes open for months... Not to long ago (within the month), they delayed a patch --well, wanted to anyway before they were called out on it-- for a 0-day in IE by 3 weeks, so that they could put it in a "planned update to IE"... If this was a popular open source project trying to pull this stuff, how quickly would a fork surface? Then again, it's all about placating the sheeple, right?

      --
      If a man isn't willing to take some risk for his opinions, either his opinions are no good or he's no good
    2. Re:This gets me every time by Anonymous Coward · · Score: 2, Insightful

      The moment they put out a patch that breaks anything, or makes things worse the uproar will be greater. Its also amazing how it will work find in say, the spanish version, but not on the chinese versions. So many things and so many different products.

    3. Re:This gets me every time by msuarezalvarez · · Score: 2, Informative

      I've upgraded "linux" (OS, libs, and what not) literally thousand of times in the ca. 15 years I've been using it, and I doubt there were 5 times where I has a real problem with the many apps I use stopping working...

    4. Re:This gets me every time by obarthelemy · · Score: 5, Insightful

      Let's play devil's advocate:

      MS has quite a lot of competing agendas:
      - keep backwards compatibility, v1. That means a bunch a old APIs, services, apps... Not only was security not much of a concern back when those were written, but any change in the environment risks unveiling new vulns. These pooor guys are actually supposed to maintain IE 6, IE7, and IE 8.
      - keep backwards compatibility, v2. MS can't really change the security model or the way they expose it without, again, breaking apps. Since NT, Windows's security model is not bad. But MS can't really implement it fully (no apps changing system-wide ressources, no writing outside of a handful of approved dirs...) without, again, breaking apps.
      - add features
      - maintain an incredibly wide array of software. MS = Oracle + Linux+ php + Apache + OOo + Firefox + ...

      So yes, I really hate the pain that managing MS systems is. I, and they, know they could make things better by breaking a lot of apps. They choose not to... prolly because their customers want them not to. I can understand that.

      --
      The Cloud - because you don't care if your apps and data are up in the air.
    5. Re:This gets me every time by peragrin · · Score: 2, Interesting

      then with windows vista why didn't MSFT include an XP mode, than ran in it's own self contained section while using the higher security of a modern OS?

      MSFT is trying to maintain compatibly with single user OS's in a networked world and failing miserably. Apple simply included a backwards compatibility mode and with every release slowly stopped installing.

      --
      i thought once I was found, but it was only a dream.
    6. Re:This gets me every time by ircmaxell · · Score: 2, Insightful

      Don't forget, you're talking about a monolith of a company. They have more than enough resources to pour into security. Yet they don't... I refuse to cut them any slack, when open source projects which are powered by volunteers (I know not all are, but a significant number are) can produce (and do produce) results SIGNIFICANTLY faster than MS typically does... If a bunch of volunteers with VERY limited resources can do it, why can't a company with practically unlimited resources handle it?

      --
      If a man isn't willing to take some risk for his opinions, either his opinions are no good or he's no good
    7. Re:This gets me every time by ircmaxell · · Score: 2, Informative

      Pouring resources into one particular project doesn't work. But pouring resources into a pile of otherwise unrelated projects does. IF it's a problem of overload (where they have 1000 outstanding issues to investigate/fix, and less than 1000 people to work on it, you could gain something by adding resources... The "Mythical Man Month" is about adding resources to one project (where everyone's work depends on everyone else's)...

      --
      If a man isn't willing to take some risk for his opinions, either his opinions are no good or he's no good
    8. Re:This gets me every time by Mr2001 · · Score: 2, Insightful

      then with windows vista why didn't MSFT include an XP mode, than ran in it's own self contained section while using the higher security of a modern OS?

      Windows 7 Professional/Ultimate includes exactly that. But it's implemented using Virtual PC, which is where this flaw was discovered.

      --
      Visual IRC: Fast. Powerful. Free.
  2. Re:Linux by customizedmischief · · Score: 5, Insightful

    Every time I read an article like this, it gives me a smug face wondering why more people don't switch.

    Swtch to what, VMware or Parallels?

    --
    Oops.
  3. Ugh, this isn't good. by mlts · · Score: 4, Informative

    The good news is that this doesn't affect the big iron (Hyper-V). However, for people who have Windows 7 and XP mode, using it for Web browsing, this will cause them a world of hurt.

    Since this essentially doesn't affect servers, I'm going to recommend to people that they move to VMWare Workstation if they want commercial support, or VirtualBox if they desire an open source solution. Either one of these has as many features as VirtualPC (although VirtualPC has one nice advantage -- it drops changes to the undo disk fast compared to the 2-3 minutes VMWare does.)

    A hole in a hypervisor is a really bad thing. A lot of people use VMs for honeypots, and this would cause unintended infections, or other damage, perhaps catastrophic.

    1. Re:Ugh, this isn't good. by WrongSizeGlass · · Score: 2, Funny

      Dude, like, stop being so reasonable - you're gonna park a cloud over our MS bashing and 'I told you so' evangelism. It's not everyday we get to trash MS over a security issue.

    2. Re:Ugh, this isn't good. by Anonymous Coward · · Score: 4, Informative

      The hole is not in the hypervisor. The GUEST OS is the one that is compromised, not the OS running the VM.

    3. Re:Ugh, this isn't good. by cbhacking · · Score: 5, Informative

      Honeypots are designed to get hit. This bug doesn't make the host system vulnerable, it just means that the client OS is easier to exploit.

      If it worked on Hyper-V, this would be a big problem; that's a server-level technology where even the clients are expected to remain secure. On the other hand, Virtual PC isn't even a hypervisor; it requires a full OS onderneath it, running itself as just another Windows app. Up until 2007 didn't even require hardware support for virtualization.

      --
      There's no place I could be, since I've found Serenity...
    4. Re:Ugh, this isn't good. by X0563511 · · Score: 4, Insightful

      If someone is using VirtualPC for a honeypot, they are an idiot.

      The idea of a honeypot is that it is indistinguishable from "the real thing."

      That this flaw even exists means it is identifiable as a virtual machine.

      --
      For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
    5. Re:Ugh, this isn't good. by Mr2001 · · Score: 3, Insightful

      A lot of people considered that to be all sorts of bullshit because Intel uses their VT feature to differentiate product lines; I.E., moderately priced business desktops don't support XP mode.

      Moral: if you're looking for something modestly priced, go with AMD processors. Not only are they cheaper, but nearly all the ones you can find today support virtualization.

      --
      Visual IRC: Fast. Powerful. Free.
    6. Re:Ugh, this isn't good. by cbhacking · · Score: 3, Interesting

      I actually had a chance to talk with one of the guys behind Wirtual PC (including the one that powers Virtual XP Mode) a few months back. His answer was that when MS started work on the Windows Virtual PC (WVPC, the current version) 3 years ago (roughly when VPC2k7 shipped), they contacted Intel and AMD and asked if they were going to offer hardware virtualization on all models going forward. Both companies answered Yes, so to save development and testing costs, the (large block of tricky) code that enabled vitrualization on CPUs without hardware support was cut from WVPC. Skip forward a couple years to WVPC getting ready for release, and... still a lot of Intel CPUs without support for virtualization. At that point it was too late to add the feature without delaying shipping, so they didn't.

      I asked whether they would add it in later, and he said they weren't planning to but might change their mainds if it became clear that this was a problem for enough of their customers. In the meantime, they were telling Intel to get its shit together the way it had said it would three years earlier, and he personally recommended going with AMD chips.

      On a side note, I didn't hear anything at all about it requiring x64. According to http://www.microsoft.com/windows/virtual-pc/download.aspx, it works just fine on x86.

      --
      There's no place I could be, since I've found Serenity...
  4. Re:Linux by snowraver1 · · Score: 5, Insightful

    Answer: Because their apps run on windows. That's all there is to it.

    --
    Copyright 2010. All rights reserved. This comment may not be copied in any way including, but not limited to caching.
  5. Re:Which only goes to show, it's always something by WrongSizeGlass · · Score: 4, Funny

    So Virtual PC is virtually as secure (or insecure) as a real PC? If you wanted the security of a real PC then they should have, um, well ... never mind.

  6. Still can't exploit the host OS by cbhacking · · Score: 5, Informative

    This is definitley a bug, but all it does is allow bypassing of security features in the virtualized system. In other words, you can exploit the VM client, but you still can't get at the host.

    It's worth of a patch, but not of a panic. If you're virtualizing for security, you don't really care what happens to the virtual system (that's the point). If you're virtualizing so you can run an old OS, it's going to be full of holes anyhow. If you're virtualizing for any other reason, why the hell are you using consumer-grade virtualization software?

    --
    There's no place I could be, since I've found Serenity...
  7. Re:Linux by Hamsterdan · · Score: 5, Informative

    Virtualbox.

    --
    I've got better things to do tonight than die.
  8. Re:Are VMware, Parallels, and VB also vulnerable? by cbhacking · · Score: 3, Interesting

    It's probably just a bug in the way VirtualPC handles the virtual TLBs or some such. It's not even present on Hyper-V, also from Microsoft, so I think the danger here is pretty low.

    It's not like this actually makes the host OS vulnerable, either. I doubt it can even crash the VM software, although it could certainly lead to crashing the virtualized OS.

    --
    There's no place I could be, since I've found Serenity...
  9. Credits by aurelianito · · Score: 5, Informative
    From TFA:

    An exploit writer at Core Security Technologies has discovered a serious vulnerability that exposes users of Microsoft's Virtual PC virtualization software to malicious hacker attacks.

    I would like to add that the exploit writer at Core Security Technologies that discovered this vulnerability is Nicolás Economou and congratulate him on the great work he has made.

    Disclaimer: I also work at Core

  10. Re:Are VMware, Parallels, and VB also vulnerable? by postbigbang · · Score: 2, Interesting

    That's what I'm wondering. Does randomized address still occur on VPC7's competitors? And if VPC is this way, then does Hyper-V thwart host address randomization, and so on? What's the difference in architecture that allows VPC to thwart this, and others go merrily on their way-- with whatever memory ring permitting the randomization of kernel access? Hmmmmm.

    --
    ---- Teach Peace. It's Cheaper Than War.
  11. How many people even use VirtualPC/XP mode anyway? by jim_v2000 · · Score: 5, Insightful

    I mean, talk about small targets. I highly doubt that any hacker would find it worth his time to attempt to exploit this. I mean, first you have to find someone running XP mode. Then you have to get them to open an executable (or exploit some other vulnerability to get onto the system) on the guest OS instead of the host OS. Then the person still has to have more than 2 gigs of RAM and be utilizing more than 2 gigs at once. Then, after all that, you only have access to the XP VM, which may or may not have anything of worth on it.

    I'm not surprised that MS shrugged it off for now.

    --
    Don't take life so seriously. No one makes it out alive.
  12. Re:Mac OS X by PopeRatzo · · Score: 2, Funny

    sex with other men.

    Not all of us can afford Macs.

    --
    You are welcome on my lawn.
  13. Re:How many people even use VirtualPC/XP mode anyw by Anonymous Coward · · Score: 3, Interesting

    I mean, talk about small targets. I highly doubt that any hacker would find it worth his time to attempt to exploit this. I mean, first you have to find someone running XP mode. Then you have to get them to open an executable (or exploit some other vulnerability to get onto the system) on the guest OS instead of the host OS. Then the person still has to have more than 2 gigs of RAM and be utilizing more than 2 gigs at once. Then, after all that, you only have access to the XP VM, which may or may not have anything of worth on it.

    I'm not surprised that MS shrugged it off for now.

    Sorry, nice try, but you don't seem to understand the issue here. You don't need to "get them to open an executable" - the point is that this vulnerability makes it possible to exploit existing vulnerabilities by bypassing mitigation techniques such as SafeSEH, DEP, and ASLR. It also has nothing to do with the amount of physical RAM on the system or how much is being used - the mentions of memory accesses refer to a process's virtual address space.

    I agree that this doesn't have nearly the same impact as if it affected Hyper-V or other business-critical virtualization platforms, but if you're going to downplay its significance, at least know what you're talking about. ;)

  14. Priorities, priorities - oh, wait! Policy: by symbolset · · Score: 4, Informative
    --
    Help stamp out iliturcy.
  15. Re:Linux by Mr2001 · · Score: 2, Insightful

    It's a matter of priorities. Do I want to a) fight Windows security and have the apps I want, b) ignore security and have the apps I want, or c) have security, but have to learn some other app, or maybe do without that app.

    The whole point of having a computer is to run the programs you want to run. If you're going to have to "do without", you might as well unplug the damn thing (thereby achieving perfect security).

    --
    Visual IRC: Fast. Powerful. Free.
  16. No kidding by Sycraft-fu · · Score: 3, Interesting

    To the extent we use it at work, it is for running stubborn old software that won't run in Windows 7 and/or 64-bit OSes. To date, we've discovered two applications like that. We also set them up to run seamless in the host OS (their window appears along any other window) where you don't see or play with the guest VM. It's easier for the user, and less potential trouble. They generally don't even know (or care) that the program is running in a VM.

    So yes, it requires some fairly edge situations to exploit. Not many people use XP mode in the first place (most apps run natively in 7), if they do, reasonable bet they are just using it for compatibility for one or two old apps, not on a regular basis. So you have to convince them to get your exploit, and run it in their XP system. While I suppose you could craft it so that it doesn't run in 7, they may just say "Eh, do not want," and ignore it. If not they might wonder why a new app would have that problem. Either way you've got to get them to use it in XP mode and then... Well I guess you can own their XP VM. Wonderful, that does you a whole lot of nothing in general.

    Also this isn't a case of "Bypasses any and all security," it just gets by some additional protections that can help in some cases. DEP, for example, doesn't do anything to stop malware, it doesn't check the "evil bit" and stop programs from running. All it does is prevent buffer overflows in some cases. You can't execute code in the data area of a program's memory. Ok, fine, however to even matter at all you have to have a program that is vulnerable to that kind of thing. If programs are checking their inputs and so on, then DEP never even comes in to play.

    Don't get me wrong, I'm happy that MS has added some additional protections to make common problems harder to exploit, however they are not the first, last, and only line of defense. They are just things that cause additional problems for various sorts of exploits. Something has to find a way to try and get in to the system in the first place before they even matter.

    I can't see this as any kind of big deal. I'm certainly not at all concerned with regards to the computers that use it at work.

  17. Not a vulnerability by poppycock · · Score: 3, Informative

    This is really a vulnerability in any meaningful sense of the word. Rather, this means that certain advanced protections that Windows uses are less effective in a Virtual PC. Microsoft is actually in a leading postion when it comes to memory protection features as compared to anyone this side of OpenBSD.

    What isn't someone issuing an "advisory" that the MacOS implementation of things like GS, ALSR, early-heap-termination and SafeSEH are either weak or nonexistent?

    ASLR could use more entropy. Stack coookies could be present in every function, instead of just some. Every defense can be improved, and I don't think Microsoft has ever claimed that ASLR or GS is a reason NOT to produce a patch.

    IMHO, Microsoft is completely correct to not issue a bulletin for this since that is an indication of a severe issue. And Core is free to make the issue known publically as well, and people can decide for themselves. But the Slashdot title is midleading at best.

  18. Re:How many people even use VirtualPC/XP mode anyw by jim_v2000 · · Score: 2, Informative

    RTFA and re-read what I said:

    Article: "It causes memory pages mapped above the 2GB level to be accessed with read or read/write privileges by user-space programs running in a Guest operating system."

    Me: "Then you have to get them to open an executable (or exploit some other vulnerability to get onto the system)"

    --
    Don't take life so seriously. No one makes it out alive.
  19. Re:"security mitigations"? by julesh · · Score: 2, Informative

    Aren't those called "exploits"?

    No, you're misunderstanding the article. A "security mitigation" is something that stops exploits working without actually removing the hole that allows the exploit. Stuff like checking your stack is still intact before returning from a function in order to make stack overflow exploits fail: the stack can still be overflowed, but you can't (easily) exploit this any more.