Well Crud, I Guess We're Back To the Bad Old Days Of Windows Security

ViRGE

Elite Member, Moderator Emeritus
Oct 9, 1999
31,516
167
106
For those of you that have tried the W7 beta, you have no doubt noticed that Microsoft has made some changes to the way UAC operates. It now has 3 different "tiers" of security instead of being a binary on/off system, with the highest tier being equivalent to how Vista works, and the lowest tier (that leaves UAC on, anyhow) does little more than allow the user to continue using sandboxes for Internet Explorer and Gadgets.

In the middle we have tier 2, the default tier. Tier 2 is more lax about security than tier 3/Vista is; it is more lax because it automatically escalates all of Microsoft's control panel programs to full administrative privileges if the user is a part of the admin group, so that they do not get a UAC prompt when adjusting Windows settings. The reasoning for this is pretty straightforward: most of the whining from users about UAC was because it prompted them when they wanted to make system changes, so Microsoft scaled back UAC on the control panel programs.

If at any point that little lightbulb lit up in your head exclaiming "hey, doesn't this open up potential security vulnerabilities?" give yourself a cookie, because you've earned it. The problem with letting control panel programs execute with admin privileges unchecked is that theoretically a piece of malware could exploit this. It's no longer theoretical.

There's an excellent blog up detailing a proof of concept VB scipt that does just this. The script when executed by an administrator, in spite of the fact that it's limited to low-privilege execution, disables UAC entirely without ever informing the user. If this were malware, it would be trivial to then set up a task to drop a malicious payload after the reboot to 0wn the system, as without UAC the user is never informed of any of this.

Worse yet, Microsoft has reiterated that this is by design. Their argument amounts to little more than "well, the user already executed the malware in the first place, so its their fault" which while not entirely untrue, is entirely unhelpful. Under Vista, they would be informed that this program they downloaded is making a system level change and given the opportunity to block it. Users are ultimately responsible for their own security and seldom do the right thing, but I'm not sure how it's good for anyone to make program execution entirely unsafe once again.

Anyhow, I'm rambled on for a bit too long, but I can't say I'm pleased that the potential flaws in W7's UAC implementation are becoming real. UAC under Vista was the best thing to happen to Windows security since NT, and now it seems we're going to throw it all away under pressure from people with brains too small to understand security, and mouths big enough to get whatever they want.:(
 

AnnonUSA

Senior member
Nov 18, 2007
468
0
0
Well don't see the total downside to this since the majority of the people likely to be running without other security measures, are those most likely to click on anything the pops up, or to become totally complacent with just hitting OK to every UAC warning after the first 10 or 20 warnings...

Being a devout hater of Vista, I never really found UAC to be a deal breaker, there were plenty of other things to hate on Vista about, but UAC always reeked of an out for Microsoft in the security end of things. A way to say "well if you got infected" you must have clicked on something you shouldn't have.
 

ViRGE

Elite Member, Moderator Emeritus
Oct 9, 1999
31,516
167
106
Many users are stupid, there's no way around that. But executing a program shouldn't be a death sentence; on any other platform you need admin privileges to make system changes, why should Windows be any different. UAC enforced proper security and gave users a warning specifically when something was going to make system changes, I'm not sure how you would do better than that without denying users the ability to run whatever software they want.
 

VirtualLarry

No Lifer
Aug 25, 2001
56,571
10,207
126
First Software Restriction Policies on XP Pro can be disabled by user-mode apps, and now this. Windows security really isn't looking any better these days with the new OSes.

Time to revert back to XP Pro, running as Admin all the time. At least then I won't get annoyed by false security features. :p
 

Crusty

Lifer
Sep 30, 2001
12,684
2
81
Originally posted by: VirtualLarry
First Software Restriction Policies on XP Pro can be disabled by user-mode apps, and now this. Windows security really isn't looking any better these days with the new OSes.

Time to revert back to XP Pro, running as Admin all the time. At least then I won't get annoyed by false security features. :p

Ah yes, because NO protection is better then SOME protection. Your logic is always spot on. :disgust:
 
Mar 26, 2008
148
0
0
A good Sysadmin will use more than just a Group Policy, i.e MAC, DAC, ACLs, physical deterrents, audting to determine "if, when, where",etc. especially with network resources not just local resources.
 

KeithP

Diamond Member
Jun 15, 2000
5,664
201
106
Many users are stupid, there's no way around that. But executing a program shouldn't be a death sentence; on any other platform you need admin privileges to make system changes, why should Windows be any different.

