Microsoft says the User Account Control (UAC) feature in Windows Vista isn’t intended to set security boundaries, after all.
The message is attracting criticism from security experts, one of whom said it made features such as UAC seem like nothing more than a "joke”.
The most direct communication about UAC to date comes from Mark Russinovich, a Technical Fellow in Microsoft's Platform and Services Division, who joined the company when it bought Russinovich's Winternals Software. Russinovich is a noted developer of Windows utilities and is credited with being the first to discover the rootkit in Sony BMG's copy-protection software.
In a Microsoft TechNet blog post, Russinovich explained that Vista features such as UAC or Protected Mode Internet Explorer that are dependent on limited user privileges - which Microsoft calls Integrity Levels (ILs) - are designed to allow some IL breaches.
"Vista makes tradeoffs between security and convenience, and both UAC and Protected Mode IE have design choices that required paths to be opened in the IL wall for application compatibility and ease of use," he wrote.
Because the boundaries defined by UAC and Protected Mode IE are designed to be porous, they can't really be considered security barriers, he said. "Neither UAC elevations nor Protected Mode IE define new Windows security boundaries," Russinovich wrote. "Because elevations and ILs don’t define a security boundary, potential avenues of attack, regardless of ease or scope, are not security bugs."
He said Microsoft had communicated this in the past, but that the point needed reiterating.
According to Russinovich, a security boundary is a barrier through which code and data can't pass without the authorisation of a security policy.
UAC and integrity levels were not intended to guarantee that processes with higher privileges are protected from compromise by lower-level privileges, but rather as a way of changing the way Windows software is developed, Russinovich said.
"If you aren't guaranteed that your elevated processes aren't susceptible to compromise by those running at a lower IL, why did Windows Vista go to the trouble of introducing elevations and ILs? To get us to a world where everyone runs as standard user by default and all software is written with that assumption," he wrote.
Microsoft's drive is to get users off of administrative accounts and onto those with limited privileges, even if the new arrangement isn't water-tight from a security point of view, Russinovich said.
"The elevation and Protected Mode IE sandboxes might have potential avenues of attack, but they’re better than no sandbox at all," he wrote.
His comments followed a lengthy analysis of UAC and its shortcomings by hacker Joanna Rutkowska, who said she was surprised by Microsoft's dismissive attitude to bugs in UAC's implementation.
"Is this supposed be a joke?" she wrote. "We all remember all those Microsoft statements about how serious Microsoft is about security in Vista and how all those new cool security features like UAC or Protected Mode IE will improve the world's security. And now we hear what? That this flagship security technology (UAC) is in fact… not a security technology!
"If Microsoft doesn't change its attitude soon, then in a couple of months the security of Vista (from the typical malware's point of view) will be equal to the security of current XP systems (which means, not too impressive)," she wrote.
In her analysis, Rutkowska had two main criticisms of UAC: that it forces all installer programs to be run with administrative privileges, and that it allows certain IL breaches. She considered the first problem to be an understandable design decision, but said the second was simply a bug in UAC implementation.
Rutkowska was generally positive about UAC, however, calling it a great improvement over Windows XP's security model. She disagreed with the most common criticism of UAC, that its notifications are too intrusive, saying that after the first few days she only saw one or two notifications a day.