eWeek Microsoft Watch
Advertisement
Advertisement
April 4, 2007 6:35 PM

ANI Patch: The Day After



Microsoft's release of the patch for the animated cursor—or ANI—vulnerability isn't the end of the story. More chapters will unfold as the company answers why the patch took so long to develop, as so many other flaws are fixed, and as IT organizations grapple with deploying an out-of-band patch.

The ANI vulnerability rose to urgency near the end of March, when the first exploit code appeared and reappeared again and again. Within days of the first exploit, ANI posed such serious risk that Microsoft instructed end users to read all e-mail in plain text.

But while exploits appeared about a week ago, Microsoft had known about the vulnerability since mid-December. Why did the patch take so long?

The ANI vulnerability bears striking similarity to the WMF (Windows Metafile) bug that squashed some Microsoft researchers' 2005 holiday and 2006 New Years. Both flaws affect the Windows graphics subsystem—or GDI—and were exploited without patches being available.

Similarities are elsewhere. Microsoft's ANI patch fixed six other flaws, all affecting GDI. The ANI patch also covers the WMF Denial of Service Vulnerability (CVE-2007-1211) reported to Microsoft by iDefense; the EMF Elevation of Privilege Vulnerability (CVE-2007-1212) reported to Microsoft by Shaun Colley of NGS Software; the Font Rasterizer Local Elevation of Privilege Vulnerability (CVE-2007-1213) reported by Thomas Phinney of Adobe Systems; and the GDI Incorrect Parameter Local Elevation of Privilege Vulnerability (CVE-2007-1215) reported by Sergey Svinolobov.

ANI also affects Windows Vista, raising concerns that other GDI problems, perhaps going back years, will later be discovered. Security provider Determina, which warned Microsoft about ANI back in December, has a blog post showing how the flaw can affect Vista.

In a late-day blog post yesterday, Mike Reavy, a program manager with Microsoft's Security Response Center, explained some of the forensics involved with developing a patch. He also revealed why the patch process took so long: GDI.

Changes to GDI deeply affect Windows and also third-party applications and device drivers. One GDI vulnerability also can require others to be fixed, as was the case with ANI.

Test, Test, Testing
Microsoft engaged a fairly lengthy testing process, as it did with WMF, to mitigate potential compatibility problems. Reavy explains:

"The update modifies functionality that is pervasive and core to the operating system, both in graphics rendering, as well [as] kernel mode operations. So extensive testing was performed, and that process involved hundreds of folks in multiple teams worldwide to ensure as complete coverage as possible. In this case at one point our testing had uncovered over 80 potential issues with the update that were investigated and resolved."

Reavy didn't clearly say how long Microsoft took to develop the ANI patch. I know that for WMF, Microsoft had a patch within 24 hours after confirming the flaw. But compatibility testing delayed release of the patch. Still, the delay for WMF was a couple weeks, while ANI took nearly four months from vulnerability notification to patch release.

Michael Cherry, Directions on Microsoft lead analyst for Windows and Mobile, praised Microsoft for stepping forward and releasing the patch early. Reavy indicated that Microsoft had planned to issue the fix on April 10, during the normal cycle of patches.

"I think the security response center in general does a pretty good job," Cherry said. "Here they faced a dilemma: Release a patch out of band, as they like to call it, and force two patch events in a single month, or live with a publicly circulating—and therefore growing—threat. I think this is exercising the sort of judgment we need to see them make."

In my discussions with members of Microsoft's Security Response Center, minimizing patch impact is one of the group's top priorities. By revenue, businesses are Microsoft's biggest customers and the ones potentially most affected by a security fix. GDI changes could break many different applications because of the pervasive use of the graphics subsystem.

My colleague Larry Seltzer questioned the sensibility of releasing seven patches together. He wrote in a blog post yesterday: "The ANI patch should be deployed quickly, as soon as possible. By including it with this many other fixes they make it harder to test."

He makes a valid point, if minimizing patch impact is a priority. But Reavy sees things differently: "We fixed seven reported vulnerabilities as well as other issues found through internal investigation, instead of asking customers to deploy multiple fixes for the same set of vulnerabilities," he wrote his blog post.

"Perhaps they should have left the rest of the update for next week," Seltzer said.

For Curtis Edwards, director of IT director for Pottawatamie County, Iowa, neither option would matter.

"We usually will not install a patch right away and take a wait-and-see attitude," he said. His organization hadn't installed the patch, ahead of testing. Even after concluding testing, the county would "roll out [the patch] in groups to mitigate risk."

Timing of the patch, one week before another round of them, had no affect on Edwards' deployment plans.

"I suppose if a company was that worried about two patch cycles they could hold it a week," Cherry said.

Measure of Success
The ANI patch will succeed or fail by two measures: fixing the problem and doing so with minimal negative impact. If the latter proves true, Microsoft can more confidently stand up for the lengthy testing process.

So far, early signs are cautiously favorable for Microsoft. While SANS is reporting some problems, they have been minor so far.

Microsoft has confirmed one glitch identified by SANS, having to do with the Realtek High-Definition Audio Control Panel. The problem has to do with the control panel not starting, along with an error message upon system startup that says, "Illegal System DLL Relocation."

"Nothing other than the RealTek issue," said Sunbelt Software's Alex Eckleberry—feedback confirmed by other experts.

Nevertheless, SANS reports that other issues are being investigated. Microsoft is asking anyone having problems after installing the patch to call Microsoft Product Support Services at 1-866-PCSAFETY.

"We installed the patch through SUS/WSUS [Software Update Services/Windows Server Update Services]," said Gene Pizzo, network administrator for DACCO (Drug Abuse Comprehensive Coordinating Office), in Tampa, Fla. "So far there haven't been any problems."

