Newly-Found Windows Bug Affects All Versions Since NT 393
garg0yle writes "A researcher has found a security bug that could allow privilege escalation in Windows. Nothing new there, right? Well, this affects the Virtual DOS Machine, found in every 32-bit version of Windows all the way back to Windows NT. That's 17 years worth of Windows and counting. 'Using code written for the VDM, an unprivileged user can inject code of his choosing directly into the system's kernel, making it possible to make changes to highly sensitive parts of the operating system. ... The vulnerability exists in all 32-bit versions of Microsoft OSes released since 1993, and proof-of-concept code works on the XP, Server 2003, Vista, Server 2008, and 7 versions of Windows, Ormandy reported.'"
Cue "Windows Sucks" comments in 5, 4, 3, 2, 1 (Score:2, Funny)
Re: (Score:2, Insightful)
Re: (Score:3, Funny)
cue hahaha I switched to 64bit the moment I could in....er, now.
Re:Cue "Windows Sucks" comments in 5, 4, 3, 2, 1 (Score:5, Funny)
Cue the "cue the" comments in 3, 2, 1, 0, -1, -2, -3....
Re: (Score:3, Funny)
Cue the "cue the" comments in 3, 2, 1, 0, -1, -2, -3....
-1? Looks like you just found a bug that's been in Microsoft's Meta Countdown tool. This one goes all the way back to Windows 2.0.
Re: (Score:3, Funny)
Re:Cue "Windows Sucks" comments in 5, 4, 3, 2, 1 (Score:5, Funny)
More like cue the comments in 3, 2, 5 days, 3 hours, 23 minutes, 8 minutes, 2 hours 15 minutes, 15 seconds, 'Any moment now', 2 years.
Re: (Score:3, Funny)
Re: (Score:2, Funny)
How do we know it's not already in use? (Score:5, Interesting)
Every time I read about one of these long-undiscovered instant pwn bugs, I always have to wonder if there's someone sitting deep underground in an NSA computer center saying "Well shit, looks like we'll not be using that exploit anymore."
Is this a hole nobody knew about or a hole nobody but the people who knew about it knew about, and those people weren't talking?
Re:How do we know it's not already in use? (Score:5, Interesting)
Re:How do we know it's not already in use? (Score:4, Informative)
Yea such exploits do not happen in Linux.
http://news.zdnet.com/2100-9595_22-332141.html [zdnet.com]
http://www.theregister.co.uk/2008/05/21/massive_debian_openssl_hangover/ [theregister.co.uk]
Re:How do we know it's not already in use? (Score:5, Insightful)
One of the big differences here is that those bugs are fixed and were fixed rather quickly. How long will we have to wait for MS to do anything about this one? Will they simply suggest people use 64-bit Windows? They're going to take a stance that they feel best benefits them and, until they do, Windows users are in the dark and fucked.
Re: (Score:3, Funny)
Windows users are in the dark and fucked.
You make that sound like a bad thing.
Re:How do we know it's not already in use? (Score:5, Insightful)
Well, look at the vulnerability. It's in the Virtual DOS Machine. That means you have to get 16-bit code onto the system and then make Windows execute it. So, in order to exploit the vulnerability, you've already got to have local access. No wonder Microsoft is dragging their feet. It's only exploitable in cases where you can already gain access to the system. If you're not logged on, I don't see any way to exploit this. It's not like you could even put 16-bit code in a buffer overrun and expect the kernel to execute it. It's got to be run through the NT Virtual Dos Machine or Windows-on-Windows, or it's not executable code.
I'm sure someone will correct me if I'm wrong, but AFAIK there's no possible way to remotely exploit this (outside of another vulnerability). It's a Moderate vulnerability at best.
Re: (Score:3, Insightful)
This exploit lets any unprivileged local user inject arbitrary code into the kernel, and you think it only deserves a rating of moderate? Apparently you've never heard of local privilege escalation. This reduces the actual security of every NT-based Windows system to the single-user "security" last seen in Windows ME.
Sure, it's not a remote exploit (yet). That doesn't mean it's not a major issue, particularly for those administering multi-user systems and/or network domains.
Re:How do we know it's not already in use? (Score:5, Informative)
there's no possible way to remotely exploit this (outside of another vulnerability)
Your caveat says more than the rest of your post. Considering how many external-facing exploits exist, and how many probably remain undiscovered, I wouldn't be surprised if this one is often used to root a machine once it's been compromised. You can clean infected files, but only if you can detect them, and they're separate and distinct from your files.
One external-facing exploit can wreck havoc before it's fixed or the machine's reformatted. Add this one into play, and the operator simply won't realize the machine's compromised.
Re:How do we know it's not already in use? (Score:5, Interesting)
If you are really paranoid, you will write yourself your own C compiler or else this could happen:
http://scienceblogs.com/goodmath/2007/04/strange_loops_dennis_ritchie_a.php [scienceblogs.com]
Re: (Score:2)
I should really just switch to a Linux distro and start compiling my own kernels
Don't forget to compile your own compiler...... Oh wait.... Better write it in binary on a computer you've assembled yourself from parts you've created yourself.
Re:How do we know it's not already in use? (Score:5, Interesting)
You've got to build your own toolchain, too.... from the bare metal.
Reflections on Trusting Trust [bell-labs.com].
And I guess you have to trust the CPU not to have backdoors, too...
Re:How do we know it's not already in use? (Score:5, Informative)
Re:How do we know it's not already in use? (Score:5, Informative)
Re:How do we know it's not already in use? (Score:5, Insightful)
Re: (Score:3, Informative)
You should have probably read the link. Buffer overflow allowed code to run as root (because the nvidia drivers do)
Re: (Score:3, Funny)
Since it was a display driver, all you had to do to exploit it was be able to see the screen.
Re: (Score:2, Insightful)
Except that as those exploits prove, people AREN'T auditing the code. Otherwise, how would they end up in the wild?
Re:How do we know it's not already in use? (Score:5, Insightful)
Elsewhere in this thread there are comments like, "Just because it can be audited doesn't mean that it is," etc. Those comments are to a true, to a certain extent. Certainly long-hiding bugs have been found in the Linux kernel and software.
But there is one other factor at work, here. I've spent a few decades in the corporate world, and I can guarantee that the first response will be political/legal. Technical issues will come later. Let's say that Joe Coder-in-the-trenches finds a lurking bug in the source code that can be exploited. He reports it, and it starts moving up the management chain, probably gaining urgency as it goes. But at some point, some level of management is going to say, "What would an emergency patch for this look like to our customers?", "What does this do to our statistics?", "What are the potential liabilities?", etc. At that point, the patch will go in, and it will get fixed, but it will be put into "the process" and run through as quietly/non-disruptively as possible. The longer a bug has existed without being exploited, the more delay in "the process" will be tolerated.
I've also seen situations where patching a bug is interpreted by management as "admission of guilt," and then they start worrying about liability/recall type issues. In particular there was once a situation where they stonewalled a problem so hard that it when it finally broke, of course they got dynamic, let us fix it the way we'd been pushing to do, took credit, and gave themselves nice pat$ on the backs. In that case, it was at least decent that they didn't punish us other than during the stonewalling phase. We even got some pat$ on the back, too.
I have more confidence that such decisions in Linux will be technically, not politically based. I also know that there are personality issues, so it's not 100%, but it will generally be better.
Re:How do we know it's not already in use? (Score:5, Insightful)
Yes, exactly. You will notice that that error was found and corrected fairly quickly, and didn't rot around for almost two decades...
Re: (Score:2, Informative)
The same thing "could" happen in the Linux kernel, true. But that does not mean it "isn't safer" to use linux over windows.
You will never be able to review the source code of your windows OS. You "can" do so in linux. For a sufficiently small linux distro, you could inspect the code yourself. There used to be linux distro's that fit on a single 1.44 mb floppy, I have had a hard time finding them now, smallest I can find recently is about 2mb. If you are an expert, thats small enough to review in a couple ye
Re:How do we know it's not already in use? (Score:4, Insightful)
Good luck auditing even such a "limited" part as the kernel, even if you've got a full team of people - claiming that any individual could audit an entire distro is lunacy.
And it's not like serious bugs haven't had long timespans in linux before they were discovered; probably not any that were present as long as the NTVDM bug :), but still - shows that having the ability to audit the code doesn't help _that_ much if nobody are actually doing it.
You can review Windows OS code. (Score:5, Interesting)
You will never be able to review the source code of your windows OS.
All you have to be is Chinese Government. That is all. You think the Google hack was found by relentless probing of defenses of the WinOS? Or did they have to just grep through the WinOS source code for things like strcpy()?
Re: (Score:3, Funny)
Ahhh, Gcc doesn't like the smiley face at the end of line 20
Re: (Score:3, Interesting)
So why didn't it stop this 8 yr old exploit?
http://isc.sans.org/diary.html?storyid=6820 [sans.org]
Re: (Score:2, Insightful)
Re:How do we know it's not already in use? (Score:4, Insightful)
Re: (Score:3, Informative)
Re:How do we know it's not already in use? (Score:4, Informative)
> Guess I'm glad I run 64bit.
Why do you assume that you are not subject to a different but equally appalling set vulnerabilities? The same people wrote 64bit Windows.
Re: (Score:2)
Re: (Score:3, Interesting)
For a lot of them, that's almost certainly true. This one is interesting though. It's in the virtual MS DOS subsystem. This hasn't changed a huge amount of attention since NT 3.5. Someone might have found it back then, but if they didn't then it's more likely that they'd have focussed their attention on new code in new versions.
It's also worth noting that this doesn't affect 64-bit kernels for the very simple reason that they don't support 16-bit compatibility and so don't have the affected subsystem
Re: (Score:3, Insightful)
Well we don't really know do we?
Re: (Score:2)
Re: (Score:2)
Well we don't really know do we?
That is usually how it works with a lot of zero day or hardcore exploits from security researchers. Vendors/Developers are notified and given time to fix it until it is made public so the said fix is there before it is widely known.
Re:How do we know it's not already in use? (Score:5, Interesting)
funny how the security researcher (TFA) works at google , and now with the google china scenario this bug is now getting press when it was reported back in june 2009 , and still has not been fixed.
Wonder if all these new MS & IE bugs exploits being made known through google are due to lack of solidarity on some issues between google / ms ?
Re:How do we know it's not already in use? (Score:5, Interesting)
More likely Google discovered this one as a result of a security audit in the light of the Chinese attacks against them.
Interestingly though, the parent may have a point, it could be that this one of the exploits the Chinese used internally at Google precisely because they have known about it so long.
But still, who knows.
Re: (Score:2, Interesting)
It's a problem for corporate security, but for home users that were running XP as Administrator already, it doesn't do much to help the untrusted code that they chose to execute.
Re: (Score:3, Funny)
True. For home users you just pop up a window saying "Click here to install keylogger".
Re: (Score:2)
http://www.youtube.com/watch?v=_RpSv3HjpEw [youtube.com]
Re: (Score:3, Interesting)
Backward compatibility (Score:5, Insightful)
This is the cost of backward compatibility at the expense of everything else. That is what made Microsoft and that is what may break it.
Re: (Score:2, Insightful)
This is the cost of backward compatibility at the expense of everything else. That is what made Microsoft and that is what may break it.
Yeah, people hate it when their applications continue to work after buying a new computer.
Re: (Score:2)
Re: (Score:3, Interesting)
Short-term backwards compatibility is one thing, but when do you draw the line? If I remember my history correctly, Windows 95 was the first 32-bit Windows operating system, the last release of which was 12 years ago.
Windows NT 3.1, which this bug first appeared, was released in 1993. The one nice thing about NT's VDM and WoW subsystem is that it froze the Win16 API/environment so any 16-bit applications that worked with NT basically kept working without any new bugs up to Windows 7 32-bit. My old Windows 3.x apps kept working through various versions of NT, yet my Win32 apps kept breaking with each upgrade, go figure.
Re: (Score:3, Funny)
There, fixed that for ya. :)
Re: (Score:2)
Yah. Same thing when I converted from a horse to a car. Had a hard time converting all that hay to gas.
Re: (Score:2)
Which is the "what made" point. Do you enjoy just repeating half of the posts you reply to?
Re: (Score:3, Insightful)
Mac OS X managed to move from MacOS to a Unix - a far more significant change than anything Windows has done - without breaking much at all. Same with PowerPC to x86.
Backwards compatibility doesn't need to be integral. In fact, it's probably safer if what's been deprecated is made really obvious.
Re:Backward compatibility (Score:4, Insightful)
Mac OS X managed to move from MacOS to a Unix - a far more significant change than anything Windows has done - without breaking much at all.
Buulllshiiittt.
Spoken like a true, "I never touched Classic Mac in my life." The reason people say shit like this is only because Apple has *always* been so bad about breaking apps, that they didn't break any *more* than expected when OS X came out. (Remember the legions of apps that System 7 busted when it came out? Christ. Expectations are pretty low compared to that.)
I switched away from OS X when it became apparent that:
1) Classic would never be fixed to run more apps, nor would its more substantial flaws be fixed. (For example, how it drained laptop batteries like crazy for no reason.)
2) Apple doesn't give a shit about anything older than about 3 years. For example, my parents can't use their camcorder with their laptop because, while OS X supports USB camcorders, it only supports them on x86 and their computer is a very-late-model PPC
In the Mac world, if you don't upgrade once a year, you're fucked. I don't have the money or patience for that.
Same with PowerPC to x86.
That went smoother, as did their transition from 68k to PPC. But that just means they usually break apps for reasons other than CPU changes. :)
Does it affect IE8? (Score:2)
In particular, if that could be used to turn the "safe" IE8 into something unsafe could lead into more governments asking their citizens to stop using IE, any version of it.
Re: (Score:2)
It's a privilege escalation vulnerability, so if there is a hole in IE 8 then it becomes a remote root hole, rather than a remote unprivileged hole. I'm not certain about IE 8 in limited mode. It's possible that the ACL for this is configured to prevent starting VDM processes, but if it isn't then it becomes possible to escape from the sandbox after compromising IE 8 (that, at least, is easy to fix with a minor tweak).
Really though, VDM should be thrown away. It works less well than DOSBox and requires
Re: (Score:2)
1) The windows crowd are already running as admin, or they'll just click "OK" as many times as it takes to see the dancing pigs/bunnies.
2) The linux crowd if they are not running as admin, are often running unsandboxed browsers (e.g. firefox) using the same account they are logged in as. That means if the browser is exploited, the malware can access all their precious data, credentials, certs, emails on their local filesystems and
Only 32-bit Windows builds? (Score:2)
Ormandy said the security hole can easily be closed by turning off the MSDOS and WOWEXEC subsystems. The changes generally don't interfere with most tasks since they disable rarely-used 16-bit applications. He said he informed Microsoft security employees of the vulnerability in June.
So, to be clear, is this only about 32-bit Windows builds then?
64-bit Windows doesn't even support running 16-bit applications. And that's what WOWEXEC is all about. However, I'm less sure about this "MSDOS" subsystem in 64-bit builds? What's that for, anyway? The console emulation?
Re: (Score:2)
Oh, fuck me for not even reading the summary properly. :p
Ignore the above, it's clearly not about 64-bit CPU's.
Re:Only 32-bit Windows builds? (Score:4, Funny)
Oh, fuck me for not even reading the summary properly. :p
Nice try, dude. If that really worked, we'd all be getting laid like rock stars.
"OSs released since 1993" (Score:4, Funny)
Slashdot makes me sick. It's just not fair to go digging 14 years prior to the date when Microsoft finally starting taking security seriously.
Re:"OSs released since 1993" (Score:5, Insightful)
... Microsoft finally starting taking security seriously.
Where starting is the operative word. Here is one indication of how far they still have to go:
Visit the Microsoft Online Safety password checker (https://www.microsoft.com/protect/fraud/passwords/checker.aspx). Try “Password1”.
Wow, a "Strong" password! They don’t even do a simple dictionary check. Same is true in the OS from what I’ve seen so far.
How long has that been built into Linux?
From what I’ve seen in the field, dictionary attacks are the first thing malware attempts to gain control of a network.
They are just starting to be serious about security.
How long until we see the NT4 patch? (Score:2, Interesting)
WOWEXEC is still in use? (Score:3, Funny)
I found it funny that the Google ad displayed next to the article was for Microsoft forefront touting the security features.
http://www.perfectreign.com/stuff/2010/forefront.jpg
WARNING: Technical stuff follows (Score:5, Informative)
Vulnerability applies to 32-bit Microsoft Windows operating systems with Windows NT 3.5 heritage.
Vulnerability arises from ancient coding or design flaws in the MS-DOS execution subsystem. This subsystem is not present in 64-bit Windows OSs.
The workaround is to disable the MS-DOS subsystem.
Great article at the SANS Institute Internet Storm Center: http://isc.sans.org/diary.html?storyid=8023 [sans.org]. This includes links to Youtube videos on how to use Windows Group Policy tools to disable this subsystem.
However, once you do this, you won't be able to run 16-bit DOS-based software, so if you really need that you may have to wait for a patch. Or build a dedicated DOS machine, where at least you'll have no illusions of security. (Cynics would say this is true of any MS operating system, but I leave that debate to others.)
Re: (Score:2)
Re: (Score:3, Interesting)
Warning: Clueless editor writes panic headline (Score:2, Insightful)
This isn't a "Newly-found" bug. It was discoverd and reported to Microsoft on 12-Jun-2009. Not sure what's worse: An OS vendor whom doesn't patch holes quickly or a blog editor whom is clueless and uses inaccurate headlines to waste readers time.
Re:Warning: Clueless editor writes panic headline (Score:5, Informative)
Relative to a 17-year latency period, yeah, 7 months is new-found. And full disclosure was new as of yesterday. To everyone but the discoverer and the OS vendor, that makes it new.
To crib some TV network's advertisement, "It's a rerun, but it's new to you!"
Not "Newly-Found" (Score:5, Insightful)
from Tavis Ormandy's disclosure [neohapsis.com]
So the bug was found six months ago, but Microsoft only decided it was serious enough to fix after it was publicized. Seems like another case of "responsible disclosure" being used to cover up a vulnerability, instead of fixing it (or publishing a workaround) before the bad guys find out about it.
I told you! (Score:4, Funny)
Windows 98SE rules!
What still needs the Windows 16-bit subsystem? (Score:3, Interesting)
Does any major software still need the 16-bit subsystem?
Amusingly, when I first installed Windows NT 3.51, back around 1996, the 16-bit subsystem was optional, like the OS/2 subsystem, and I had it turned off. Everything worked fine. In NT 4, they let the kode kiddies from the Windows 95 group put legacy code into NT, some of which still ran in 16-bit mode, and the 16-bit subsystem was always on.
exploit as published doesn't work (Score:4, Interesting)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Last time I checked, Wine didn't even fully implement Win32.
Re:But does it run on Linux? (Score:4, Informative)
Linux has it's own version of such bugs. Yes, even with the 'many eyes' looking at the source, it does happen, F/OSS is no panacea.
From http://news.zdnet.com/2100-9595_22-332141.html [zdnet.com]
A hole has been found in Linux kernel versions stretching back eight years that is 'as trivial as it can get to exploit', according to the Google employees who discovered it.
Julien Tinnes and Tavis Ormandy, the security researchers who discovered the vulnerability, have already issued a patch for the flaw. According to a blog post written by Tinnes on Thursday, the hole "affects all 2.4 and 2.6 kernels since 2001 on all architectures", and is "the public vulnerability affecting the greatest number of kernel versions".
Re: (Score:3, Informative)
Re:But does it run on Linux? (Score:4, Insightful)
The difference is how much faster it was fixed once it was discovered, and how much less work and money that it takes to run a new version of Linux. Switching from a vulnerable Win2K or NT to 7 is a VERY costly endeavor. Switching to a new version of Linux is not nearly as big of an undertaking.
Small, small world... (Score:3, Interesting)
Re: (Score:3, Informative)
Linux has it's own version of such bugs. Yes, even with the 'many eyes' looking at the source, it does happen, F/OSS is no panacea.
From http://news.zdnet.com/2100-9595_22-332141.html [zdnet.com]
A hole has been found in Linux kernel versions stretching back eight years that is 'as trivial as it can get to exploit', according to the Google employees who discovered it.
Julien Tinnes and Tavis Ormandy, the security researchers who discovered the vulnerability, have already issued a patch for the flaw. According to a blog post written by Tinnes on Thursday, the hole "affects all 2.4 and 2.6 kernels since 2001 on all architectures", and is "the public vulnerability affecting the greatest number of kernel versions".
Eight year is a pretty 'good' record, but Windows still wins by 7 more (NT3.5 released in 1994, more or less the time of release of Linux 1.0). Also notice that then Linux bug was fixed almost contextually with its report, whereas the one this article is about has not not been fixed 6 months+ after the report was acknowledged. This is where open source wins.
Re: (Score:2)
Do you really believe a 32 bit OS uses half the power of your 64-bit CPU?
Re: (Score:2)
try living in a two-bit town
Re:64 Bit (Score:5, Informative)
Yet another reason people need to abandon 32-bit OSs. Seriously. What's the point of using half the power of your CPU?
I only have 32-bit hardware, you insensitive clod!
Re: (Score:2)
I have a Sun Ultra 10 (300MHz UltraSPARCIIi) and a MacBook (1.85 GHz CoreDuo), guess which one is more 'powerful.'
Re: (Score:2)
What's the point of using half the power of your CPU?
That's more like what a single-threaded app would do on a dual core system, and quite far from what a 32-bit app would do on a 64-bit capable CPU. It's not that simple. :-)
Re: (Score:2)
Re: (Score:2)
Personally, I wish the Microsoft would replace all the backwards compatibility cruft with a decent virtualization solution. I had hoped that Windows 7 would have done that with their Virtual PC application (Yes, I know about XP Mode, but it isn't the same). DOSbox has a pretty good emulation right now. I have used it to run old games and Windows 3.11 with applications. I hear that some have even gotten it to run Windows 95. Now that there are decent emulators and virtualization solutions, I think it would b
Re: (Score:2)
Um? what? the "bits" of an OS/CPU don't have much to do with "power". Most people still have less than 4 gigs of memory. And since the "bits" are the width of the memory address bus , they don't have a physical need for more than 32bit support in their OS.
Re: (Score:3, Informative)
Re:Free time. (Score:5, Funny)
Re:Free time. (Score:5, Funny)
There's an app for that?
Re: (Score:3, Informative)
Windows 7 64-bit is not vulnerable to this, and thats the version that is pushing heavily to OEMs and companies.
Re: (Score:2)
Re: (Score:2)
OEM keys may be good for both, but they don't come with both media.
I haven't run across any programs, but my printer doesn't have a 64-bit driver. But that's what I use the Windows XP Mode for. :)
Re: (Score:2)
I always wondered by PEEK and POKE still worked in QBASIC.
Dear $DIETY, that's a horrible thought. A Qbasic poke-script (with scores of DATA statements) that roots your Vista kernel. That's... sick, just sick.
Re: (Score:3, Insightful)
I have a 32 bit processor on a 32 bit motherboard and 2GB of DDR2.
Why in fucks name would I want 64 bit OS to do the same thing as I can do with a 32 bit OS, and mores to the point, why do *I* deserve crappy code written by someone else ?
You don't *have* to upgrade just because "it's the latest thing". And saying 64 bit is somehow better when it can't even run the same legacy code that 32 bit still can is hardly a valid reason to upgrade. (The fact that some of that legacy code is vulnerable is beside the p