ie8 fix
madison

Zero Day

Ryan Naraine, Emil Protalinski and Dancho Danchev

Why did Microsoft wait 7 years to fix SMBRelay attack flaw?

By | November 12, 2008, 9:32am PST

Summary: One of the code execution vulnerabilities fixed in this month’s Microsoft Patch Tuesday release dates back to 2001 when it was first disclosed by Cult of the Dead Cow hacker Sir Dystic (pictured left). If that wasn’t cause for worry, get this:  An exploit for the bug — in the way that Microsoft Server Message Block [...]

Micosoft takes 7 years to fix SMB Relay vulnerabilityOne of the code execution vulnerabilities fixed in this month’s Microsoft Patch Tuesday release dates back to 2001 when it was first disclosed by Cult of the Dead Cow hacker Sir Dystic (pictured left).

If that wasn’t cause for worry, get this:  An exploit for the bug — in the way that Microsoft Server Message Block (SMB) Protocol handles NTLM credentials — has been part of the Metasploit hacking tool since July 2007.

So, why did it take Microsoft seven years to fix something that could lead to full system takeover?

Microsoft’s Christopher Budd explains:

When this issue was first raised back in 2001, we said that we could not make changes to address this issue without negatively impacting network-based applications. And to be clear, the impact would have been to render many (or nearly all) customers’ network-based applications then inoperable. For instance, an Outlook 2000 client wouldn’t have been able to communicate with an Exchange 2000 server. We did say that customers who were concerned about this issue could use SMB signing as an effective mitigation, but, the reality was that there were similar constraints that made it infeasible for customers to implement SMB signing.

[ SEE: Responsible disclosure, the Microsoft way ]

Sisk said the case was never closed and investigations continued over the years to determine if there was a way to fix the bug without requiring developers to completely rewrite applications.

Over the course of the past year, however, that ongoing work showed us a way to build on those incremental changes that we believed would enable us to make changes that address the issues outlined in the SMBRelay attack and also minimize the impact on network applications. If we were able to do that, we would be able to look at addressing this issue not in a new version of Windows but instead in a security update, provided it met the appropriate quality bar.

Our engineering teams spent a great deal of time testing this approach and found it was feasible. We then took that work and developed it into a security update, putting it through our standard testing to ensure it met an appropriate level of quality for broad release. What we released today with MS08-068 is that security update. It addresses the SMBRelay issue but does so in a way that doesn’t have the negative impact on applications that we originally believed addressing this issue would have.

[ SEE: Where on earth are these Microsoft patches? ]

Microsoft wasn’t alone discussing attack paths to this old vulnerability.  In 2003, on the Full Disclosure mailing list, there’s evidence of public discussion of the issue and a note by Dave Aitel that it was already part of a previous DefCon presentation.

Microsoft has done an amazing job of improving its security response process but these time-to-patch hiccups continue to be a major source of worry.    I’ve documented several times in the past when Microsoft failed to fix issues in a timely — and responsible — manner and these examples only highlight one of the company’s biggest security weakness.

Oh, by the way, there’s another outstanding issue collecting cobweb.   This ‘token kidnapping’ issue was first discussed in March 2008 and, after a bit of hemming and hawing, confirmed in this Microsoft security advisory.   Exploit code for this privilege escalation vulnerability was publicly released last month.

Microsoft knows all this.

We are still waiting on a patch.

Kick off your day with ZDNet's daily e-mail newsletter. It's the freshest tech news and opinion, served hot. Get it.

Topics

Ryan Naraine is a journalist and social media enthusiast specializing in Internet and computer security issues.

Disclosure

Ryan Naraine

The most important disclosure is of my employment with Kaspersky Lab as a member of the global research and analysis team. Kaspersky Lab is a global company specializing in anti-malware and secure content management technologies. I do not own stocks or other investments in any technology company.

Biography

Ryan Naraine

Ryan Naraine is a journalist and social media enthusiast specializing in Internet and computer security issues. He is currently security evangelist at Kaspersky Lab, an anti-malware company with operations around the globe. He is taking a leadership role in developing the company's online community initiative around secure content management technologies.