But Pizzo took a critical view of Microsoft's "proprietary" technologies that are "wide open for exploitation." He would prefer that Microsoft take a more open-source approach.

I told Pizzo that Microsoft might argue that open source's all-eyes approach would lead to prying eyes of the criminals.

"The criminals seem to be doing a pretty good exploitation job on Microsoft as we speak," Pizzo responded. "The industry would be better off with open source because more good guys would be working to tighten up the code. The criminals will still be there, but more secure code should diminish the criminals' effect on the industry."

Commenters, is he right?

We would like to thank Security Watch's Lisa Vaas for her important contributions to this post.

Related Posts:

TrackBack

TrackBack

http://www.microsoft-watch.com/cgi-bin/mte/mt-tb.cgi/10728

Comments (11)

John McGhie :

Hi Joe:

I'm getting very impatient with this! Nearly three years ago, Microsoft was all over the press with "Secure by Design, Secure by Default, Secure in Deployment and Communications" bleeding-heart stuff.

Now, we have Windows Vista five years late and leaking like a seive. What they said then wasn't true. What they're saying now isn't likely to be true either, now is it.

This thing was never safe to use, and it still isn't.

Finding more inventive ways to say black is white is not the same as fixing the problem :-)

Cheers

The patch broke my app in a similar fashion to the Realtek problem. My business has been in hell for the last two days with a barrage of complaining customers since the error message displayed from the error suggests that customers contact me for and "updated DLL".

I was able to relink my app to avoid the "DLL load order" issue and the problem is eliminated for new customers, but my existing base is still pounding me with the same question even with notices all over my website.

For those of you that call me stupid for my development practices, wait until your working and tested app is broken by the next MS patch. Then see if you feel the same way.

The reliability of your software is actually inversly proportional to the cost.

When you pay a lot, you get crap. But hey, it has to be good because you sent a lot of money on it.

Stop complaining, you got what you paid for.

If you don't like it, do something.
Take it back and demand a refund.
Call support for ever issue, and follow up every othe day.
Swith to a different computer operating system.

Gee, IE and FireFox have issue's, no problem load up Opera, or Konquerer.

You people need to wake up.

I will comment on your closing question: Yes, I believe Open Source makes for better security, but I understand why there is a debate. I analyze software the same way I analyze politics. As a security person I am also a follower of Lawrence Lessig and his "Code is law" suggestion.

There are those who believe in accountable governments, access to information laws, and other such democratic tools to ensure that our governments are working in our best interests. Liberal democracies need to have transparent governments and media to expose problems.

Democracy is never perfect, and there are those who actually believe the benevolent dictators that don't have to disclose "secrets" to anyone are better. Keeping secrets is said to protect us from the "bad guys" by keeping those secrets out of the hands of the "bad guys". The problem is: how do we know that the dictator is benevolent and not themselves one of the "bad guys" without accountability and transparency?

Was the delay in the Microsoft code fix due to the complexities in the fix, or because they didn't consider it important? Is the code really that complex, and if so, why was that design decision made?

Other than a few people internal to Microsoft, we have no clue. On the other hand, everything about Free/Libre and Open Source Software and its developers are out in the open - warts and all -- just like the participants in a democratic country.

Jay :

If you have had any experience in a large scale enviroment with literally hundreds of applications you cant "just use something else".

Every operating system has its flaws minor and major, Linux, Apple, Microsoft etc ALL have their ups and downs.

There will NEVER be a 100% bulletproof OS made, there will ALWAYS be someone looking to poke holes in it when there is so much money to be made by all the thieving idiots of the world!!!

EL :

An open-source approach would be refreshing. In essence, Microsoft would be allowing people to work for free toward the betterment of its' products. Who knows, maybe an open-source approach would eventually lead to a re-written OS that is fundamentally superior to the current offerings.

SR :

Why is it that fixing a security loophole
breaks an API? I assume the full, detailed
API is PUBLISHED. As long as the patched
drivers are still conforming to the API,
what's the PROBLEM? Incompetence?

Couldn't be!

Brent D :

The notion that the good guys will outsmart the bad guys is based on the assumption that both good and bad guys have equal motivation. That's not necessarily true: any bad guy in his basement can look for holes in an OS, then use those holes to make gobs of money. Basement good guys? They get nerd bragging rights. Seems about equal, huh?

Rick :

this latest fix caused one of the machines at our office to experience a BSOD. Upon reboot, MS error reporting system pointed to a possible solution, update the third party video driver, NVIDIA. Upon installation of the updated video drivers, the system still experienced BSOD. So what's left uninstall the FIX. Hope it works. What happened to the typewriter....???? ;)

Commenter :

No, If the following statement were correct then FireFox would not have an issue. People will complain no matter what course you take.

"The criminals seem to be doing a pretty good exploitation job on Microsoft as we speak," Pizzo responded. "The industry would be better off with open source because more good guys would be working to tighten up the code. The criminals will still be there, but more secure code should diminish the criminals' effect on the industry."

Rigorous testing is, in my humble opinion, why issues should not be addressed 4 months after the initial warning and around the time victims are suffering and yelling out for patches to replace their binary blobs. That is why I find it hard to trust proprietary software. And what about the patch counts Microsoft raves about? These 'hidden' flaws that are swept under the carpet until it's too later simply demonstrate the /obscurity/, or secrecy, gives a false and bogus sense of security. Jeff Jones' figures may explain why so many patches address _0-days_ .

Post a Comment

 
 


RSS Syndication

Advertisement
Advertisement
Microsoft Watch     Contact Us | Advertise | Site Map
Ziff Davis Enterprise