Maybe I am not understanding what you mean, but according to the article you do need admin privileges for this to flaw to be exploited. If you are logged in with a standard account, you will be prompted for an admin password.

-KeithP
 

mechBgon

Super Moderator<br>Elite Member
Oct 31, 1999
30,699
1
0
Another change to the default UAC setup is that UAC prompts are not handled on the secure desktop by default anymore. I don't like that, and immediately fired up gpedit and changed it.

Microsoft doesn't posture UAC as a full security barrier anyway; in fact they come right out and say it's not. If you want full security barriers, you log off of your Standard User account and log onto your Administrator account to do your Admin duties, so there's no chance of processes from your regular session interacting with the processes you've elevated.

Windows security really isn't looking any better these days with the new OSes.

If it isn't looking any better to you, you're not doing much looking. Here's some study material:

Symantec: Vista breaks about 95% of the WinXP-compatible malware samples they tested

Microsoft's SIR v5: Vista easily beats all other desktop versions of Windows in real-world security

Mac researcher Dino Dai Zovi: Vista > Mac OS X

Dai Zovi, who compromised the OS X system in the first "Pwn To Own" competition, says:

I have found the code quality, at least in terms of security, to be much better overall in Vista than Mac OS X 10.4. It is obvious from observing affected components in security patches that Microsoft?s Security Development Lifecycle (SDL) has resulted in fewer vulnerabilities in newly-written code. I hope that more software vendors follow their lead in developing proactive software security development methodologies.


Try to keep your opinions somewhat reality-based ;)
 

ViRGE

Elite Member, Moderator Emeritus
Oct 9, 1999
31,516
167
106
Originally posted by: KeithP
Many users are stupid, there's no way around that. But executing a program shouldn't be a death sentence; on any other platform you need admin privileges to make system changes, why should Windows be any different.

Maybe I am not understanding what you mean, but according to the article you do need admin privileges for this to flaw to be exploited. If you are logged in with a standard account, you will be prompted for an admin password.

-KeithP
There was a comment on Slashdot I liked that I'm going to repost.
It is also possible to use UAC from a non-administrator account. In this mode you must type a password every time a UAC prompt comes up, instead of just clicking "continue". Few people do this because it is not the default setup and it's even more annoying than regular UAC.
To require users to use standard accounts simply returns us to Vista levels of security, except now it's more annoying than before. There's nothing wrong with a user being an admin as long as you execute all processes without the admin token and prompt when the token is required. Standard users exist to restrict admin rights to only those people that should have them, they are not a security mechanism themselves, and no other OS treats them that way.

And Mech, thanks for pointing out that UAC prompts are not handled on the secure desktop any more. I had forgotten about that, and it's another glaring problem with W7.
 

mechBgon

Super Moderator<br>Elite Member
Oct 31, 1999
30,699
1
0
Call me jaded, but I almost always log on as a Standard User. If something occasionally needs Admin approval, it's not that tough to type the password.

If I'll be doing a substantial amount of Admin work, I can elevate a command prompt once using Run As Administrator, and then execute any amount of Admin stuff from the elevated command prompt.

A "halfway" measure is to run the command prompt as the Admin-class user account using RunAs (not Run As Administrator), in which case the UAC password prompts turn into Continue/Cancel prompts.
 

ViRGE

Elite Member, Moderator Emeritus
Oct 9, 1999
31,516
167
106
Okay Mech, you're jaded.:p

Anyhow, I get your point, but it's an unnecessary amount of effort. There's a way to have complete security without unnecessary hassle for the user, it's called Vista.;)