Prior to joining Kaspersky Lab, Ryan was Editor-at-Large/Security at eWEEK, leading the magazine's and Web site's coverage of Internet and computer security issues and managing the popular SecurityWatch blog, covering the daily threats, vulnerabilities and IT security technologies. He also covered IT security, hacker attacks and secure content management topics for Jupiter Media's internetnetnews.com.

Ryan can be reached at naraine SHIFT 2 gmail.com. For daily updates on Ryan's activities, follow him on Twitter.

Related Discussions on TechRepublic

Did you know you can take part in these discussions with your ZDNet membership?
71
Comments

Join the conversation!

Just In

RE: Why did Microsoft wait 7 years to fix SMBRelay attack flaw?
birumut Updated - 5th May 2011
Great!! ! thanks for sharing this information to us!
seslisohbet seslichat
0 Votes
+ -
First off, does anyone proof-read these posts? Multiple typos/grammatical errors make it look like this was rushed out... Anyway.

Mentioning the token-kidnapping issue makes me wonder if Ryan is sour that his patch prediction (on Twitter) was wrong?
0 Votes
+ -
Contributr
prediction
Ryan Naraine 12th Nov 2008
It was more of a hope than a prediction.

_r
0 Votes
+ -
So what was your solution?
GuidingLight 12th Nov 2008
patch the vulnerbility in 2001? That effects everybody's network.

How do you fix that issue then?
0 Votes
+ -
Fix it!
TripleII-21189418044173169409978279405827 12th Nov 2008
There was a fix, it was fixed, simply put, MS dug their own hole by integrating too much into the OS making it VERY HARD to fix the problem, which is at best, an excuse.

TripleII
0 Votes
+ -
I agree with your assessment
914four 12th Nov 2008
The kernel in NT 3.1 was only 64k, but it has grown exponentially since then as more and more is added. Somewhere along the way Microsoft got lost...
0 Votes
+ -
Erm ... nope!
de-void-21165590650301806002836337787023 13th Nov 2008
The kernel ... the core of the Windows OS ... the stuff that runs in Ring0 ... has indeed grown.

It's grown to support 64-bit CPU's, NUMA architectures, provide better scalability and supportability and to better expose a pluggable architecture for device drivers (e.g. graphics, network, etc) enabling new drivers to be added without requiring the OS to be recompiled and redistributed.

The Kernel, however, is not the OS. When you use an OS, you're using user-mode code running in Ring2. This user mode code (Win32) may eventually call into the kernel for important services, but your user-mode apps will rarely know about this.

Vista's disk footprint grew enormously from XP because it includes a MOUNTAIN of drivers that are copied onto your HDD (HDD space is cheap and plentiful) so you don't have to go find your Vista install disk every time you plug in a new device.
0 Votes
+ -
Did you get it?
daengbo 13th Nov 2008
Since he referenced the NT 3.1 kernel as 64KB, I'm pretty sure he knew that the kernel wasn't the OS. The 3.1 OS was significantly larger than that. Did you just miss his point completely?
0 Votes
+ -
Still doesn't change the the issue
AllKnowingAllSeeing Updated - 12th Nov 2008
if integrating too much into the OS making it VERY HARD to fix the problem was the issue, it still doesn't change the fact that there wasn't an easy fix.

Like building 30 walls in front of your plumbing: if a leak is found, it doesn't matter why those other 29 walls were built, the problem is that they're still in your way, keeping you from easily fixing the plumbing.
0 Votes
+ -
That depends.
914four 14th Nov 2008
If the walls were built to make it more difficult for you to hire another plumber then they are relevant.
0 Votes
+ -
One Size Fits All
Yagotta B. Kidding 12th Nov 2008
patch the vulnerbility in 2001? That effects everybody's network.

The only way that a fix would affect "everybody's network" would be if Microsoft themselves depended on the vulnerability.

In which case, MS could remove the dependence first now, couldn't they?

On the other hand, if it was a matter of "some user applications depend on the vulnerability" then just leaving it there resulted in making the whole mess worse.

