Windows: New, improved & more insecure than ever

Data execution prevention, a major Windows security feature, has just been busted.

By sjvn  33 comments

Honest to God I don't go around trying to pick on Windows for its security problems, but the hackers keep finding new ways to break into it. And, this time, they've found a doozie. Berend-Jan Wever, aka "Skylined," a Google security software engineer has busted DEP (data execution prevention), one of the few significant security improvements Microsoft has made to Windows.

DEP, which was added to Windows back in August 2004 in XP SP2. It addressed the very common hacking technique of buffer overflows. In a buffer overflow attack, a malicious program tries to overwrite the buffer, the amount of memory a program has been allocated for running its code in. By so doing, a buffer overflow overwrites memory that may or may not have been allocated to other programs. In either case, it can then use this overwritten memory for its own purposes. Usually this means running malware or even taking over the computer itself.

While this problem isn't unique to Windows, it can happen to almost any operating system without strict memory management controls, even with DEP, Windows has been prone to such attacks. Now, though, with DEP busted, it's become even easier for a buffer attack to strike home.

DEP works, or I guess I should say 'worked' now, by working with the CPU to mark all memory locations in a process as non-executable unless it explicitly contained executable code. That way, even if there was a buffer overflow, the malicious code couldn't run in whatever memory it happened to find itself.

Unfortunately, Wever, using a variation of a hacking technique he helped perfect called heap-spraying has busted DEP. In heap-spraying, the attack code made an educated guess at where vulnerable memory that could be used to execute unapproved programs could be found. In Wever's latest trick, the attacking code looks for clues on where to find memory that's allowed by DEP to run programs. Once armed with this information, the attack code can then successfully plant itself in the system.

While the attack code isn't ready to go for any script-kiddie, as Wever himself points out, he has given enough information on how to defeat DEP that it's only a matter of time before a competent cracker uses the code to start enabling new attacks.

While Wever doesn't say that this technique can be used to defeat Microsoft's other significant security improvement in recent years, ASLR (address space layout randomization). But, it seems pretty clear to me that this kind of attack could be improved upon and then used to do exactly that. ASLR, which is used in other operating systems such as Linux and has been in Windows since SP2, works by randomizing where program's executable code is ran in memory. This way a hacker can't make an attack by simply assuming that any given program will live in a particular chunk of memory.

Wever wrote, "I am releasing this because I feel it helps explain why ASLR+DEP are not a mitigation to put a lot of faith in, especially on x86 platforms. 32-bits does not provide sufficient address space to randomize memory to the point where guessing addresses becomes impractical, considering heap spraying can allow an attacker to allocate memory across a considerable chunk of the address space and in a highly predictable location. "

In short, if you're running 32-bit Windows of any sort-XP, Vista, 7, Server 2008-you can look 'forward' to being even more vulnerable to attacks. Have I mentioned lately that I tend to do most of my desktop computing with Linux? Well, I am. This exploit opens up a new and huge hole in Windows' already vulnerable defenses.

33 comments

Anonymous 48 weeks ago
I think the improvements that were done are so good. The future of this is so good. The future is so bright for this. orlando auto accident lawyers
Anonymous 1 year ago
I'm up-voting this article for the worst-ever description of how buffer overrun attack works.
Anonymous 1 year ago
Dark days ahead for Windows only users. These hacker threats are only going to get worse. A simple solution migrating to Linux (or $Mac) - but many MS loving sheep don't want to hear it. Cyber criminals are rejoicing.
Anonymous 1 year ago
So you attack the person and not his argument. We may not no who you are, but you do. Just knowing I'm not you makes this a wonderful day.
Anonymous 1 year ago in reply to Anonymous
since the person's reasons having nothing to do with why linux is not a target.We all will have many wonderful days not being you, the same can't be said for you if you think the person was attacked.
Anonymous 1 year ago
It would be nice to hear once in a while a Linux fanboy (sjvn) saying something nice about Microsoft.I'm not a Microsoft advocate, but I use their product from time to time.Understand that Linus is not for the masses (yet), I still need to compile my kernel in order for my mouse to work :)But my subject is about "Windows taxes", yes, we should all let Windows tax us whenever we use their products, for a while that is, then the whole world *will switch* to the Mac platform!!The good thing about Linuz is that there are 12 million distros. It's very easy to spend the rest of your life trying to see "which one is the perfect one for you".Microsoft has only couple dozen, which makes it easier to choose. I'm currently usign Windows 7.2 SP3.1 Ultimate with Gold Membership privileges which gives me Platinum access to MSDN.Aren't you glad that you just can turn on your iPad and forget about the DEP thingy?Mac is the way to go, boys. I'm so glad that I don't have to rebuild my kernel anymore in order for my USB drive to work.
Anonymous 1 year ago in reply to Anonymous
If you need to compile your kernel for your mouse to work then you have not used Linux in past 3-5 years at least.
Anonymous 1 year ago
Obviously you know nothing about network security or how it should be configured.If your bank is storing credit card numbers on its web server change your bank right away.Stop talking about IIS of 8 years ago, with the release of IIS 6, IIS has had less security patches than Apache in the last 8 years.
Anonymous 45 weeks ago in reply to Anonymous
The fact that IIS has less security patches means nothing. It could mean that MS recognizes it is crappier product than apache and are trying to figure out what to do.And yes, numbers are not stored on the web server, but go through it :-). Sometimes not properly encrypted too :->
Anonymous 1 year ago in reply to Anonymous
Why does people insist on counting the number of patches and think that tells them ANYTHING about the security of the system in question?MS does not tell you everything they patch in security updates, if there is an issue that is not known outside of MS they patch it quietly, they have said as much.Apache is open source, they can't hide a single patch and doesn't try to either.Another thing is that the number of patches doesn't tell you ANYTHING about the severity of the bug!If IIS has 1 hole that can cause a break in and Apache has 34 that can cause a DOS I'd still, based on those numbers, stick with Apache, thank you very much!I know Microsoft is very fond of reciting those numbers as they mean anything, but come on!If numbers is the issue, why isn't Apache the most broken into web server? It surely is the most widely used...
Anonymous 1 year ago in reply to Anonymous
The main server gets exploited same as normal.. But less internal factors..Why do you think most Hosting companys use mysql as a alternative towards Mssql..And Microsoft fought hard to get php to work on iis.
mfioretti
mfioretti 1 year ago
as Microsoft's VP Carney said earlier this week, see http://stop.zona-m.net/node/109Bah!Marco
Anonymous 1 year ago
Security through obscurity is a logical fallacy. the real reason Linux has not been attacked yet is because:a) you download from secure software repositories.b) All source is open. If you don't trust it, don't install.c) Linux is of a completely different philosophy of design.

Add a comment

Post a comment using one of these accounts
Or join now
At least 6 characters

Note: Comment will appear soon after you have activated your account.
Obscene/spam comments will be removed and accounts suspended.
The information you submit is subject to our Privacy Policy and Terms of Service.

ITworld LIVE

Ask a question

Ask a Question