While I first saw this information posted on Leo Laporte’s blog last week, Dailytech has a good write up on the issue and a response from Microsoft on a possible issue that leaves UAC in state that is less secure than some people would like.  The person who details the attack issue even claims that this should vindicate the security in Windows Vista.

Mr. Zheng says the attack is a vindication of Windows Vista, and evidence that the new Windows 7 approach, while more pleasing to some, is inherently insecure.  He states, “This is dedicated to every ignorant ‘tech journalist’ who cried wolf about UAC in Windows Vista. A change to User Account Control (UAC) in Windows 7 (beta) to make it ‘less annoying’ inadvertently clears the path for a simple but ingenious override that renders UAC disabled without user interaction. For the security conscious, a workaround is also provided at the end. First and foremost, I want to clear up two things.”

The flaw, which he calls “blatantly simple” to fix, was raised to his attention by a “security-minded ‘whistleblower.'”  Ignored largely by Microsoft in chatter in its Windows 7 beta feedback, the issue may be present in the retail version of Windows 7 and has been known to many for some time.

Normally Windows 7 is set with the options “Notify me only when programs try to make changes to my computer” and “Don’t notify me when I make changes to Windows settings”.  It uses a security certificate to determine if a program is part of Windows — in other words, changes in the control panel don’t raise warnings as they have a trusted certificate.

The “Achilles heel” as Mr. Zheng describes is that the UAC is a certified program and thus changes to it are also trusted — even if that change is to disable it.  While he admits that he had to “think bad thoughts” to come up with a way of disabling the UAC without directly tricking the user into doing it, he says it wasn’t tough.  He has posted a proof-of-concept VBScript, which uses keyboard shortcuts to select the UAC and then disable it.  The attack works against any user who has administrative permissions (as standard users are prompted for an administrative password when changing the UAC settings).