The rational approach would have been to take a multi-step plan:
1) Remove MS dependence on the bug. Publish the roadmap.
2) Add a fix, with a switch to enable the fix. Off by default.
3) Make the switch disabling the bug on by default.
4) Remove the bug for good.

I'm having a really hard time seeing that course lasting seven years. Considering all of the regressions that MS has dropped on the world without nearly this agony, it's hard to believe that they've been losing sleep over this one.
0 Votes
+ -
Well, they were busy
914four 12th Nov 2008
creating DRM for Vista. They got around to it eventually...
0 Votes
+ -
You do know what SMB is, right?
de-void-21165590650301806002836337787023 13th Nov 2008
SMB is the TCP of enterprise networks. SMB is a networking protocol used by Windows to allow you to load & save files from/to network shares, allows Outlook to talk to Exchange, etc.

The original solution to this issue was to modify every app that communicated via the network. That includes not only MS's apps, but also every 3rd party app, service and system.

Now, while the vulnerability was identified around 2001, note that the actual exploit didn't arrive until 2007! That gives you some idea about the difficulty with exploiting this issue.

Now imagine the complexity of fixing it - fixing an exploit is MUCH harder than creating the exploit itself!

That MS took the time to fix this without causing a massive worldwide multi-vendor patchin effort is an amazing feat for which they should be congratulated, not pilloried.
0 Votes
+ -
Get real
fr0thy2 18th Nov 2008
SMB was Microsoft's attempt to own networking through Windurs client install base. It's simply ridiculous that we live in an environment where a Corporation believes it is ok to behave that way, which results in these problems ...

What price greed?
0 Votes
+ -
You don't....
Sleeper Service 12th Nov 2008
...when it gets killed by every firewall - including Windows firewall - and can therefore only be run internally at which point the corporate anti-virus nukes it.
0 Votes
+ -
Twitter?
Resuna 14th Nov 2008
Why should anyone care what happens on twitter? Make as much sense
to declare war over a water-cooler comment.
0 Votes
+ -
Statistics
Yagotta B. Kidding 12th Nov 2008
Keep in mind, issuing a patch for these bugs really screws up their comparative bug statistics. As long as they just leave the old bugs unfixed, they have much better time-to-patch than their competitors do.

So let's not dump on them for fixing the really ancient security holes; it's hurting them pretty badly on the statistics.
0 Votes
+ -
What forest?
kozmcrae 12th Nov 2008
Is the answer staring us in the face? Microsoft is the biggest software house and employs many of the brightest programmers in the World. So why do they lag so terribly in fixing these security holes? The reason they don't to fix the security holes any faster is because they can't.
0 Votes
+ -
Ryan is Archie Bunker
FireThorn 12th Nov 2008
Hey Ryan, since you can sit in your arm chair and criticize everyone so well, why didn't you fix it? Why aren't all the bugs from all the large corporations all fixed - Ryan says they should be! Give me a break Ryan. Your a hack and don't even know it. How about you go take a class at your local community college about programming.
0 Votes
+ -
The answer is so very simple Einstein!
Linux User 147560 12th Nov 2008
How the hell can he fix it if he doesn't have access to the source code? Come on Einstein answer up! Moron, now if it was Open Source your idiotic diatribe would be more accurate... devil
0 Votes
+ -
It's a legitimate question.
ye 12th Nov 2008
Taking seven years to patch a bug is excessive and Microsoft should be criticized for dragging their feet.
0 Votes
+ -
Has WEP been fixed?
NonZealot 12th Nov 2008
Taking seven years to patch a bug is excessive and Microsoft should be criticized for dragging their feet.

No, and it likely never will be. WPA replaced WEP. Now that WPA has been (half) broken, will it be fixed? No because WPA2 has already replaced WPA.

