Microsoft has fixed a long-standing critical Windows bug in its November batch of patches.

Microsoft released just two security updates yesterday, but security experts said both should be installed as quickly as possible.

The MS07-061 update is particularly critical because the flaw it repairs has been seen in attack code already, said Amol Sarwate, manager of Qualys's vulnerability research lab. "This was a zero day [flaw] that was being used in the wild by hackers," he said.

The flaw has to do with the way Windows passes data between applications, using a technology called the URI (Uniform Resource Identifier) protocol handler. This is the part of Windows that allows users to launch applications - an email or instant messaging client, for example - by clicking on a link.

Because Windows does not perform all of the security checks necessary, hackers found ways to sneak unauthorised commands into these links and the flaw could be exploited to install unauthorised software on a victim's PC.

This type of flaw lies in both Windows and the programs being launched and Microsoft had initially said that it was up to third-party software developers to fix the issue. It later reversed this position. These URI problems have turned up in Adobe, Firefox and Outlook Express.

Microsoft's patch is rated critical for Windows XP and Windows Server 2003 users, but the bug does not affect Windows 2000 or Vista, Microsoft said.

The second vulnerability, rated "important" by Microsoft, has to do with Windows DNS (Domain Name System) servers, which are used to exchange information about the location of computers on the Internet. Attackers could exploit this flaw to redirect victims to malicious websites without their knowledge, something known as a "man in the middle" attack.

"All system administrators should look very closely at this vulnerability," Sarwate said. "I would have personally rated it as critical."

Security experts were surprised that Microsoft did not include a patch for a known vulnerability in some Macrovision anti-piracy software that has been shipping with Windows for the last few years. Microsoft has said that it plans to patch the problem and that it is aware of "limited attacks" that exploit this vulnerability to get elevated privileges on a victim's machine.

The bug lies in the secdrv.sys driver built by Macrovision that ships with Windows XP, Server 2003 and Vista, but Vista is not vulnerable to the problem, according to Microsoft.

Macrovision has also published a patch for this problem.

Its a "bit worrisome" that Microsoft hasn't pushed out a patch for the bug, given that Macrovision has already made its fix available, said Andrew Storms, director of security operations with nCircle Network Security, via instant message. "However, [it's] understandable that Microsoft would want to run the patch through its QA [quality assurance] and software release cycles," he added. "Given the choice between the URI bug and the Macrovision fix, enterprise security operations teams would much rather have the URI fix.”