Slashdot Log In
Microsoft Says Other OSes Should Imitate UAC
Posted by
kdawson
on Tue May 01, 2007 12:28 PM
from the bring-'em-down-to-our-level dept.
from the bring-'em-down-to-our-level dept.
COA writes "Many Vista adopters find User Account Control irritating, but Microsoft thinks it's an approach other OSes should emulate. Microsoft Australia's Chief Security Adviser Peter Watson calls UAC a great idea and 'strategically a direction that all operating systems and all technologies should be heading down.' He also believes Microsoft is charting new territory with UAC. 'The most controversial aspect of Watson's comments all center around the idea that Microsoft is a leader with UAC, and that other OSes should follow suit. UAC is a cousin of myriad "superuser" process elevation strategies, of which Mac OS X and all flavors of Linux already enjoy. The fact is that Microsoft is late to the party with their Microsoftized version of sudo. That's really what UAC is, after all: sudo with a fancy display mechanism (to make it hard to spoof) and extra monitoring to pick up on "suspicious" behavior.'"
Related Stories
[+]
Ask Slashdot: Vista's Troublesome UAC is Developer's Fault? 228 comments
MythMoth wonders: "We've heard all about the pain and discomfort of working with Windows' User Account Control (UAC) switched on, but now Ian Griffiths is explaining that the developers are the problem — they brought it on themselves. In earlier articles we have heard that Microsoft think that everyone should do it like this — Ian does acknowledge that things are better in the Unix world, but is he right? Is the onus now on the developers to help fix a problem that they did not cause?"
Rather than ask the user for permission on every operation, what other ways could Microsoft have improved Vista's security?
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
Obligatory (Score:5, Funny)
Re:Obligatory (Score:5, Funny)
Parent
UAC == *TERRIBLE* Security Idea! (Score:5, Insightful)
As such, users see the prompts as an unimportant nuisance, but soon realize that things don't work unless you click "Allow." Thus, you're training users in Pavlovian fashion to click "Allow" to any damn box that comes up.
Now think about this for a second: when 99% of the prompts you get are harmless, and "Allow" is always the right answer, just how many users will actually read it and apply critical thought when they see the 1% of UAC prompts that warns of actual danger? Almost none of them, even the smart ones. Once you get trained to just click allow, you're going to click it just before your realize "Oops! I didn't want to allow THAT one!"
So if you ask me, UAC is a huge step backwards in terms of security. Microsoft appears to have put almost no thought into it and it's little more than a way of blame-shifting. After all, the USER is the one who didn't click "Deny" the one time in one hundred it would've prevented something bad, so it's *all* their fault. Even though they only did what UAC trained them to do.
Disable UAC now. It's not security; it's blame-shifting.
Parent
Re:UAC == *TERRIBLE* Security Idea! (Score:4, Insightful)
Your point is that people are too dumb to make security decisions, so it's a bad design to require them to make them. Of course, the flip-side of this argument is that unless users are given the opportunity to make a choice, what's available is the same as no choice.
The notion that users can't make good security choices may have some merit, but the idea that disabling UAC is somehow good security advice is backwards- disabling UAC (and therefore running with a full token) is exactly the same as clicking every prompt that comes your way indiscriminately. Ironically, your advice is worse than the problem you're complaining about. OK OK, you *really* just want something better than UAC. Welcome to the club, we all want magical better security.
Security in a world of users who are trained to think that security somehow doesn't involve them will never work. Microsoft helped create that illusion, and it's bitten them hard. You might see this as blame-shifting, but I see it differently: it's pain-shifting. And it's about time. People (and the folks who write their software) have to start being responsible for their own security, and annoying tho it might be, UAC is a step in the right direction. Let's hope we start seeing software designs that don't require elevated privileges, let's look forward to users with a clue about what executing code means. Let's let Microsoft choke a little bit on how much their legacy of interoperability-over-security has cost them.
Parent
Re:UAC == *TERRIBLE* Security Idea! (Score:4, Insightful)
Result: The applications are written to behave properly and not try write garbage all over your hard disk. Proper user-specific configurations are much easier to manage. All is good!
Parent
UAC == *Decent* Security Idea! (Score:4, Insightful)
A lot of programs you install in Vista don't give you the prompt, others do. Some things you do in Vista give you the prompt, others don't. Those installs that are silently passed are signed or don't request to do anything dramatic to the system, and average user doesn't care why or how, he just knows it's trusted. He or she usually got that software from the site of the publisher or physical media (likely too, a publisher who is huge) and he or she knows it's safe. The prompts arise when you get into Control Panel and other aspects of the Windows system where changes could bring failure, but not when copying your personal files around. I notice I get it on my laptop when another program calls a program that isn't signed (Firefox calls an old version of Winrar, because I don't want to buy the new one, and each time it asks me if I'd like to open the file. Not only do I LIKE this, but respect it. Sygate personal firewall conditioned me to this when Firefox was opened by another program - not only does it save the time of loading some advert page, on a DVD maybe, but it kept a few pieces of malware from phoning home. Users can understand this behavior.)
The number one item that can protect the average user is if a prompt arises out of no where. If you are browsing the web and suddenly you are asked for permission to modify your system - when you've done nothing to drive the event - you aren't going to allow it. Sure, when you download and install software you may fly through that prompt, but to the new user, the normal user, you will learn right away that installing software is dangerous. In my corporate IT environment installing any software is forbidden, running software not supplied by IT is forbidden - for a reason. After clicking through a few cancel or allows you may just discriminate a little more when it comes to your actions. Is it security? Not really, but do home users really need that much? Isn't it right to tell them that making or saving a change in the Control Panel can have adverse effects? (and likewise with the other actions?)
It's hard to attack UAC completely because Linux and others have Sudo, Redhat allowed you to escalate to root privileges by simply typing the password and to most new Linux users escalating to root has become a normal exercise. There is all this talk about OS security, but it's all in the hands of the users. To deny someone the ability to take control of their own machine is barbaric - I think we all agree with that statement. We can't lock users out of taking control of those center ring privileges, unless you're the head of IT and those machines are under you "watch". You say it shifts blame, but that is where it belongs, on the user. The help is there in Vista, it spells out the concept of UAC in easy to understand terms. There is no reason a normal user can't take advantage of it. I know many people who still accept cookies on a per request basis (on today's web!) - some people actually want this feature. It doesn't work for the great majority of us, but don't kid yourself and say we aren't completely familiar with idea.
My advice for the soccer moms and grandparents: Don't turn it off. Prompting is good. This is coming from someone who has had a desktop system with the same factory install of Windows XP running since January, 2004 (I un-boxed it June of 2004). I work with what I have, and that system has not only been a workhorse for my Windows desktop software, but runs a ton of GPL software and is enhanced with Cygwin. All together I run 6 machines at home with Debian, FreeBSD, XP Pro, XP Home, Vista (aforementioned laptop) and Windows 2000 Server. Only two of those require an escalation of privileges, at the machine Everything has a place and UAC has a place with those new users going to their retail store and buying a PC for the first time. Years ago people were complaining didn't Windows have a similar mechanism.
Parent
Re:UAC == *TERRIBLE* Security Idea! (Score:4, Insightful)
If/when enough developers do so, they'll remove one of the major constraints against running as an ordinary user and not as an administrator.
Parent
Re:Obligatory (Score:5, Interesting)
Patent #6,775,781 [uspto.gov]
Parent
Re:Obligatory (Score:5, Funny)
Wang; Gang (Issaquah, WA)
Parent
Re:Obligatory (Score:5, Funny)
Parent
Re:Obligatory (Score:5, Informative)
Evi Nemeth herself beat the use of sudo into my head during the Sysadmin Workshop class I took from her in '90. I used to hate it, but now I realize the old bird was right about sudo.
The UNIX world has this crap beat by more than a decade, with plenty of published prior art.
- Necron69
Parent
Re:Obligatory (Score:5, Interesting)
Right, but that is not why Microsoft have the patent. There is no way they would bother trying to enforce it, they wanted it because it gives them one more patent to say "Linux infringes on N+1 Microsoft patents. It isn't legally safe to use Linux."... And then demonstrate how benevolent they are by choosing not to sue you.
Aside: what makes you think 'sudo' dates from 1989? Isn't it more like 30 years' prior art?
Parent
A Brief History of Sudo (Score:4, Interesting)
Parent
Re:Obligatory (Score:5, Informative)
The patent is for a heirarchical security model where there are multiple levels of access not the all or nothing of sudo. Only the most privileged is like sudo, the other intermediate levels have some level of system access, but not all. It's kind of like capabilities, but a lot more limited since each higher level of security has access to all the lower levels. Fascinating and I can see why the patent was granted (I hope there's clear prior art in an MLS system of the day or even VMS, SYSPRV and SETPRV are close, but I'm not sure).
Parent
Re:Obligatory (Score:5, Insightful)
And now it wants everyone to imitate them?
Parent
Re:Obligatory (Score:5, Insightful)
Remains to be seen if Vista will ever achieve enough market penetration to apply such pressures effectively, but still...
Parent
Re:Obligatory (Score:5, Interesting)
I have a collegue (photographer) who bought a new machine with Vista. Had it about a month and called me because he couldn't get Photoshop CS3 to install. We figured out that the problem was that CS3 wants Firefox.exe to close before it will install, which is annoying in the first place because I can't imagine a really good reason a photo editor needs to make modifications to your web browser.
Anyway, despite shutting down FF and even rebooting CS3 always told him it was running. Turns out he had some variant of a Poison Ivy trojan than resulted in a persistant Firefox.exe process. While he may well have clicked past a UAC prompt in the process of letting this trojan get in Vista still didn't stop it, his AV software didn't detect it, and neither did Windows Defender. While it took a CS3 install to alert him to a problem the very fact that most bits of Windows software all want to modify your registry, play with your browser settings, etc., is why he let it infect him in the first place.
If you can't stop that stuff with 3 layers of software and who knows how many user prompts then something has to change. It isn't going to be the user.
Parent
Re:Obligatory (Score:5, Informative)
Parent
Re:Obligatory (Score:4, Interesting)
Parent
Or not? (Score:5, Insightful)
Re:Or not? (Score:5, Interesting)
I'm a card-carrying Mac cultist, but I really can't agree that the root password prompt in OS X is well designed. It could easily be severalfold better if they tried. For starters, it's all or nothing, with insufficient information. The little detail dropdown arrow should open up to an elegantly indented list of what privileged actions the app intends to do. Copy a plugin into /Library/foo? Install a kernel extension? Delete all user documents?
Also, if memory serves, there are still situations where an installer app is allowed to simply take root access for itself without asking. Only Lord Steve knows why no one has abused that yet. And MAC on Mac awaits its Leopardly debut...
Parent
Re:Or not? (Score:4, Insightful)
These errors are long gone. In fact, they are gone since the introduction of MacOS X.. in 2000!
And it's not like the hexadecimal code in a blue screen was that helpful. Yeah, you know it's a driver that caused it.. so what? I knew that before the bsod!
Parent
Re:Or not? (Score:5, Informative)
If you think sudo requires a "black desktop", then your knowledge of Linux is at least 10 years out of date.
Parent
Hello Microsoft (Score:5, Funny)
Re:Hello Microsoft (Score:5, Insightful)
Parent
Re:Hello Microsoft (Score:5, Interesting)
Repackage those programs into msi installers using wininstall (or admin studio if your boss will spring for it). Set permissions on files/directories with a machine startup script using cacls and set registry permissions via group policy or the command line. You can find out where the programs are trying to write with process monitor by sysinternals.
Students in my labs log on as guests and all of the crap software they have to run works just fine. It takes a lot of work up front, but once you get a piece of software repackaged and proper permissions script worked out, you can deploy it using GPOs and never have to think about it again. Most of my labs, I have not visited in over a year.
Parent
Special Reset Switch for that (Score:5, Funny)
In order for the setting to take effect, you have to make sure to press the switch while the computer is running. We've found that using a steel coat-hanger wire (be sure to sand the paint off, first, you don't want it getting into your computer!) passed in through the vent holes in back works well.
Parent
Re:Special Reset Switch for that (Score:5, Funny)
Parent
sudo (Score:5, Funny)
Re:sudo (Score:5, Funny)
make: *** No rule to make target `me'. Stop.
Parent
Re:sudo (Score:5, Insightful)
Off-topic? Parent was likely referring to this gem [xkcd.com]
Parent
Call Theo! (Score:5, Funny)
news flash (Score:5, Insightful)
Re:news flash (Score:5, Funny)
Parent
Microsoftened? (Score:5, Insightful)
Agreed, other OS's need to copy UAC (Score:5, Insightful)
Hell, they should make them appear so often people completely ignore their content and just blindly click "OK" or "Allow". Yeah, that's the ticket...
Re:Agreed, other OS's need to copy UAC (Score:5, Insightful)
Exactly.
I translated the microsoft speak as "We suck... so everyone else should too! Cancel or Allow?"
Parent
Ironic (Score:5, Insightful)
Translation of story title... (Score:5, Insightful)
Make me a sandwich! (Score:5, Funny)
Patently obvious motivation. (Score:5, Insightful)
Translation: "If we can get all the other operating systems to follow our lead, we can claim some sort of patent infringment on 'em."
> The fact is that Microsoft is late to the party with their Microsoftized version of sudo. That's really what UAC is, after all: sudo with a fancy display mechanism (to make it hard to spoof) and extra monitoring to pick up on "suspicious" behavior.'"
The fact that Microsoft is late to the party is what makes it a patent trap. If it were just sudo, it wouldn't be patentable. When it's "a method for controlling process elevation, comprised of (sudo) and (a fancy display mechanism) and (extra monitoring)", it becomes patentable.
Microsoft is setting a trap for future patent lawsuits. Deny or Allow?
You can tell your locked down DRM laden OS... (Score:5, Insightful)
Almost right (Score:5, Insightful)
I would say (and many here would agree) that UAC is a half-hearted, bad copy of sudo. sudo requires authentication and only for actions that require elevated privileges (like changing key system files). UAC annoying asks the user to verify suspicious behaviors to ensure that is what he or she really wants to do. Really UAC is an attempt at MS to shift the blame the user for their somewhat insecurity architecture. When something does go wrong, MS can blame the user saying it was the user's duty to verify their actions.
Microsoft does have a point... (Score:3, Funny)
UAC isn't a bad idea, just one taken waaay to far. (Score:5, Insightful)
The problem of course is that Microsoft went crazy and decided to lock down EVERYTHING. To the point where it's just plain annoying running the OS with it on. I tried it for a couple weeks just to see if I could get used to it. There's a tendency for people to crave the old way of doing something not because it's better, but just because that's what they're used to. I did eventually decide UAC was more trouble than it's worth, and disabled it.
I guess I tend to agree with the theory that UAC wasn't really real security, but about putting the blame more on the user. Microsoft can just claim "Well, you DID disable UAC didn't you?, so it's not our problem."
I'd Read the Article, but... (Score:5, Funny)
Microsoft Says Other OSes Should Imitate UAC... (Score:5, Funny)
You can't win.
We should go beyond sudo (Score:5, Interesting)
Modern desktop class OSes should have sandbox _templates_, with apps being allowed to "suggest" a template.
Then if an app claims to be a "plain old screen saver", it only gets "plain old screen saver" rights - which means no network access, no access to the user's files etc.
If it claimed to be a "standard network game" then it gets different sort of access - file system access to its own "app specific data folder" in the user's home directory, access to full-screen graphics, sound _playback_ (not recording[1]), limited network access (as per requested).
If some flash applet "game" somehow requires "full administrative system privileges", go figure...
[1] Only a few apps should be allowed to record sound - stuff like skype, voice chat app for games. Your word processor should not be recording sound. The O/S should handle the voice control stuff if you like that sort of crap. And by default you may not wish to allow an app to record sound while backgrounded or just sitting in the "systray".
Finish out the quote please (Score:4, Insightful)
And then we sue them.
Re:UAC isn't "sudo" (Score:4, Informative)
runas
From the command line.
Let's ding them for their legit flaws, not stuff we make up.
Parent