This vulnerability relies on NTLM which is broken in the same way that WEP is broken: it is cryptographically flawed. NTLMv2 fixed that flaw 10 years ago. The people who complain about this one get the same amount of sympathy that I would give someone who complains about WEP being broken.
0 Votes
+ -
Then perhaps...
Stuka 12th Nov 2008
MS should have released an SMB 2, rather than keeping it the same for the last 15 years.
0 Votes
+ -
Um, they did
NonZealot 12th Nov 2008
They released NTLMv2 3 years before this vulnerability was discovered.
0 Votes
+ -
Diid I miss something?
mdsock@... 12th Nov 2008
What does the fix with NTLM2 have to do with anything? Especially if it was implemented 10 years ago? This is a 7 year old issue. And Microsoft apparently was concerned enough about it to issue a patch after all this time. So, obviously, Microsoft doesn't agree with you or your defense of the company. And if there's no workaround on current systems, it's still an active problem.

In any case, upgrading to a wireless networking system that includes something more advanced than WEP is an order of magnitude different than having a vulnerability inside the operating system. Since this would affect XP (still supported to 2014, last I'd heard), 2003 and Vista to a lesser degree, it's hardly a matter of obsolete technology. So comparing this exploit to WEP is a poor analogy. The connection is non-existent.
0 Votes
+ -
NTLMv2 has everything to do with it
NonZealot 12th Nov 2008
Description of SMBRelay

For this reason it's quite difficult to defend against, unless a user blocks port 139 -- which is needed for NetBIOS sessions and therefore not practical for networked boxes -- or by using NTLMv2 which employs 128bit encrypted keys and eliminates LANMAN (NT LAN Manager, or NTLM) hashes for NT clients.

NTLMv2 neuters the exploit.

And Microsoft apparently was concerned enough about it to issue a patch after all this time.

How long will NTLMv2 remain uncracked? It was important to fix this vulnerability before NTLMv2 gets cracked and, like all other encryption method before it, NTLMv2 will eventually be cracked.

Since this would affect XP (still supported to 2014, last I'd heard), 2003 and Vista to a lesser degree, it's hardly a matter of obsolete technology.

All modern OSs support FTP. FTP is hopelessly broken. I guess that means that all modern OSs are obsolete technology then! NT, 2000, XP, 2003, and Vista all support NTLMv2 so these modern OSs are only vulnerable if you enable an obsolete protocol.
It doesn't matter that NTLM v2 exists (or kerberos for that
matter). NTLM is still available as an authentication protocol.
0 Votes
+ -
Should we start banning insecure protocols?
Marty R. Milette 12th Nov 2008
Yes, NTLM is still supported -- so is FTP, SMTP, SNMP, DNS -- need I go on? Your logic of simply 'taking away' any protocol that doesn't meet your security standards would bring the entire network world to a screeching halt.

Secure versions of pretty much every protocol exist -- but again -- you have EXACTLY the same issue as described in the article -- you can't change overnight -- especially when it will break existing applications.
I said:

"NTLM is still available as an authentication protocol."

NonZealots argument is that NTLM v2 was released years ago and therefore the bug in NTLM is a non-issue. He would be correct only if NTLM was no longer available. As it is NTLM is still available in modern versions of Windows. Thus just because Microsoft switched to a more secure authentication protocol the weaker one is still available to exploit. Therefore the existence of NTLM v2 (or kerberos) authentication is irrelevant unless the user intentionally disabled NTLM support.
Though NTLM is now considered inherently insecure as is
WEP. Thus it NTLM v2 was developed. Unfortunately NTLM is
still supported in Windows thus leaving it as an exposure
vector.
0 Votes
+ -
WEP
thx-1138_@... 13th Nov 2008
Schmep!

You're absolutely right.

And yes, but to add fuel to *that fire*, as i'm sure you're aware WPA2 supports AES first and foremost, but the inherent problem is that wireless OEM device support and compatibility is still a concern. It's never helped that MS release new protocols 'carte blanche' with only a smidgen of OEMs onboard as far as compatibility goes.

MS have this irrepressible penchant for introducing new protocols as 'fixes' BUT fail to remove the vulnerable ones first. Which inadvertently leaves MS-partners/enterprise-drone-kind back at square-one - chasing their proverbial tails around looking for system-critical fixes ... cryin' shame
0 Votes
+ -
Perhaps he could have...
914four 12th Nov 2008
...if Microsoft had OpenSourced...
0 Votes
+ -
Isn't fixing it MS' responsibility?
davidr69 12th Nov 2008
Let me see, Microsoft finally found a way to fix it after 7 years. Why would anyone other than MS even try to fix it? How many people have the source code for Windows?

The last time a fix came from a non-MS source, what was the outcome? MS told users not to install it, to wait for the official patch. Would corporations install an unofficial patch? MS would no longer provide support, so what were the options? Only to wait for MS.
0 Votes
+ -
Upon reading this, I started wondering to myself why, if this was such a huge, gaping, serious hole, hasn't the entire Windows ecosystem crumbled from it? After all, the "bad guys" have had 7 years to exploit this and still they resort to trojans. Why bother with a trojan when they can simply use this gaping hole?

The answer? It isn't a gaping hole. While it is still a hole and it needed to be fixed, there are many ways that companies and individuals are protected from exploits through this vulnerability.

1. Admin access is required to use it. Any competent IT department doesn't allow their users to run as admin.

2. NTLMv2 neutralizes the vulnerability. NTLMv2 was released with NT4SP4 in 1998. That's 10 years ago for those bad with math. That's 3 years before the vulnerability had been found.

3. Requires access to port 139. While an argument could be made that blocking access to port 139 is difficult within a LAN environment, there is no reason to open port 139 to the Internet. For consumers behind a router (many have wireless routers) or post XPSP2, port 139 is not accessible from the Internet.

The anti-MS people are going to make this one sound like this vulnerability was the end of the world for Windows. A little thought + 7 years of evidence proves them wrong.
0 Votes
+ -
Why didn't MS pitch these solutions?
davidr69 12th Nov 2008
For point #1, this is simply not true or practical. It does not require much work to get our IT department to give us admin-equivalent access. Since the company has 150,000+ employees, having IT log in to perform any simple install/uninstall of apps is not practical. There are many engineers and developers who need this ability, so it is granted when requested (with approval).

Point #2: why didn't MS tell everyone to use NTLMv2? Obviously, there has to be more to the story than simply "use NTLMv2". I'm sure it would have broken something, or else MS would have offered it as a solution, just like everyone knows to disable SSLv2.

Point #3: the exposure is internal. Our company various products to test system vulnerabilities, both local and remote software. Obviously, there is a real concern of internal users exploiting vulnerabilities.
0 Votes
+ -
Your IT staff needs to be fired
NonZealot 12th Nov 2008
Since the company has 150,000+ employees, having IT log in to perform any simple install/uninstall of apps is not practical.

If your company does not use one of the many tools to centralize desktop management then your IT staff need to be fired for utter incompetence.

why didn't MS tell everyone to use NTLMv2?

How do you know they didn't? The only reason not to move to NTLMv2 is if you are communicating with pre NT4SP4 boxes just like the only reason not to move to WPA2 is that not all devices support WPA2.

Obviously, there is a real concern of internal users exploiting vulnerabilities.

Agreed which is why I specifically mentioned consumers. I also mentioned that port 139 can and should always be blocked on Internet facing servers which radically decreases the ease with which this vulnerability can be used. You need to use some other method to get into the LAN before you can use this attack. Of course, if your users aren't running as admin or you are using NTLMv2 then even internal users won't be able to exploit this vulnerability.


Again, if this was as bad as some are making it sound, 100% of all Windows boxes would have been pwned by now using this and only this vulnerability. I have 7 years of evidence supporting my 3 points above.
0 Votes
+ -
nice post, NonZealot
sagec 12th Nov 2008
I just love it when people just jump on the bandwagon to claim the sky is falling without thinking things through or doing a little homework.
0 Votes
+ -
Welcome to the real world
davidr69 13th Nov 2008
Obviously, you have never worked in a large company. Of course we have desktop management tools, but you obviously lack any experience in environments that consist of engineering, implementation, level 1 and 2 support, etc. When you place a call, who responds? Someone in India that has less knowledge than the caller. Since he wouldn't have admin rights, it would have to get escalated. Should engineers spend their time performing these menial tasks? Welcome to the real world.

Perhaps you should work for my company and train all our "incompetent" staff; i.e., if you are actually any good.

How do I know that MS didn't tell everyone to switch to NTLMv2? How do you know that they DID? I know they didn't because I work at a company which has on-site vendor support full time; how about you?

The 7 years of the alleged "evidence" don't amount to anything now.
0 Votes
+ -
Even if your company works that way (which is horrible security, BTW) the IT dept would NOT have to give the user's normal account admin privileges.

All they have to do is give the user the password to the machine's local admin *account*. Use that account for installing, etc.

The rest of the time they run as normal users. Duh.

While there are (many) better ways to handle things, this would work, and still allow secure daily operation.

Of course, if the user used the admin account to install a "cool" application that also happened to be a trojan--well, with great power comes great responsibility, right?

The user wants admin rights--they take on admin responsibilities--and the penalties for screwing up.

There's a *reason* admin accounts exist. Engineers who don't understand why they have to run with restricted privileges in the first place have no business administering their computer--any more than accountants have any business designing bridges.
I would agree. Plus there were probably few who understood the vulnerability until the anti-MS crowd started publishing the fact. Which brings up another point - why are all these vulnerabilities published so quickly? It's almost like a point of manhood to publish these first. Which just makes things worse.
All boils down to MONEY(M$).
0 Votes
+ -
The Bean counting Mac ad is more funny now
Randalllind 12th Nov 2008
Why spend $$ on fixing when you can ignore it.
0 Votes
+ -
But they did fix it. (nt)
NonZealot 12th Nov 2008
.
0 Votes
+ -
Yeah, like the...
Media-Ted@... 13th Nov 2008
...
7 Year ITch.
0 Votes
+ -
It could have been exploited. Someone could have done something. When someone finds these 'holes' then the patches that MS comes up with are SUPPOSED to fix those holes. It shouldn't be up to the consumer to stick their finger in the dyke for MS until they can come up with a permanent solution.
I know there is no point in saying anything over shoulda coulda woulda's but that still doesn't satify my curiosity as to why it has taken so long for MS to come up with a so-called fix for this exploit. What I have read so far doesn't seem to offer a good enough explanation.
0 Votes
+ -
Did you get an intrusion in these 7 years? NO
qmlscycrajg Updated - 13th Nov 2008
Did you get an intrusion in these 7 years? NO.
So, it's not dangerous.
0 Votes
+ -
did you open port
TedKraan 13th Nov 2008
135-139 to the internet?

It's not dangerous because everybody is using the workaround.
0 Votes
+ -
@ the author: You might work for Kapersky but your analytical and journalism skills suck. Do you think Microsoft purposely held out on a patch? I seriously doubt it. It takes time to do it right and not f up the entire world. Get off their backs, focus your time and energy on other products that don't have a consistent security patch release schedule along with good information as to what is being patched. I have yet to see that from any of Microsoft's competitors.

Report the facts without emotion or prejudice. Stop the sensationalism or stop writing.
0 Votes
+ -
AMEN
dnaetoa 13th Nov 2008
AMEN.
0 Votes
+ -
Did I Miss The Memo?
mikefarinha 13th Nov 2008
I didn't get the memo saying that the world was coming to an end and all our Windows PCs were going to blow-up...

I mean come on... if this vulnerability was so egregious then I'm sure that after 7 years every Windows PC would have been compromised.

Like most security experts... this is another example of crying wolf.
Great!! ! thanks for sharing this information to us!
seslisohbet seslichat

Join the conversation!

Formatting +
BB Codes - Note: HTML is not supported in forums
  • [b] Bold [/b]
  • [i] Italic [/i]
  • [u] Underline [/u]
  • [s] Strikethrough [/s]
  • [q] "Quote" [/q]
  • [ol][*] 1. Ordered List [/ol]
  • [ul][*] · Unordered List [/ul]
  • [pre] Preformat [/pre]
  • [quote] "Blockquote" [/quote]
ie8 fix
Click Here
ie8 fix

The best of ZDNet, delivered

ZDNet Newsletters

Get the best of ZDNet delivered straight to your inbox

Facebook Activity

White Papers, Webcasts, & Resources
ie8 fix
ie8 fix