(Or sudo if you're on Linux/OS X)
 

Crusty

Lifer
Sep 30, 2001
12,684
2
81
Originally posted by: ViRGE
Okay Mech, you're jaded.:p

Anyhow, I get your point, but it's an unnecessary amount of effort. There's a way to have complete security without unnecessary hassle for the user, it's called Vista.;)

(Or sudo if you're on Linux/OS X)

Which by default on most distro's requires you to type in a password ;)
 

Phynaz

Lifer
Mar 13, 2006
10,140
819
126
Originally posted by: ViRGE
Originally posted by: KeithP
Many users are stupid, there's no way around that. But executing a program shouldn't be a death sentence; on any other platform you need admin privileges to make system changes, why should Windows be any different.

Maybe I am not understanding what you mean, but according to the article you do need admin privileges for this to flaw to be exploited. If you are logged in with a standard account, you will be prompted for an admin password.

-KeithP
There was a comment on Slashdot I liked that I'm going to repost.
It is also possible to use UAC from a non-administrator account. In this mode you must type a password every time a UAC prompt comes up, instead of just clicking "continue". Few people do this because it is not the default setup and it's even more annoying than regular UAC.
To require users to use standard accounts simply returns us to Vista levels of security, except now it's more annoying than before. There's nothing wrong with a user being an admin as long as you execute all processes without the admin token and prompt when the token is required. Standard users exist to restrict admin rights to only those people that should have them, they are not a security mechanism themselves, and no other OS treats them that way.

And Mech, thanks for pointing out that UAC prompts are not handled on the secure desktop any more. I had forgotten about that, and it's another glaring problem with W7.

It's been wrong for the last 50 years, that's why you shouldn't do it.

 

ViRGE

Elite Member, Moderator Emeritus
Oct 9, 1999
31,516
167
106
Originally posted by: Phynaz
Originally posted by: ViRGE
Originally posted by: KeithP
Many users are stupid, there's no way around that. But executing a program shouldn't be a death sentence; on any other platform you need admin privileges to make system changes, why should Windows be any different.

Maybe I am not understanding what you mean, but according to the article you do need admin privileges for this to flaw to be exploited. If you are logged in with a standard account, you will be prompted for an admin password.

-KeithP
There was a comment on Slashdot I liked that I'm going to repost.
It is also possible to use UAC from a non-administrator account. In this mode you must type a password every time a UAC prompt comes up, instead of just clicking "continue". Few people do this because it is not the default setup and it's even more annoying than regular UAC.
To require users to use standard accounts simply returns us to Vista levels of security, except now it's more annoying than before. There's nothing wrong with a user being an admin as long as you execute all processes without the admin token and prompt when the token is required. Standard users exist to restrict admin rights to only those people that should have them, they are not a security mechanism themselves, and no other OS treats them that way.

And Mech, thanks for pointing out that UAC prompts are not handled on the secure desktop any more. I had forgotten about that, and it's another glaring problem with W7.

It's been wrong for the last 50 years, that's why you shouldn't do it.
How various OSs handle admin users

Mac OS X: You need to authenticate anything that wants to make system changes
Linux: You need to authenticate anything that wants to make system changes
Vista: You need to authenticate anything that wants to make system changes
W7: Your malware disables security without authentication and then goes hog wild

One of these is different from the rest... :p
 

mechBgon

Super Moderator<br>Elite Member
Oct 31, 1999
30,699
1
0
I see that the researcher ends his article by noting that a Standard User is not affected by this angle of attack. So there's a +1 for using a non-Admin user account as your "daily driver."

I would also be interested in hearing whether his test case would work when the attack is launched via Internet Explorer or its add-ons, in the course of normal web browsing. Recall that IE is assigned the Low integrity level :camera: in Vista and 7, as long as IE is running in Protected Mode. That means it cannot (in theory) affect anything with an integrity level of Medium (stuff running at non-Admin level) or High (stuff running elevated at full Admin level), not to mention SYSTEM or TrustedInstaller.

Obviously, IE and its add-ons aren't the only attack vector available, and he's demonstrated at least one that could work under plausible conditions. It'll be interesting to see what Microsoft decides to do.
 

ViRGE

Elite Member, Moderator Emeritus
Oct 9, 1999
31,516
167
106
I can't imagine it would work under IE, but depending on the malware author's expectations that may not be a big deal. Look at MS Antispyware; it requires someone to install it, and yet it's on countless computers. Of course this just goes to show that you can't save the user from them self, but I also think it's a good example of how malware authors will gladly exploit user and system security if given a chance. If W7 ships like this, it will quickly be part of every malware droppr's installation routine to attempt a silent installation by disabling UAC if it detects W7.

You are of course right about the standard user thing, but that's not going to be the default account type, so it won't make much of a difference. If you're going to run as a standard user, you're equally capable of just setting UAC to level 3 and calling it a day. There are no real differences in protection/security that I am aware of.
 

mechBgon

Super Moderator<br>Elite Member
Oct 31, 1999
30,699
1
0
Here's an update from the Windows 7 engineering team: http://blogs.msdn.com/e7/archi...ack-and-follow-up.aspx

With this feedback and a lot more we are going to deliver two changes to the Release Candidate that we?ll all see. First, the UAC control panel will run in a high integrity process, which requires elevation. That was already in the works before this discussion and doing this prevents all the mechanics around SendKeys and the like from working. Second, changing the level of the UAC will also prompt for confirmation.

I'd be happier still if all UAC prompts occurred on the secure desktop. Yeah, tough crowd tonight :evil: