On The Insider: Britney's Bikini-Clad Top 10
BNET Business Network:
BNET
TechRepublic
ZDNet

October 19th, 2009

Microsoft: Human error caused critical SMB2 vulnerability

Posted by Ryan Naraine @ 9:35 am

Categories: Adobe, Arbitrary Code Execution, Browsers, Complex Attacks, Data theft, Denial of Service (DoS), Exploit code, Flash, Hackers, Malware, Microsoft, Mozilla, Open source, Pen testing, Punditocracy, Responsible disclosure

Tags: Analysis Tool, Vulnerability, Bug, Microsoft Corp., Humans, Microsoft Windows, Microsoft Windows 7, Productivity, Operating Systems, Security

Microsoft is blaming human error for one of the critical SMB v2 vulnerabilities that exposed Windows users to remote code execution attacks and argues that it’s near impossible to catch these types of bugs with existing code review tools and techniques.

According to a post-mortem of the issue by Redmond security guru Michael Howard (right), the company detected the vulnerable code “very late” in the Windows 7 development process but argued that there are no static analysis tools or SDL requirements that would spot this type of human error.

“Right now there is no static analysis tool I know of that would point out the developer used the wrong variable, and our analysis tools didn’t spot the potential array bounds problem in part because it’s hard to do so with generate a very large quantity of false positives,” Howard said.

“There is only one current SDL requirement or recommendation that could potentially find this, and that is fuzz testing. In fact we did find it very late in the Windows 7 development process through network fuzzing and that is why post-RC versions of Windows 7 do not have this bug,” he added.

Howard did not explain why the fix was not back-ported to Windows Vista and other vulnerable versions until it was independently discovered and released by external security researchers.

[ SEE: Microsoft security guru: Get fuzzing ]

He said the only other technique that could find this type of vulnerability — an incorrect variable in an array reference — is the process of “very slow and painstaking code review.”

This code was peer-reviewed prior to check-in into Windows Vista; but the bug was missed. Humans are fallible, after all.

Howard said the types of vulnerabilities surfacing in Windows OS code today shows that the mandatory SDL has “whittled away most of the ‘low-hanging’ bugs.”

Of course, I might be proven wrong, but looking at all the bugs over the last year in Windows, the only pattern I can spot is there is no pattern! The majority of the bugs I see in Windows are one-off bugs that can’t be found easily through static analysis or education, which leaves only manual code review, and for some bug classes, fuzz testing. But fuzz testing is hardly perfect, because the malformed data might not hit the vulnerable code path or trigger a failure in the code.

He called on software developers to spend more time on defenses against unknown vulnerabilities, as well as trying to prevent or remove vulnerabilities.

See: MS09-050, SMBv2 and the SDL, by Michael Howard.

Ryan NaraineRyan Naraine is a journalist and security evangelist at Kaspersky Lab. He manages Threatpost.com, a security news portal. Here is Ryan's full profile and disclosure of his industry affiliations.


Email Ryan Naraine

For daily updates on Ryan's activities, follow him on Twitter.

Subscribe to Zero Day via Email alerts or RSS.

Related Discussions on TechRepublic

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

  • Talkback
  • Most Recent of 34 Talkback(s)
You must not work in IT
Because most of those 'microsoft blames' issues
are valid. the onecare situation is a perfect
example. Those users had to have clicked on an
option to delete those files. (how dare the evi... (Read the rest)
Posted by: TheLightcosine Posted on: 11/12/09  (Edited: 11/12/09 @ 09:35) You are currently: a Guest | | Terms of Use
did not explain why the fix was not back-ported to Windows Vista and other  honeymonster | 10/19/09
it's probably the dunderhead factor  Narr vi | 10/19/09
Erm ... you know Hulu isn't owned or operated by Microsoft, right?  de-void | 10/19/09
sure  Narr vi | 10/19/09
The bug may have been very public...  Joe_Raby | 10/19/09
Foolish thinking  Old Techie | 10/20/09
RE: Microsoft: Human error caused critical SMB2 vulnerability  larry@... | 10/19/09
No really?  Ceridan | 10/19/09
RE: Microsoft: Human error caused critical SMB2 vulnerability  Pyrotech_z | 10/19/09
RE: Microsoft: Human error caused critical SMB2 vulnerability  tspencer@... | 10/19/09
It could only possibly be human error...  boomchuck1 | 10/19/09
Human error or no.........  Ole Man | 10/19/09
How is "human error" blaming someone else?  Michael Kelly | 10/19/09
OK, I stand corrected  Ole Man | 10/19/09
Yawn!!  Confused by religion | 10/19/09
human error  mrdt | 10/19/09
Prime examples of 'delegation', those are...  HypnoToad72 | 10/19/09
You must not work in IT  TheLightcosine | 11/12/09
RE: Microsoft: Human error caused critical SMB2 vulnerability  Loverock Davidson | 10/19/09
Human error: End Users  Randalllind | 10/19/09
Humans have always been the weak point in coding!  chaz15 | 10/19/09
Linux has a small Kernel?  Earthling2 | 10/20/09
Shame on you, Ryan happy  MDev@... | 10/19/09
great minds....  rroberto18 | 10/19/09
And snowflakes are made from water crystalizing in the stratosphere,  HypnoToad72 | 10/19/09
RE: Microsoft: Human error caused critical SMB2 vulnerability  Seryy Volk | 10/19/09
laugh  NickNielsen | 10/19/09
Good you confessed to it, Ryan!  promytius1@... | 10/19/09
Good you confessed to it, Ryan!  rgoeken1@... | 10/20/09
lol  ljenux-23043766007667558234416105604265 | 10/20/09
RE: Microsoft: Human error caused critical SMB2 vulnerability  AndyPagin | 10/20/09
Exactly!  john_gillespie@... | 10/20/09
RE: Microsoft: Human error caused critical SMB2 vulnerability  jolumoar | 10/20/09
There is one way...  914four | 10/21/09

What do you think?

SponsoredWhite Papers, Webcasts, and Downloads

advertisement
Click Here

Recent Entries

advertisement
Click Here

Archives

Favorite Links

ZDNet Blogs

White Papers, Webcasts, and Downloads