An unpatched flaw in drivers from ATI creates a means to smuggle malware past improved security defences in the latest version of Windows and into the Vista kernel.
Microsoft is working with ATI on an update which security watchers warn might be far from straightforward to roll-out.
The existence of the security flaw in ATI's driver came to light after developer Alex Ionescu released a proof-of-concept tool called Purple Pill that created an easy way to load and unload unsigned (potentially malicious) drivers on Vista. The utility circumvented new anti-rootkit defences built into Vista by turning off checks for signed drivers.
Ionescu pulled the utility hours after its release after realising that the ATI driver flaw Purple Pill uses, which he learned about in a presentation by Vista kernel security expert Joanna Rutkowska at Black Hat last week, is yet to be patched.
The functionality of Purple Pill is similar to Atsiv, a tool designed by Australian developer Linchpin Labs, as part of a research project into driver signing. Microsoft responded to the creation of Atsiv by revoking its certificate and classifying the utility as malware, much to Linchpin Labs' chagrin. Atsiv had evolved into a project that allowed users of legacy hardware to use their kit on Vista without signed drivers.
Following the same approach for Purple Pill isn't nearly as straightforward because it piggybacks on a security certificate for a hardware driver that's installed in 50 per cent of laptops.
"This can only be described as one of those moments that would make anyone in Microsoft's situation start to sob," writes Ollie Whitehouse, a security researcher at Symantec.
"What ATI is probably going to have to do is get a new certificate, sign fixed versions of all their affected drivers, and release them via Windows Update. Only then can Microsoft get VeriSign to revoke the signing certificate."
All this highlights wider problems in code-signing for Vista. Atsiv showed how easy it was to get any old code signed. Purple Pill illustrates that even signed drivers have bugs.
Symantec reckons the design error in ATI's driver arose as a "short-cut" designed to make software development more straightforward that never got closed up. "You can imagine this came about due to a requirement to extend this core driver with arbitrary modules in ATI's design. However, this has now come back and bitten them, and more so Microsoft, quite badly," Whitehouse notes.
Microsoft is working with ATI to get the driver fixed.
"Microsoft takes the security of its customers very seriously and works with its partners to help ensure that together we provide the most secure computing experience possible. We are aware of an issue reported in an ATI driver that is potentially vulnerable. Microsoft is in contact with ATI to help address this issue and once fixed we will assist in getting it to our customers," the firm said in a statement.
"To the best of our knowledge, Purple Pill was a proof of concept demonstration tool that was available for a very limited time and is no longer available," it added. ®