Slashdot Mirror


Microsoft Designed UAC to Annoy Users

I Don't Believe in Imaginary Property writes "At the 2008 RSA security conference, Microsoft's David Cross was quoted as saying, 'The reason we put UAC into the platform was 'to annoy users. I'm serious.' The logic behind this statement is that it should encourage application vendors to eliminate as many unnecessary privilege escalations as possible by causing users to complain about all the UAC 'Cancel or Allow' prompts. Of course, they probably didn't expect that Microsoft would instead get most of the complaints for training users to ignore meaningless security warnings."

123 of 571 comments (clear)

  1. Of course... by evanbd · · Score: 5, Insightful

    If they'd done this from the start, no one would be complaining. In Linux or UNIX, if a program wants elevated privileges, it requires user intervention. The result is that programs don't expect to have superuser privileges if they don't actually need them, and everyone is happy because the only things that have to be done as root are things you'd expect to require root access.

    1. Re:Of course... by stubear · · Score: 2, Insightful

      They did do this from the start, they just didn't force developers to follow good coding practises when writing apps for the NT platform.

    2. Re:Of course... by tepples · · Score: 5, Funny

      If they'd done this from the start, no one would be complaining. In the era of Windows 95, home PCs weren't considered to have enough CPU and RAM to enforce proper privilege separation.
    3. Re:Of course... by CastrTroy · · Score: 4, Informative

      The problem is that even MS hasn't gotten around to removing all the annoying UAC popups based on stuff in their own interface. If you want to rename something in your start menu, you get 3 prompts from UAC. Same goes for moving or deleting something. I get tons of UACs, and most of them are from Windows itself, not other apps.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    4. Re:Of course... by Z34107 · · Score: 4, Informative

      It does - if you're on a limited account.

      It's only if you're logged in as administrator that you don't have to provide a password - you already did when you logged on.

      Think of it this way - with UAC, even root has to sudo.

      --
      DATABASE WOW WOW
    5. Re:Of course... by Chris+Mattern · · Score: 4, Interesting

      In the era of Windows 95, home PCs weren't considered to have enough CPU and RAM to enforce proper privilege separation.


      Odd that the same home PC at the time, running Linux, had no trouble at all enforcing it.
    6. Re:Of course... by CyberLife · · Score: 5, Insightful

      To extend your point, the reason UNIX systems don't have UAC-style privilege elevation is due to its history. UNIX came into being, and was largely developed, during an era in which virtually all computers were large, multi-user systems that sat in a back room. An administrator would have to be sitting at a terminal 24/7 just in case somebody came knocking -- quite an unreasonable expectation. As a result, programmers had to get used to the idea of restricted abilities.

      With the desktop computer model, the situation is quite different. Classically-speaking, the user is sitting right at the machine and is the only one using it. They are the administrator as well as the user. There is no expectation of security since nobody else is involved. Windows derives much of its architecture and style from this method of computing.

      Modern-day computing is rapidly moving back toward the shared-computer model. This is occurring somewhat on the front-end (e.g. individual user accounts on a desktop machine for different users), but mostly it's happening on the back-end. Internet servers are very reminiscent of the mainframe-era multi-user model. This is why UNIX is such a good fit for such tasks -- it was designed specifically for it, whereas Windows has had to play catch-up. UAC is a good example of single-user thinking applied to a multi-user problem.

    7. Re:Of course... by bflong · · Score: 4, Informative

      Or did you manage to usefully run X11 on a 486 PC with 8 MB of RAM?

      Yes. And before that it was a 386sx 16mhz. Worked fine. With X. And a web server running in the background, serving over dialup w/ static IP. Uphill. Both ways!

      I'm serious about everything but the uphill both ways thing. I used that thing every day for at least a year. I don't remember it being slow, but I imagine it would seem so today.

      --
      Why is it so hot? Where am I going? What am I doing in this handbasket?
    8. Re:Of course... by MichaelSmith · · Score: 4, Interesting

      Odd that the same home PC at the time, running Linux, had no trouble at all enforcing it.


      Then I said it wrong. Please let me rephrase: "In the era of Windows 95, home PCs weren't considered to have enough CPU and RAM to enforce proper privilege separation while running a graphical user interface." Or did you manage to usefully run X11 on a 486 PC with 8 MB of RAM?

      No that doesn't make sense either. How about "windows was never meant to be networked so multi user protection wasn't built in from the start"

    9. Re:Of course... by Anpheus · · Score: 4, Insightful

      Last I remember, registering an account on Slashdot didn't give me a user account on the Linux server.

      UNIX being "such a good fit for such tasks" is completely off-base and irrelevant to the discussion. The software that runs on the OS determines my interactions, and the "privileges" being imparted to registered users, such as allowing me to post a message and have my account name appear above it, are not at all imparted by the multi-user sensibilities of the OS the web server is running off of.

      I guarantee Slashdot could run off Windows or Linux boxes and you or I wouldn't know the difference.

    10. Re:Of course... by fizzup · · Score: 5, Informative

      Period PC hardware absolutely was capable of running X11. I bet quite a few idiots like myself did it at the time.

      First, an 80486 was not really period hardware. The Pentium classic was on the market at the time that Windows 95 came out, clocked at 100MHz. It had been around for almost a year at that speed. This processor is a few percent as fast as modern CPUs.

      Now, if you were to put Gnome or KDE on this hardware, it would be a pig. For me, I ran the Open Look Window Manager. It looks like this, which I think looks a little bit worse than Windows for Workgroups. But, man, is it lean.

      All rolled up, that window manager, using colour depth common in the period, is probably more than ten times faster than a modern desktop. Through the mists of time, I'd say that Ubuntu, with modern hardware, seems a good three or four times faster than that old unix box, which fits.

      For what it's worth, the experience was about as fast as the Sun boxes I had used at university a few years before. IIRC, they were running microSPARC I processors at 40Mhz. I don't remember the RAM, though. They ran OpenLook as well,which is why I used it a few years later. I was used to it.

      You should know that X11 was released in 1987. It's not like they wrote and debugged it by desk checking, yeah? It ran on workstations available 20 years ago. Moore's law says there were five doublings of transistors per unit area between 1987 and 1995. To say that hardware in 1995 was too slow to handle security, protection, and a GUI is false on its face.

    11. Re:Of course... by Anonymous Coward · · Score: 5, Insightful

      That's about it in a nutshell, but it is a little more complicated than that.

      UNIX legacy lies in Multics which was designed to work along side big iron hardware with hierarchical protection domains that provide the mechanism to restrict the access of a process to resources. UNIX, being directly derived from Multics, benefitted from this lineage by having such robust security throughout it's design at the expense of not being able to run on commodity hardware.

      Windows's legacy lies in DOS, which was designed to run on commodity hardware that completely lacked these capabilities. Without hierarchical protection rings the OS had absolutely no ability to enforce any form of resource management. Even if there were enough hardware resources to allow for the OS to have more than a few resident functions in memory, every application still had full and complete control over all of the hardware, and a lot of them made the most of it for performance reasons. It didn't matter how many users there were; security was simply not an option.

      When Windows NT was being developed the correct choice was made to completely isolate the older processes to an emulator. Unfortunately this meant that any process written within the last 5 years ran like garbage. Towards the end of the 16-bit era programmers got very creative in overcoming both the limitations of DOS and squeezing every last cycle out of the hardware. This made emulation exceedingly difficult and prone to failure. Companies were sticking to Windows 3.x rather than jumping to NT because of the failure to support legacy applications perfectly.

      When Microsoft developed Windows 95 they reversed that decision and kept the 16-bit DOS core, both for compatibility with legacy applications (particularly games), development time and performance. This enabled the large DOS library to work without a hitch on Windows 95 at the sacrifice of locking down the security model. Without that programmers were able to and continued to shirk the basic security guidelines set forth by Microsoft and write applications that required full access, if not direct kernel access.

      Microsoft is trying to have their cake and eat it too. UAC is three things:

      First, it tries to prepare the user for life as a non-admin. Everyone is used to being admin, and if being admin means not having to think about security then people will continue to be admin. However, if admin isn't really admin unless you really mean it, then admin feels like a normal user. The disadvantage to this is that users will become jaded to the prompt, particularly at this stage when it's fairly prevalent.

      Second, it does force the application developers to make correct decisions and follow the written guidelines. An application that does so will never, ever see a UAC prompt and will run perfectly fine under UAC, and under a normal user context. These guidelines have been a part of the Windows Logo process since Windows NT was first released. Hopefully, as more application developers catch on the UAC prompts will become significantly more infrequent, and applications that require escalation for specific tasks will follow the procedures to inform the user of this fast and request escalation internally only for that task.

      Third, it tries to silently handle programs that do stupid things by "virtualizing" their actions. The vast majority of applications that require administrative access only do so because they try to write either to the %PROGRAMFILES% directory or the HKEY_LOCAL_MACHINE hive of the registry. So, with UAC enabled, attempts to write to these locations are silently redirected to the user's profile. The task succeeds, the application is happy and the user is happy.

      You could argue that the route Apple took was better. I wouldn't disagree, but these kinds of business decisions are complex. Apple basically gets to say "fuck you" to everyone every ten years and they largely live with it. I'm not sure the people would be so forgiving with Microsoft, even if doi

    12. Re:Of course... by init100 · · Score: 2, Informative

      Privilege separation is not something that requires a fast CPU and a big amount of RAM. Separate protection rings were introduced by Intel's 80286 processor, which was released in 1982. Other architectures probably had something equivalent even before then.

    13. Re:Of course... by Chris+Colohan · · Score: 4, Insightful

      My first PC (replaced my old Amiga...) was a 486DX/33 with 8MB of RAM. Since I was a geek, I installed OS/2 2.0, Windows 3.1, and SLS Linux 0.95.3. (Aside: my mouse didn't work under Linux. So I kludged the driver to make it work, and submitted the patch to Linus. Now my name is in the kernel, on a driver for a mouse that nobody has made since 1992...)

      Windows was snappy and fast. OS/2 lumbered along (it spent a lot of time swapping, since 8MB was not really enough for it). Linux was zippy fast, unless you started X -- X worked, but was pretty darn slow.

      Compared to the Sun workstations at school which each had 10 NCD X-terminals slaved to them, Linux/X on this machine was fast. But compared to everything else, it was slooooow.

    14. Re:Of course... by Lost+Engineer · · Score: 2, Funny

      Of course root exists.

      sudo whoami

    15. Re:Of course... by Weedlekin · · Score: 4, Informative

      "UNIX, being directly derived from Multics, benefitted from this lineage by having such robust security throughout it's design at the expense of not being able to run on commodity hardware."

      Except of course Microsoft's Xenix, which Altos ported to the 8088 in 1982, and SCO offered for the IBM PC in 1983 (MS licensed Xenix source code OEMs and software companies rather than selling the finished product directly to end-users). A lot of people seem to forget that MS were UNIX licensees in 1979 and added several BSD elements to the V7 code they got from AT&T when designing Xenix. All of this happened quite a while before they bought QDOS to satisfy IBM's requirement for a CP/M-like system.

      "Windows's legacy lies in DOS, which was designed to run on commodity hardware that completely lacked these capabilities."

      Windows' legacy is actually the Lisa and Macintosh, which were what inspired MS to write it. It's a single user system because the Mac was a single user system, and MS chose to use DOS as a launcher because they were aiming it at users of machines that already had DOS and software for it on them. If they'd chosen to use a different OS with a different file structure that required different software, they'd have risked pissing off their potential customer base. Selling a graphical shell that ran on top of DOS but offered multi-user and and pre-emptive multitasking on the other hand would have pissed off IBM, whose contract with MS forbade them from offering those facilities in DOS or DOS-based software to ensure the PC didn't compete with their then lucrative minicomputer business. And as neither were necessary for a Mac-like experience, MS decided to take the route that rubbed the least people up the wrong way.

      --
      I'm not going to change your sheets again, Mr. Hastings.
    16. Re:Of course... by quux4 · · Score: 2, Informative

      I just checked an XP system I had running. Of 78 processes, 15 (19%) running as SYSTEM.

      On Vista, 18 out of 64 (28%) running as SYSTEM.

      On an Ubuntu (Dapper) system: 73 out of 119 (61%) were running as root.

      On a Fedora (FC4) system: 117 out of 138 (85%) were running as root.

      On a CentOS system: 76 out of 96 (79%) were running as root.

      All are fairly default systems - no extra-special attention given to lockdown, and certainly none of the services/daemons were changed to run as nondefault users. The FC4 and CentOS systems are servers; the others are desktop systems.

    17. Re:Of course... by yuna49 · · Score: 2, Insightful

      Nor was Windows designed to be multi-user in the first place, either. It's roots were in DOS - one computer, one user. Even running with Netware, the workstations were still fundamentally single-user systems. The NOS controlled access to storage and peripherals.

      Having a GUI interface had nothing to do it.

  2. A difference so subtle, I nearly missed it by starglider29a · · Score: 4, Insightful

    Mac OSX has prompts for authorization also. It doesn't bother me like Vista does. Why not? I didn't really catch it... until I realized that I could ignore the dialog box and get something done before allowing an update/reboot or whatever. Something that simple and the whole problem goes away!

    1. Re:A difference so subtle, I nearly missed it by cnettel · · Score: 4, Informative

      You can configure to be like that with group policy. The official reason for the current default was that no ordinary process should be able to interfere with user input or fake the UI (i.e. showing some other always-on-top window with a different text that moves away just before the click etc etc). If you can accept that, just turn UAC into "same-desktop" mode, while not turning it off completely.

    2. Re:A difference so subtle, I nearly missed it by Justabit · · Score: 3, Funny

      You have come to a sad realization...Cancel or Allow? http://www.youtube.com/watch?v=VKM1cAtAdtQ

      --
      "Persistance is Fertile" - Me. I can quote myself if I want to.
    3. Re:A difference so subtle, I nearly missed it by dwater · · Score: 3, Funny

      never mind that old one...did you see the South Park one youtube referenced after it finished :

      http://www.youtube.com/watch?v=Id_kGL3M5Cg&NR=1

      Now that's funny :D

      --
      Max.
    4. Re:A difference so subtle, I nearly missed it by dwater · · Score: 2, Funny

      and it gets better when Linux joins :

      http://www.youtube.com/watch?v=h4iyksLeo7w&feature=related

      --
      Max.
    5. Re:A difference so subtle, I nearly missed it by p0tat03 · · Score: 2, Insightful

      I run Mac OS X too. The reason why it doesn't bug you that much is because it... actually doesn't bug you that much. The only times you'll ever be asked to sudo is when installing or patching things. There are very few times when doing my normal everyday things that I've ever been asked to sudo.

  3. If this is true... by pionzypher · · Score: 4, Informative

    It is an idiotic approach. Vista is the one being annoying....how could someone predict that end users would blame the applications and not the os that's to blame? Not to mention the whole issue of purposely designing a ui to annoy paying customers, to pressure 3rd parties to change.

    Bad idea all around if this was their intention at design.

    --
    I'll believe in corporations having personhood when Texas executes one... - advocate_one
    1. Re:If this is true... by corsec67 · · Score: 2, Insightful

      Yep, the proper way to do this would be to have UAC like crazy when running an app in debug/test mode, and leave the customers alone. If they want to put pressure on the 3rd party developers, then they should do that directly, and not mess with everyone in hopes that the pressure would kind of go back to the 3rd party developers.

      That assumes that 3rd party developers care at all about the customer experience, which if you look at Norton/McAfee, is very dubious.

      And then give the customers something reasonable, like how sudo works on *nix.

      --
      If I have nothing to hide, don't search me
    2. Re:If this is true... by Shihar · · Score: 5, Interesting

      I don't think that is what he really meant. What MS is trying to do is actually the right thing. MS wants to make it access privileges more like Linux. It wants to make it so that random programs can't run a muck with admin privileges. This is MS's attempt to get application makers to stop requesting privileges that they don't need because they are too lazy to program it the right way.

      Look, I'll be the first to decry Vista as a piece of shit, but despite all of Vista's flaws, trying to restrict access of programs is a good thing.

      Personally, I think that MS is slowly learning. MS is in no danger of losing its business division so long as companies demand backwards compatibility, but in personal computing it is getting kicked around. MS looks old and faded while Apple has a solid product combined with a marketing machine of d00m (Microsoft always sucked at marketing). MS needs to make changes or else it is going to get run over by Apple. Lock in isn't going to last forever in the face of a comparable, if not outright better, product and vastly superior branding and marketing.

      I mean hell, what do you think of when you think of Apple? Shinny plastic with a hipster in a coffee shop. What do you think of when you think of MS? A moldy office.

    3. Re:If this is true... by Anonymous Coward · · Score: 2, Insightful

      Not that I disagree, and I realize bashing Vista is a quick way to feel like you fit in, but how else are you going to pressure third party vendors to not write crappy applications that need admin privileges for stupid reasons? Every Win32 program in existence seems to think it needs to put its settings into an INI file located in the program files directory.

      A big reason for Windows sucking is the third party applications. Look at what XP did with the tray: introduced this little arrow that hides infrequently used icons because every marketing assmunch realized they could brand the user's computer and most of the users wouldn't be able to do anything about it. Meanwhile, it became common to see half the task bar being eaten by the tray and 25 stupid icons just sitting there. (Sun doing that with Java says a lot about the platform.) It is the tragedy of the commons playing out on the user's desktop, and the users are the ones losing. Meanwhile, nobody seems to care, it is business as usual.

      With regard to UAC, I'm curious to what you think is a better solution. Not that I like the current one, but I rate it as the least-worst option that I can think of, other than virtualization.

    4. Re:If this is true... by MRiGnS · · Score: 5, Interesting

      MS needs to make changes or else it is going to get run over by Apple. Lock in isn't going to last forever in the face of a comparable, if not outright better, product and vastly superior branding and marketing. I'm pretty sure MS isn't as afraid of Apple as they are of Linux. You might be able to buy/bribe/whatever stock holders, but almost impossible to buy out GNU/Linux. Even if they would get Linus on their side, there would be some nerds releasing GNU/Xunil (That's the point where you might laugh) just a couple of minutes after the announcement. The only thing they may fear is in fact FOSS reaching critical mass.

      MS is in no danger of losing its business division so long as companies demand backwards compatibility, but in personal computing it is getting kicked around. I wonder what happens as windows7 is supposed to break the binary compatibility
    5. Re:If this is true... by Anonymous Coward · · Score: 4, Insightful

      Remembering your sudo privileges for a while is a huge thing that UAC lacks. MS's UAC could easily be considered a satire of sudo. So, I'm a malware developer - My software sits in the background and waits for you to do something that requires UAC. Then after a few moments, I use the remembered UAC authorization to install my spyware.

    6. Re:If this is true... by toadlife · · Score: 3, Informative

      The same thing is possible in Ubuntu right now.

      --
      I don't always use unix-like operating systems; but when I do, I prefer FreeBSD.
    7. Re:If this is true... by LO0G · · Score: 5, Interesting

      But not with UAC. The normal integrity level application can't sniff anything about the UAC elevation. And the elevation password dialog runs on a separate secured desktop so the malware can't access it.

      Windows is not *nix, the Windows developers learned from the mistakes of sudo.

    8. Re:If this is true... by dhavleak · · Score: 2, Interesting

      I don't think that is what he really meant. What MS is trying to do is actually the right thing. You're dead right.

      I attended RSA and I was present at David Cross's talk today. His intent seemed more to grab the attention of a group of people with high-level to detailed security concepts, and it got the desired result. Unfortunately for him, some reporter/blogger blew it out of context and out of proportion, writes a sensational headline, and the result is this thread. What I got from the talk was "we knew UAC would bug users, but it was still the right thing to do -- we had to fix this bad habit of developing apps to require admin privs when they don't need them -- and this was the only way to achieve that."

      Poor dude will probably get his head bitten off for this little sound bite he worked into his speech.

  4. oblig. by cvd6262 · · Score: 4, Funny

    It appears you are trying to make a snide comment.
    [Cancel] [Allow]

    --

    I'd rather have someone respond than be modded up.

  5. At last - an MS Success! by fatmal · · Score: 5, Funny

    It Worked!

  6. And Microsoft was the biggest offender. by khasim · · Score: 5, Insightful

    You cannot force someone else to follow a particular coding practice when your coders do not do so themselves.

    1. Re:And Microsoft was the biggest offender. by InsertCleverUsername · · Score: 4, Interesting

      > You cannot force someone else to follow a particular coding practice
      > when your coders do not do so themselves.

      It's shamefully pervasive. In my years of developing software for Windows, I've rarely seen other developers NOT running Windows as admin. --basically developing apps. completely blind as to what permissions they may or may not need. (I finally got religion 5-6 years ago after a nasty virus.) Now, every time I log in, I get several ugly little error messages due to HP drivers and other startup bits and pieces not having God access under a normal user account. I think Win developers --QA and project owners too-- need to feel some personal UAC pain.

      --
      Ask me about my sig!
    2. Re:And Microsoft was the biggest offender. by repka · · Score: 5, Insightful

      Any particular examples? Application designed following guidelines of win95 (e.g. Office) will work properly in Vista and will not even require folder/registry virtualization (btw, I assume a lot of effort went into this feature to minimize UAC prompts and it for some reason is rarely mentioned among usual rants about them).

      I consider the opposite: Microsoft spends too much effort for app-compat. Would Win2k have defaulted users to be "restricted", while win98/ME were viable alternatives (i.e. MS could still cash in on their sale) for compatibility, this effort could have been much more successful and, nowadays, when you try to get Intuit Quickbooks to start under limited user (you don't have much choice in college setting), you didn't have to give write access to whole CLASSES_ROOT registry branch (don't get me started on this...).

      So in short, yes, I believe UAC is a great compromise, which forces lousy coders to reconsider their approach to the stuff they ship.

    3. Re:And Microsoft was the biggest offender. by nmb3000 · · Score: 3, Insightful

      You cannot force someone else to follow a particular coding practice when your coders do not do so themselves.

      While what you said is true, it can be simplified: You cannot force someone else to follow a particular coding practice.

      For a variety of reasons Windows users grew accustomed to running as full administrators. Large vendors (aka customers) made assumptions when developing for Windows. These assumptions cause problems for a Windows end user (aka the customer) trying to use the large vendor's (aka the other customer's) program. If the user calls the vendor the answer is "run as admin". This conflict is only bad for Microsoft because the end user will put usability over security every day and the large vendor may get sick of dealing with "Windows bugs" and choose a different OS to develop (develop, develop, develop) for.

      Microsoft was really damned if they did and damned if they didn't. It may well be their own fault (due to the original design of DOS) but unless you have a time machine nobody can change that. It seems to me that, while I find UAC to be annoying as hell, they probably did the right thing. By making it pervasive it will help get the Windows security paradigm changed faster than if it was just a gentle suggestion. At the very least they are trying to put it back on the software vendors to focus on security when creating their products--something good for everybody.

      --
      "What do you despise? By this are you truly known." --Princess Irulan, Manual of Muad'Dib
      /)
    4. Re:And Microsoft was the biggest offender. by morgan_greywolf · · Score: 2, Insightful

      The bottom line is that Microsoft here sounds like a drug addict blaming his problems on everybody else. They are essentially blaming application vendors for their security fuckups. Here's all you, as a logical person, need to know:

      1) Who is the purveyor of the most popular development tools for use on Windows? Microsoft.
      2) Who is the purveyor of the most popular development training materials for use by budding Windows developers? Microsoft.
      3) Who certifies Microsoft Certified Developers? Duh. Microsoft.
      4) Who is supposed to be leading their ISVs by example? Microsoft.
      5) What's the common denominator here? Microsoft.

      Microsoft is responsible for making their platform insecure. They are responsible for training developers to use unnecessary security elevations. And they do it themselves.

      If Microsoft, like a drug addict, would just admit that their past and present security failings are their own fault, they would be one step closer to recovery.

    5. Re:And Microsoft was the biggest offender. by Anonymous Coward · · Score: 5, Insightful

      I doubt it'll happen, though. It seems like the most widely-disseminated "Vista tweak" is how to turn off UAC. Regular users (including your average Windowsland programmer and others who might consider themselves technologically sophisticated) don't see UAC as a feature, they see it as a bug.

    6. Re:And Microsoft was the biggest offender. by Jurily · · Score: 5, Interesting

      Yes, it forces coders.

      However, if you're a windows user, and you just upgraded to vista, you see these warnings/questions. What's your first response?

      1. Man, I wish these crappy coders would learn when to require root access
      2. Stupid Vista... I should go back to XP

      Upgrading the security model from a non-visible one to one that requires user attention can be a bitch. MS has a lot of difficult decisions to make these days.

      Just see http://www.joelonsoftware.com/items/2008/03/17.html.

      (Now, if only someone could show me how to embed nice links here... :) )

      P.S. I use Gentoo.

    7. Re:And Microsoft was the biggest offender. by Silver+Gryphon · · Score: 5, Insightful

      Interestingly enough, Visual Studio 2005 and 2008 under Vista can't access a project stored in a local IIS website unless running as admin. You're explicitly prompted to run the entire session under Administrator account. The alternative is to change your project storage to disk instead of IIS -- maybe not a bad idea, but contradicting their new HTTP based projects of 2002/2003 (as Web services were promoted then too, now web services are actively discouraged for security and scalability reasons. Lessons learned, I guess.)

      Clicking "Run as administrator" is easier and just reinforces the "click through all these dialogs" mentality. I think MS went too far in some of the dialogs; their new push to give detailed explanations is counterproductive, as I don't want to read an essay at that particular time.

      http://msdn2.microsoft.com/en-us/library/aa964620(VS.80).aspx

      Still, I agree -- running as admin is dangerous; Linux and Unix had a great approach from their beginnings. Windows needs to catch up to that, and it'll involve a massive effort on the part of the users and developers. Having Ubuntu Linux prompt similar to UAC helps reinforce the principle of running with lowered privileges, and shows that Windows isn't any more evil now that it has UAC, it's just that things were so non-secure before that it's hard as hell to conform to the new guidelines.

    8. Re:And Microsoft was the biggest offender. by evanbd · · Score: 3, Informative

      (Now, if only someone could show me how to embed nice links here... :) )

      It's a web site. You use HTML. Why most forums insist on making up their own weird and varying markup systems when they're busy using a perfectly good one is completely beyond me, but somehow it's common enough that people expect it.

      (You may have to change your posting options to "HTML formatted." You may then end up wanting to actually include formatting tags in your comments in order to get them to display properly.)

    9. Re:And Microsoft was the biggest offender. by Stormwatch · · Score: 3, Insightful

      Well, links in BBCode are a bit easier and quicker to write than HTML.

    10. Re:And Microsoft was the biggest offender. by VGPowerlord · · Score: 2, Insightful

      While you can blame Microsoft for training issues, Microsoft's own products work just fine as Limited Users.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    11. Re:And Microsoft was the biggest offender. by Anonymous Coward · · Score: 4, Informative

      Posting anonymous because it's off-topic, but as someone that develops community sites, I'll tell you why using HTML sucks.

      The first reason is output validation. Trying to strip out HTML you don't want users to use without mangling the output is very very hard. This happens on Slashdot all the time, when people use less-than and greater-than symbols in their text -- the parser thinks that they're writing HTML that shouldn't be allowed, and it gets stripped. (Preview, blah blah, whatever. It shouldn't happen.) Unless you're running an intelligent auto-correcting validator like Tidy, or you're parsing the document into a valid object model and then deleting nodes that way (both quite CPU expensive options, compared to running some regular expressions against a string), you're almost certainly going to end up with bad code coming out the other end (either because the parser strips something, or because the end user doesn't know how to write valid HTML), which sucks. With a BBCode, Markdown, or similar parser, you can skip over any invalid markup without breaking the output.

      The second reason is convenience features -- instead of making the user write <p><a href="http://slashdot.org/~evanbd">evanbd</a> said:</p><blockquote><p>It's a web site. You use HTML.</p></blockquote>, you can just have them write [quote=evanbd]It's a web site. You use HTML.[/quote], and the parser will convert that intelligently into valid HTML. If you decide down the line that you want to change the code that's outputted for whatever reason, all you need to do is change the application logic and clear out the caches.

      So, you see, there ARE good reasons. And to be fair to the poster, before this new comment system, Slashdot used to say below the post box what HTML could be used. Now, it's much less intuitive about what markup method to use.

      Cheers,

    12. Re:And Microsoft was the biggest offender. by ozmanjusri · · Score: 2, Interesting
      while I find UAC to be annoying as hell, they probably did the right thing.

      I agree in principle, but not in practice. Firstly, UAC presents a minimal barrier to the installation of malware with its "The publisher could not be verified" message.

      Once that's clicked through, and the program's run ONCE with system privs, that software can make any changes it wants to your system, even if UAC is fully enabled. A keylogger to intercept passwords, autostart at boot, wipe the user files, anything, and all without a peep from UAC.

      UAC's value is in protecting users from themselves, not malware authors, and by making the prompts a type of social engineering tool (the irritation factor) intended to get customers angry with devs, instead of MS directly pressuring software developers themselves or with their dev tools, Microsoft has minimised it's value to computer users.

      --
      "I've got more toys than Teruhisa Kitahara."
    13. Re:And Microsoft was the biggest offender. by SerpentMage · · Score: 2, Interesting

      The problem here is not the dialog box. The problem here is Windows security! Windows security with its ACL's is bone headed complicated and it requires administrative rights more times than not.

      I use Linux and while there are times a dialog box pops up, it is not needed as often.

      Here is an example of boneheadedness. I write Excel applications that tie together with .NET. When I need to debug I need to run the Excel spreadsheet AND process to debug in administrative roles... WTF?

      The problem relates to how COM grants you rights to do certain things as a user. And when you are debugging you need more rights... WTF? Under Linux it would not matter because both are running in the context of the user and hence it can be debugged.

      Why these problems on Windows? ACL's....

      --

      "You can't make a race horse of a pig"
      "No," said Samuel, "but you can make very fast pig"
    14. Re:And Microsoft was the biggest offender. by TheRaven64 · · Score: 5, Interesting
      ACLs aren't a problem in themselves. Having fine-grained security is a good decision for a kernel, because it allows you to build other security models on top easily. It's much easier to implement the UNIX security model on Windows than the other way around.

      The problem is the user interface. As the OpenBSD people keep telling us, sane defaults are the most important thing in security. If you default to insecure, or you default to secure, but so irritating people turn off the security, then your system is not secure.

      With respect to your specific problem, requiring elevated privileges for debugging actually does make sense, and I consider it a bug in other operating systems that it's not the case. A process that attaches to another as a debugger can inspect all of that process's memory, and even the contents of registers. If the process is something like your password manager, then it doesn't matter that it stores all of your passwords encrypted on disk and doesn't release them without a pass-phrase if the first piece of malware that gets on to your system can poke around in its memory and read them. Ideally, you would be able to simply flag regions of memory as off-limits to a debugger, but the next best thing is to require elevated privilege. Starting with 10.5, I believe OS X allows a process to set a flag preventing debuggers from attaching, but I've never tried it.

      --
      I am TheRaven on Soylent News
    15. Re:And Microsoft was the biggest offender. by X0563511 · · Score: 2

      Well, unfortunately the internet - and computers in general, are complicated systems. Cry me a river.
      </elitist-bastard>

      --
      For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
    16. Re:And Microsoft was the biggest offender. by Anonymous Coward · · Score: 5, Funny
      "It's much easier to implement the UNIX security model on Windows than the other way around."

      Why in hell would anyone want to implement Windows "security" on Unix?

    17. Re:And Microsoft was the biggest offender. by ZERO1ZERO · · Score: 2, Informative
      Totally spot on. But as long as the input form has some instructions it's neither here nor there e.g. I didn't know till now apparantly

      URL:http://example.com/ will auto-link a URL (enclose in angle brackets). Let's see http://slashdot.org/

      No idea how to escape code blocks to show the exact code though.

    18. Re:And Microsoft was the biggest offender. by cdf123 · · Score: 3, Informative

      setfacl -m u::r,g::r,u:bob:rw,o::000 afile

      There you go, the user (owner) has read, the specific user (bob) has read/write, the group has read, and others have nothing. Looks easy to me...

    19. Re:And Microsoft was the biggest offender. by ThePhilips · · Score: 2, Interesting

      You just add extra group, put the the person in the group, change the group of the file to the new group and make it writable by the group.

      It was proven (mathematically and practically) that UNIX model with ugo+rwx and directories allow one to emulate effect of ACLs. It's not straightforward - but it is possible.

      On other side, Windows has problems because on one side engineers try to implement near perfect solution (e.g. NT). But then when you try to build OS on top of it you find that your simple program which under UNIX takes 5 lines under Windows takes about 200 lines of code.

      UNIX security model isn't ideal: it has compromise included. But thanks to that it keeps many developers sane - and many users happy.

      Windows tries perfect security - but nobody could program for it. Well, except for the SysInternals folks. But this is just exception confirming the rule.

      --
      All hope abandon ye who enter here.
    20. Re:And Microsoft was the biggest offender. by Crayon+Kid · · Score: 3, Insightful

      OK, so it can be done, but let's not get carried away and call it "easy". :)

      --
      i ate crayons when i was a kid and now i have two braincells and the blue ones taste nicer
  7. Microsoft and the United Aerospace Corporation by the_other_one · · Score: 3, Funny

    whatcouldpossiblygowrong

    --
    134340: I am not a number. I am a free planet!
  8. If I had to sudo to run each app in Linux... by Deviant · · Score: 4, Insightful

    I think there is going to be quite a bit of criticism of MS for this but basically you see UAC prompts where you would have to do a su or sudo to get the job done as a starndard user in Linux/Unix. The reason you don't have to do those all the time in Linux is that the application writers do not write their apps to require constant root priviledge escalations. There is one app that I couldn't get working properly in Fedora 8 without running it with a sudo - Nero Linux - and it annoyed me quite a bit.

    MS needs to drag both its users and those who write windows applications along to the limited security model we all need each other to be using for the good of the internet. It was always going to be painful.

    The one criticism that I have of the system/model in practice is the start menu - and that is all MS! I try to organize my start menu and I see several dialogs. I would be much more on-board with only one Cancel or Allow for an operation like that...

  9. Re:At last, a little truth from MS by unlametheweak · · Score: 5, Insightful

    No they didn't design UAC to annoy users. This was a crass statement made by a Microsoft employee. No company would design something to annoy users. This was a poor use of self-deprecating rhetoric that will be exploited to the extreme. It's a dumb statement for a Microsoftie to make, and really dumb for the media to exploit.

    "Stupid is as stupid does", somebody once said.

  10. Not that bad a strategy, really. by danielsfca2 · · Score: 4, Insightful

    I'm not MS's biggest fan. But this isn't the worst strategy ever.

    It's actually pretty logical that if you make running these retarded apps annoying, you can force the vendors to fix them.

    But MS faces a big obstacle in that strategy--the fact that moving back to XP fixes the problem as well, from the user's perspective. And of course, the fact that doing so also makes today's computers 3x more responsive.

    It's a shame... I would love a world where Vista caught on but UAC didn't have to pop up ever unless something truly administrator-ish were really going on. Then all my users could be Users.

    1. Re:Not that bad a strategy, really. by calebt3 · · Score: 4, Interesting

      The hard part is getting consumers to blame developers, too.

    2. Re:Not that bad a strategy, really. by Jacob0531 · · Score: 2, Interesting
      As a primarily Windows user since 1999, I just wish they had introduced UAC (or encouraged limited users more) with XP SP2. Vista's biggest complaint may have been resolved by now. I've wanted to run Windows as a Standard User easily since Windows 2000. Quite honestly, it's been nearly impossible until recently. If what Mr. Cross says is true, it has worked (despite the public backlash against Vista).

      Vista has had many issues (UAC and Drivers being my biggest complaints), but it has been my primary OS since NVIDIA finally released a stable driver back in December.

      It's taken nearly a year since commercial introduction, but it is now a quite stable OS. I haven't seen a system crash since December (previously 90% + due to NVIDIA's drivers), UAC has been virtually non-existent (except for truly system-level changes and BOINC until version 6 is official), and DWM has been truly a blessing since day one (despite the overhead, this was my primary reason fory trying Vista in the first place -- I hardly ever see a stupid wall-of-mirrors or flickering of Windows; and the very few times I do, it's at an app level, not an OS/WM level).

  11. What a half-assed way to go about it. by dpbsmith · · Score: 5, Insightful

    This approach could have worked. But if they really meant for it to work, then developers would have been required to embed usable contact information in the application. When the UAC prompt came up it would explain that this was a result of an action taken by the application, and that if it seemed unnecessary to you, you should click a button and send feedback to the developer.

    It would also identify and tag the particular circumstances so that there could be a option, "don't warn me about this again."

    This latter option would have been particularly useful during the beta phase.

    After a couple of years, Microsoft might then assume that developers had been given adequate warning and adequate feedback, and the option to ignore warnings could have been retracted.

    What Microsoft did doesn't sound as if they serously wanted the approach to work. They just wanted to be able to say that users "didn't want" security, just the way Detroit said for decades that car buyers "didn't want" safety.

    1. Re:What a half-assed way to go about it. by Dogun · · Score: 3, Insightful

      The problem is that the UAC prompt also has to work with legacy applications which don't have contact information. :)

      'don't warn me about this again' - presuming an app was trusted once at install-time, it's just going to go write the 'oh, the user allowed me permanantly, it's ok' setting wherever it turns out that is stored. Then they have no incentive to fix their design issues.

      The problem isn't UAC, it's the fact that windows developers aren't writing for the standard user.

    2. Re:What a half-assed way to go about it. by rastoboy29 · · Score: 3, Insightful

      Worse, I think they  just did it as a CYA strategy, as opposed to trying to find a real solution.  It's an attitude all too prevalent in corporate America.

      Having spent most of my professional life at small companies, when I started working at larger ones in the last few years I was appalled, disgusted, and amazed to see that MOST of the employees spent their time worrying only about CYA, as opposed to doing a good job.

      What a bunch of fucking pussies.

  12. Frustration Detection patent by OMNIpotusCOM · · Score: 4, Funny

    It does make sense, when you think about it, since they've found step 2 and patented a frustration detection system.

    I have to steal this comment from one of the posts from that story, but...

    Step 1: Make frustration and annoying software
    Step 2: Patent frustration detection system
    Step 3: Profit.

  13. Just a typo.... by Naughty+Bob · · Score: 4, Funny

    If this is true.... I think it's just that the story submitter accidentally included the letters UAC in the headline.
    --
    "Be light, stinging, insolent and melancholy"
  14. C:\Program Files\ by WoTG · · Score: 4, Interesting

    This reminds me of the c:\program files\ as a default install folder. I think it started with Windows 95. I read somewhere, years after the launch, that it was specifically chosen to force programmers to handle long file names properly.

    Funny, even now, I usually create a c:\programs\ directory for everything that doesn't have a proper installer. 10 years and counting.

    IMO, the UAC did not have to be as annoying as it is. All they needed was a "allow admin stuff to happen for 5 minutes" dialog so that installing a program would only take one prompt. Too smart for their own good...

    1. Re:C:\Program Files\ by Anonymous Coward · · Score: 2, Insightful

      c:\progra~1\ would be the workaround there, fyi

      Dos programs used to handle it like that with (and my memory is a bit fuzzy here) FAT32 methinks. The legacy is still in there even though the modern cmd.exe can handle long names in quotes. Now, if only they could learn how to properly escape special characters...

      If you're stuck with a browse box and no option to type in the path manually I guess you're pretty much out of luck...I'd kill for decent symbolic linking in Windows, shortcuts are like a bad joke

    2. Re:C:\Program Files\ by tepples · · Score: 2, Interesting

      All they needed was a "allow admin stuff to happen for 5 minutes" dialog so that installing a program would only take one prompt. Had Microsoft made it system-wide like some antivirus utilities do, any malware running in the background could detect that the 5 minutes have started and do its dirty work.
  15. Re:Turning off UAC doesn't require UAC confirmatio by Anonymous Coward · · Score: 4, Informative

    This is incorrect. The registry key in question is protected by permissions and by default requires you to be running as Administrator in order to make changes. If UAC is on, then to get a command prompt, regedit, etc running with Admin rights requires UAC approval somewhere along the line.

    UAC is not about confirming specific actions like changing registry keys. It is about giving Windows permissions to use admin-level privileges. For example, once you allow a command prompt to run with your admin token, it can then launch admin-level tasks without any new prompts.

  16. Like "Program Files" and "My Documents" by flyingfsck · · Score: 3, Interesting

    Microsoft added spaces in system directories to annoy users too I'm sure and specially neglected to make links to network folders work with spaces and left it like that for the past 13 years, to ensure that you cannot copy and paste a spacy network path from Windows Explorer into Outlook and email it to someone else in the company. All that only to annoy their users...

    --
    Excuse me, but please get off my Pennisetum Clandestinum, eh!
    1. Re:Like "Program Files" and "My Documents" by CastrTroy · · Score: 2, Interesting

      Just like they don't give you an option to stretch the wallpaper image without screwing up the aspect ratio. A feature that would take 20 minutes to program, but it's left out, simply to annoy the users.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    2. Re:Like "Program Files" and "My Documents" by brentrad · · Score: 3, Informative

      Before pasting your network link, type <<, paste the link, then >>. Like so:

      <<\\network name\here>>

      Outlook will remove the first < and last >, and turn it into a clickable hyperlink. Not at all obvious, but it is possible to do it.

    3. Re:Like "Program Files" and "My Documents" by El_Oscuro · · Score: 3, Informative

      Putting double quotes around them will work too. Almost as intuitive as vi. I just figured out the quote trick a few days ago, and I have been trying to get this to work for years. Frustrated, I just *tried* it, and OMG it actually worked! Maybe someday, I will be able to enter an outline without Word scrambling my fonts at random intervals...

      --
      "Be grateful for what you have. You may never know when you may lose it."
    4. Re:Like "Program Files" and "My Documents" by brentrad · · Score: 2, Informative

      They finally took the 20 minutes, and fixed that in Vista. For desktop backgrounds, you now have 5 options:
      1) fit to screen (ignores aspect ratio)
      2) tile
      3) center (original picture size)
      4) maintain aspect ratio (stretches to fit screen while maintaining aspect ratio)
      5) crop to fit screen

  17. Just go to the "application vendors" by a_generic_name · · Score: 2, Insightful

    Why not just tell the application vendors to "eliminate as many unnecessary privilege escalations as possible"? It would be an easier way to solve the problem, plus less people would hate their operating system.

  18. Re:At last, a little truth from MS by pavera · · Score: 3, Insightful

    I'm sad to hear that. This was the most logical explanation of UAC's existence I have heard. If you are correct that means MS actually had a different object/goal in mind for UAC, that they actually thought it would improve security, that they actually thought that it WASN'T annoying, that this thing got passed off on multiple levels throughout the dev process as being a) useful, b) a desirable feature, c) accomplished a purpose.

    UAC does none of those things in the real world. It is a horrible security mechanism, it slows down every day usage of most PCs, it causes endless annoyance to users. If this feature was designed solely for the purpose of alerting 3rd party devs to the numerous unnecessary privilege escalations they are using, it almost would be worth it/make sense. If not, it is proof that MS has absolutely no clue what users want, need, or what is a good feature.

  19. Re:Turning off UAC doesn't require UAC confirmatio by figleaf · · Score: 3, Interesting

    Not true.
    I can disable UAC using regedit, using msconfig, gpedict.msc, User Account applet. Each and every method raises a UAC consent prompt.

  20. Microsoft is right this time by Animats · · Score: 3, Insightful

    Microsoft is right. Most applications should never have administrator privileges, not even during installation. It's way past time to tighten the screws.

  21. Good idea, bad implementation by Todd+Knarr · · Score: 4, Insightful

    The basic idea's sound. The problem is that, given the implementation, users view the problem as being UAC and/or Vista, not the apps. After all, the apps work just fine if you turn those annoying dialogs off or go back to XP. If the users don't view the app as the cause of the problem, they won't pressure the app vendor to do anything about it. Idea fails.

    I prefer the Unix approach. The OS doesn't pop up any dialog, or offer the user any choice. If an app does something it doesn't have privileges for, it gets an ENOPRIV returned from that call and isn't allowed to do that. How the app handles it from there is up to the app, but there's no easy way to make the errors go away at the system level (most modern Unixes are set up to make it inconvenient to log in or run programs as root, and only root can install a program setuid-root).

    1. Re:Good idea, bad implementation by Anpheus · · Score: 3, Informative

      Have you used Linux recently? Most programs that receive the lack of permission that are GUI based will ask to run with gksudo or provide a means for you to do so.

      Programs run within the terminal will usually just tell you that you lack permission, please try again.

    2. Re:Good idea, bad implementation by dioscaido · · Score: 2, Informative

      You really think that the better approach would be to switch people to limited user, and let the majority of windows apps fail? Seriously? If people complain about UAC this vocally, they'd certainly complain that nothing runs at all. Or am I misunderstanding your point?

      The goal here is to push windows apps to finally run as limited user. I think with UAC they found a fairly ingenious middle ground -- everyone runs as limited user, but elevating to administrator is very simple (but annoying). Whatever version of windows is around in 5-10 years will likely not need UAC, because the windows app ecosystem will finally be limited user friendly.

  22. Let me fix this for you... by actionbastard · · Score: 5, Funny

    Microsoft Designed UAC to Annoy Slashdot Users.

    There. All better.

    --
    Sig this!
    1. Re:Let me fix this for you... by 140Mandak262Jamuna · · Score: 2, Funny

      Microsoft Designed UAC to allow Slashdot Users to gloat. There. All better. There! Fixed it for you.
      --
      sed -e 's/Chuck Norris/Rajnikant/g' joke > fact
  23. Well..... by Anonymous Coward · · Score: 4, Funny

    Aha! They annoyed me so much that I actually switched to linux. /success

  24. Authenticode by tepples · · Score: 2, Informative

    But if they really meant for it to work, then developers would have been required to embed usable contact information in the application. That's what Authenticode was designed for. But not all developers can afford 2,495 USD for a five-year Authenticode certificate from VeriSign. Microsoft doesn't want to block unsigned applications from running on new versions of Windows, as it would only encourage businesses who rely on unsigned vertical market apps to stick with old Windows.
  25. Re:you, my friend, made an incorrect assumption... by Anonymous Coward · · Score: 4, Insightful

    Because it's much easier to sit on Slashdot and make up bullshit and lies about Microsoft because it's trendy to hate them.

  26. ...who don't listen. by tepples · · Score: 3, Insightful

    Why not just tell the application vendors to "eliminate as many unnecessary privilege escalations as possible"? Because a decade of experience starting with Windows 95 shows that application vendors don't listen.
  27. Printing is irreversible too by Mr2001 · · Score: 3, Insightful

    If some blank paper is in the printer, and a program writes to it without authorization from the owner of the paper, the paper becomes unusable.

    But do you have to enter your root password every time you print? I think not.

    --
    Visual IRC: Fast. Powerful. Free.
  28. Re:Installed for all users? by CastrTroy · · Score: 4, Insightful

    Doesn't matter, I should only get 1 prompt, not 3.

    --

    Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
  29. Re:At last, a little truth from MS by SendBot · · Score: 3, Insightful

    No company would design something to annoy users. I've got two words for you: "alarm clock"
  30. UAC is not a bad idea by pablomme · · Score: 4, Insightful

    UAC is not a bad idea. True, they could have gone the gksudo way and allow a window of time before asking for permission again. And then they could ask for a password instead of getting people in the habit of clicking away past warning windows. But still, it's not a bad thing.

    They also had to stop programs from storing settings and user stuff under the write-restricted "Program Files" folder.

    Now, annoying users intentionally to exert pressure on software vendors is just twisted.

    UNIX/Linux users may want to have a little thought about what things would be like without the SUID facility ('ping', anyone?), and, on the other hand, the security implications of SUID. I was shocked when I read the example at page 249 of the UNIX Haters' Handbook, which illustrates the problem of blindly trusting your PATH with a simple example in which you can trick your system administrator into providing you with a root shell binary. Tried it. It works.

    Not that this has prevented me from ditching Windows Vista in favour of Ubuntu on my laptop (desktop to follow when Ubuntu 8.04 is released).

    --
    The state you are in while your HEAD is detached... - wait, what?
  31. Re:sudo because burning a CD-R is irreversible by msuarezalvarez · · Score: 2, Informative

    Sure. Authorization happens now automagically in any semi modern distro. There's a lot of infrastructure that was developed to handle those situations---and many more, of course.

  32. End result by edwardpickman · · Score: 2, Funny

    Uograde to Vista, Cancel or Allow. Cancel.

  33. Re:At last, a little truth from MS by Mongoose+Disciple · · Score: 3, Informative

    UAC does none of those things in the real world. It is a horrible security mechanism, it slows down every day usage of most PCs, it causes endless annoyance to users.

    This kind of statement has been puzzling to me since I installed Vista on one of my machines, since I don't see UAC pop-ups unless:

    1) I'm installing something new.
    2) I'm running some executable I just downloaded through my web browser, or
    3) I'm running something written in the 90's.

    The first two cases being times I'm glad the prompt is there and the third being more or less acceptable to me since we're talking about 9+ year old software. Often I'll go weeks at a time withotu seeing a UAC prompt.

  34. Re:you, my friend, made an incorrect assumption... by plover · · Score: 5, Funny

    Because it's much easier to sit on Slashdot and make up bullshit and lies about Microsoft because it's trendy to hate them. Oh, it's not trendy. We've always hated them.
    --
    John
  35. totally ineffective by JustNiz · · Score: 2, Insightful

    UAC is totally ineffective as as its one of the first things nearly everyone turns off because its so damned annoying.

  36. Microsoft's Problem by Mike610544 · · Score: 2

    As much fun as it is to bash MS, they have some very difficult problems to deal with.

    One reason for their success is that they never say: you need a certain version of glibc to run this app, or you need some outdated rpm chain of dependencies that conflict with the new version (may god have mercy on my karma.) If it's a Windows program it will run on Windows (sometimes.) I'd say 90% of the badness and kludginess of Windows is because of their desire to not break apps that people have been running since the 3.1/95 days.

    With the kind of resources they have they should be doing a much better job, but I think anyone who's tried to provide backward compatibility in software even in trivial cases will agree that it quickly becomes an unmanageable clusterfuck.

    --
    ... also, I can kill you with my brain.
  37. Difference between Unix and Windows in security by guruevi · · Score: 5, Insightful

    I have been asked and wondering why Microsoft has such a bad track record in security and user access control especially since recent Windows have been built on NT which comes from OS/2 and VMX. According to me it's fairly simple: group permissions. Look at a default Linux/Unix-style installation, you have about 20 groups to start out with. If you're a desktop user, usually you're a member of audio, video, games, cdrom and user. On a Windows machine you're either a User or an Administrator. The way the Linux kernel and it's modules are built, if you need direct access to hardware, you can either be root (not good) or you can access it through it's /dev entry which has group permissions.

    So if you want to play music, you can access the hardware (albeit through a kernel module) by making yourself member of the group audio. In Windows however, if you need direct access, you can either use DirectX or a process (daemon) or become an Administrator so you can get to the kernel. There is no group Audio that has only access to the Audio-part of the kernel. As soon as you need direct access for real-time anything, you can't really add yourself to any group to do so.

    This of course goes way back before desktops were running NT versions (like 2000 or XP). Before, Windows was running on top of DOS, developers could just code directly into the hardware (just load dos4gw), there is no access control in DOS. DOS was also not meant to be running any services or be connected to a network that's where the whole thing with virusses got started, anything that was running could simply request a hook into the BIOS, under the hood, protected memory was regulated with emm386 while Windows 95-ME all used the faster, less secure himem.sys. Microsoft merged together the NT and DOS and made it into 2000 and XP. There were no extra permissions added for desktop users, the pure server model was coded around to allow for desktop speed and real-time access to hardware, never giving any thought that actually running all services that hook into hardware as Administrator would give problems.

    --
    Custom electronics and digital signage for your business: www.evcircuits.com
  38. Microsoft's David Cross by HAKdragon · · Score: 3, Funny

    Well, I guess they really blue that one.

    --
    "Our opponent is an alien starship packed with atomic bombs. We have a protractor."
  39. off topic by martin-boundary · · Score: 2, Informative

    FYI run a muck is wrong. There is no muck. It's run amok.

  40. Re:you, my friend, made an incorrect assumption... by dryeo · · Score: 3, Funny

    I don't know about that. Personally I didn't start hating them until I migrated to the IBM PC in the early 80's. Before that they were just another software vendor.

    --
    https://en.wikipedia.org/wiki/Inverted_totalitarianism
  41. Re:you, my friend, made an incorrect assumption... by PopeRatzo · · Score: 3, Interesting

    it's trendy to hate them.
    It's not just trendy, it's a way of life.

    I think you underestimate the depth of feeling that Microsoft has engendered in much of the technical community.

    If you're a company that makes a product that the majority use, your customers don't just start to hate you, it's something you have to work at for years. It's our nature to become emotionally attached to something that's such a big part of our lives, and the fact that Microsoft has squandered such an opportunity for loyalty and created ill-feelings instead is something that future generations of business students and corporate psychologists will study for centuries to come.
    --
    You are welcome on my lawn.
  42. tag:nagware by Jurily · · Score: 5, Insightful

    What they didn't anticipate though, is people screening out the warnings. Yes, it's important for you, the developer. No, it's not important for the user, who only wants to Get Stuff Done (tm).

    If the same yes/no question pops up every 10 minutes, don't expect a different answer when it says "Do you want to install spyware, adware, a couple of trojans, and [whatever they actually wanted to install]?".

    Remember, users don't read. Not because they're incapable, they have more important things to do.

  43. Microsoft designed Vista to annoy users by thewils · · Score: 2, Funny

    There, fixed it for you.

    In fact, now I come to think of it, Microsoft designed all of Windows to annoy users. I use it and man, I'm annoyed as hell right now.

    --
    Once I was a four stone apology. Now I am two separate gorillas.
    1. Re:Microsoft designed Vista to annoy users by stewbacca · · Score: 2, Funny
      I would say "annoyance" is definitely Microsoft's legacy. Remember Clippy? How about the daily reminder that you have unused shortcuts on your desktop? Ever try to "defeat" Microsoft's attempt to format YOUR Word document the way MICROSOFT thinks it should be outlined? Have you ever tried to use interesting and creative sentence structure, say for artistic endeavors, only to be green underlined? Thanks Microsoft, but I actually WANTED to use the passive voice there. Thanks for your help though!

      Should I really have to hit F5 to refresh my screen after I rename a bunch of files, or is that "annoyance" a feature that actually helps me as a user somehow? Have you ever tried to rename a file that is open? Move it? Is it really that hard to keep a desktop shortcut link after you rename the original file? Do I really have to sit through ten minutes of copying a file, only to have it cancel 80% through because the target disk doesn't have enough space (why didn't it check before it started)? What other device on the planet has a 99% success rate for the following trouble shooting procedure: "Reboot"? Why do special characters require the alt key then three or four random numbers from the keypad (not the number row, gasp!), when a simple alt key plus letter/number suffices for other operating systems?

      Man, I could go on forever.

  44. Re:Driver and login annoyances by Anonymous Coward · · Score: 5, Informative

    HP driver annoyances (their shitty home(/SMB) devices are notorious for this and end up even in larger setups cause of ignorant buyers) can be usually quite easily fixed by searching the registry by device name or ID and giving users group more control over those subtrees. Be aware of security considerations and give only minimal level of extra rights that are neccessary.

    Msconfig is your friend when disabling unneeded startup items. I especially loathe the auto-updaters that get installed by default if you don't know specific installer parameters. Sun java is class A example of that crap, it informs limited users about updates and recommends them to upgrade - only halfway through it throws error message.

  45. Flawed logic by qmaqdk · · Score: 2, Interesting

    The logic behind this statement is that it should encourage application vendors to eliminate as many unnecessary privilege escalations as possible by causing users to complain about all the UAC 'Cancel or Allow' prompts. That's flawed logic if I ever saw it. That's like trying to prevent car accidents by making it expensive to go to the hospital.
    --
    My UID is prime. Hah!
  46. Re:you, my friend, made an incorrect assumption... by rishistar · · Score: 2, Funny

    And please don't accuse anyone on slashdot of being trendy.

    --
    Professor Karmadillo Songs of Science
  47. Re:you, my friend, made an incorrect assumption... by Hal_Porter · · Score: 2, Interesting

    I don't get it really. Microsoft's software is so pervasive and I've spent ages using Windows, writing Windows applications and drivers, even if I mostly do embedded code.

    I've used lots of other OSs too, and I really don't see what's so bad about Microsoft. Even their aggressive businesses are quite useful since I know if I knock up quick Windows application with Visual C++ I can reach 90% of the market. You can do pretty much anything you want in userland with Win32 and in kernel mode with WDM. Basically their stuff works fine for me. I don't know why other technical people have such problems with it.

    --
    echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
  48. Re:you, my friend, made an incorrect assumption... by lattyware · · Score: 2, Insightful

    Because even if it works 'fine' for you, there is a better option out there, and by using windows, you are forced to pay, and are locked in. I don't know about everyone else, but I have a problem with the fact everyone in the world is paying for something which is worse than something they could get for free (and if everyone did run it, it'd become better in every way overnight (hardware manufacturers making drivers, etc...).

    --
    -- Lattyware (www.lattyware.co.uk)
  49. Me too me too me too! by mcrbids · · Score: 2, Interesting

    I tried for months to get Windows NT4 to operate as a webserver and a DNS server with an uptime > 2-3 days. Couldn't do it with a (then pretty decent) Pentium-100 with 32 MB of RAM.

    Then, a year or two later, I discovered Linux, and tried it out on an old junker AM486/100. With 16 MB of ram, and a 500 MB HDD, and X-Windows/KDE 1.x running on the super-long VLB video card, it managed to host a web server, a DNS server, telnetd, ntpd, postgres, php, AND ssh reliably, 24x7 for MONTHS before I learned enough of what's going on to see that it was actually doing all that!

    That was RedHat 5.1. It's what sold me on Linux, because, for all its many warts, it actually did the job reliably. And now, some 9 years later, it's still "doing it" (Now CentOS 4) and I'm still loving it, 24x7!

    --
    I have no problem with your religion until you decide it's reason to deprive others of the truth.
  50. UAC is no different than any Windows alert by Killer+Eye · · Score: 2, Informative

    If UAC dialogs are annoying and unnecessary, they're really just behaving like other Windows alerts. There's a whole mentality on the platform for being irritating and bothering users with pointless information.

    Still, this was a new class of alert, to be taken seriously. Microsoft had a chance to break with "tradition" and put real thought into what would make a useful dialog, such as (only) information critical for making a good decision and prompting no more than necessary. But instead, we have self-congratulatory "aren't you glad we're looking out for your computer" text, a lot of color, and "abcapqyt.exe" as the only thing distinguishing one UAC dialog from the next. The dialogs therefore essentially read as "You have no idea WTF is running. [OK]" to most people.

    I compare this to legalese. Microsoft is taking the "throw 400 pages of crap in the user's face, make them entirely responsible for understanding the ramifications, if they click OK they're responsible" approach to security. When I see legal documents, I *really* appreciate companies who go to the effort to "humanize" what they present. In about a paragraph of extremely readable English, they say hey, this is what we're talking about here, and this is why we have this agreement. Why *couldn't* UAC dialogs do the security equivalent of this deciphering for users, so "abcapqyt.exe" is not my only clue?

    --
    "Microsoft killed my company, I hold a personal grudge. I don't use Microsoft products and neither should you."-JWZ
  51. it's working! by nguy · · Score: 2, Funny

    UAC is annoying people into uninstalling Vista and switching to Linux and OS X. So, it's working: UAC really is improving PC security.

    For the next release, however, maybe Microsoft should be more straightforward and simply boot into a display that says "please go to www.ubuntu.com to upgrade your OS and applications".

  52. UAC is crap by TheLink · · Score: 4, Insightful

    UAC is actually very bad from a security viewpoint. By annoying users more than necessary (more later), all it does it makes most users turn UAC off.

    From a cynical POV, I think all UAC is for is to allow Microsoft to blame users for security problems (ah you turned UAC off - so it's YOUR fault).

    If Microsoft was really interested in security they would have done more and better sandboxing of applications.

    My suggestion is to have a manageable number of default templates for sandboxing applications. If the app is unsigned by a user-trusted entity, the user gets a pop up which tells the user what type of sandbox the application wants to run in.

    It would be far easier to train Joe Schmoe to not run a "flash game" which asks for "Full User Privileges" or even "Full System Privileges" (with all the scary warnings etc) and to only run a "flash game" that asks for a "Guest Game" sandbox. After all there is no need for most legitimate flash games to access "My Documents" or your web browser bookmarks, or even your microphone/webcam.

    The idea is even if a program wanted to do something nasty, if it is running in a sandbox, it can't, and if a program requests an unusual sandbox so that it can do something nasty, it is easier for a user to know something strange is going on.

    This would also be a lot less work than UAC. Don't need to make 10 decisions one after another when you run the app.

    There could be custom sandbox templates that are validated and signed by a mutually trusted authority. So that new apps that require fancy privileges can run in fancy sandboxes without annoying prompts that bother Joe Schmoe.

    As for Linux and OSX, they aren't really more secure than Windows, with both these OSes if Joe Schmoe is about to run something new, he doesn't even know what the program is really going to do till he runs it. It is like expecting Joe Schmoe to solve the halting problem and without him being able to read the source code either - "Is this program going to halt, or is it going to take over my computer?". So my suggestions are just as applicable to them.

    --
  53. UAC is a blame shifting tool by Opportunist · · Score: 4, Insightful

    What you mention is exactly what is desired.

    UAC nags you for every little piece of rubbish. 99.999% of those requests are ok. Well, not ok, if programmers would not require godmode for every stupid little setup change... but they're not harmful. It's the other 0.001% that matter.

    Now, the average user turns off UAC. For a simple reason: Imagine some tool you don't know much besides operating it asks you "The futzgrabber in the argamajig wants to mirfl. Cancel or allow?" What do you do? After some try and error, you learn that the thing does what you want when you click allow. You start wondering why the heck you have to click allow. And the next logic step is to turn the pointless thing off altogether.

    And here's where the tool works as designed. Because if you get infected, MS can just shrug and say "Hey, we gave you the tool to avoid it. See, UAC would have told you this wants to do something bad, but you turned UAC off. Your fault."

    Instead of finding a way to give the user a secure system, MS just shifted the blame. You can't blame Windows now anymore if you get infected. It has a tool that would have told you you're going to get infected, but you turned it off. Shift the blame for the infection to the user, away from the system. That's all UAC is about.

    --
    We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    1. Re:UAC is a blame shifting tool by Crayon+Kid · · Score: 4, Insightful

      Now, the average user turns off UAC. For a simple reason: Imagine some tool you don't know much besides operating it asks you "The futzgrabber in the argamajig wants to mirfl. Cancel or allow?"
      Giving the users some credit (ie. "it helps protect the computer"), I think the reason is simpler than that. Removing UAC is the most obvious solution to the problem (extreme UAC annoyance).

      Let me offer another example: if Linda from Accounting makes for 75% of my daily tech support problems, the most obvious solution for that is not replacing all 2nd floor printers, rewiring Accounting and reinstalling her Windows. It's eliminating Linda.
      --
      i ate crayons when i was a kid and now i have two braincells and the blue ones taste nicer
    2. Re:UAC is a blame shifting tool by Opportunist · · Score: 3, Insightful

      But when you tell that to her boss, who is shagging her on a weekly base, it's you who gets eliminated and replaced by someone who stomachs her calls, so your boss continues to get laid.

      Be wary when trying to eliminate someone who is obviously a moron, chances are good that he or she still has his or her job for a very good, non-work related reason.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    3. Re:UAC is a blame shifting tool by Allador · · Score: 4, Insightful

      UAC nags you for every little piece of rubbish. 99.999% of those requests are ok. By definition, if UAC is nagging you, then its not OK. Either you're purposefully doing something that prompts the system (ie, everything is OK), or some software you're using is doing something bad. Writing user preferences in C:\Program Files\DumbAssApp\prefs.ini is not okay.

      The problem is that the bulk of the 3rd party software developers in the ecosystem use practices that violate the published guidelines and best-practices for the platform, and often use techniques that are indistinguishable from malware.

      Instead of finding a way to give the user a secure system, MS just shifted the blame. You kind of argued yourself in a circle there.

      Alot of hand waving about how bad UAC is, it maligns the users, etc etc. And then 'something should be done about it', but no substantive suggestions along those lines.

      Propose a valid alternative that doesnt involve time travel, and your argument might have some weight.

      And whats this stuff about 'blame'? There's no blame, just costs. How would you suggest Microsoft makes incompetent 3rd party developers pay the cost for their sloppy code writing without involving the user in any way?

      What MS has done here is to force the costs of sloppy coding by 3rd party developers to become visible, whereas prior to UAC, if you didnt run as non-admin, you never saw those costs. They were invisibile. MS just made them visible. So now users are bearing the costs of sloppy coding by 3rd party developers, in the hope that the pressure will then be passed on to these devs.

      Unfortunately, MS doesnt have any direct relationship with these vendors, there's no place to have leverage, to make the 3rd party devs do 'the right thing'.

      Overall, it sounds to me like you're just posting here to join in the 'look how much Micro$oft is teh suck' bandwagon, but without actually contributing anything to the conversation. Suggest an alternative thats more substantive than 'something should be done'.

  54. How about starting with Microsoft? by argent · · Score: 2, Interesting

    The biggest privilege level violation problem in Windows is the fact that there's even a mechanism to allow privilege elevation in the HTML control.

    If Microsoft wants to eliminate privilege elevation, they need to start by scrapping ActiveX.

  55. Here's an idea by StarfishOne · · Score: 2, Interesting

    Just like Apple, Microsoft should be smart for the following version of Windows. If they want to break with previous versions anyway, they should just pick an existing *nix foundations and write their won GUI on top of that. It would really make the world much better IMHO.

  56. XBox by bill_mcgonigle · · Score: 2, Funny

    Shift the blame for the infection to the user, away from the system. That's all UAC is about.

    Yes, and once everybody declares Vista too difficult to use and administer, Microsoft will have an alternative for you.

    Since I wrote that essay last year, Office Live has become real(-ish).

    --
    My God, it's Full of Source!
    OUTSIDE_IP=$(dig +short my.ip @outsideip.net)