Slashdot Mirror


Longhorn to use UNIX-like User Permissions

destuxor writes "After years of Windows users abusing administrative accounts out of necessity, Microsoft promises that Longhorn will make better use of user permissions in what sounds exactly like what UNIX/Linux users have been doing for years. Hopefully this will fix the long list of applcations that cannot be run by a Least-Privilege User Account (LUA) while giving a much-needed security boost. Too bad "MS-root" can't watch over your grandmother when she opens emails."

36 of 697 comments (clear)

  1. 'User' attitudes by Jumbo+Jimbo · · Score: 5, Insightful

    I think that it's a good start and may well make a big difference in companies which use Windows as their desktop platform and have system administrators who can control user accounts.

    This section from the article seems to have a good point: A strictly enforced LUA model could make it harder for worms and viruses to take over Windows systems. But Microsoft may have a tough time changing user and developer behaviour, even with new features that support the LUA regime in Longhorn, experts warn.

    On home systems, we still currently have enough problems trying to convince people not to open dubious attachments, or with people giving sites permission to install practically anything on their machines. It will take a big shift in attitudes (or Microsoft forcing the user to jump though hoops) to make many home users have anything but admin-privilege accounts.

    1. Re:'User' attitudes by Cosine+Jeremiah · · Score: 5, Insightful

      Macintosh users adjusted rather well to OS X's behavior, which basically mimic's a GUI sudo whenever root privs are needed. I think if application installers start popping up the password prompt, people will figure out what to type in there.

      On the other hand, perhaps people will end up getting too used to typing in the password whenever it's presented.

      "Installer? Check! Installer? Check! Virus? Check!"

    2. Re:'User' attitudes by nine-times · · Score: 4, Insightful
      It will take a big shift in attitudes (or Microsoft forcing the user to jump though hoops) to make many home users have anything but admin-privilege accounts.

      And I think that, right there, that's the problem many of us have with Windows' security (you know, when you hear all the MS-bashing about bad security?). Microsoft has sought to appease users/developers who don't understand/care about security measures, and so they've left out the hoops you would have to jump through in order to accomplish things. However, this means that viruses/worms/trojans/spyware/whatever have to jump through fewer hoops as well.

      Personally, I'd like to see Microsoft be brave, risk alienating their customers, and do things the right way. The question is, has the bad press about security made Microsoft feel threatened enough to take that risk.

    3. Re:'User' attitudes by erroneus · · Score: 4, Insightful

      One thing that Microsoft can and should do is to implement the traditional "you can't/shouldn't run this as root" thing.

      Some programs refuse to run as root. Some will always warn you. This would be a VERY good thing. There are so many programs that shouldn't be allowed to run as Administrator and, really, should be the norm. User applications should always have this restriction in place. Wordpad can run as Administrator, but MS Word should not. MS Paint can run as administrator, but The GiMP, Photoshop or the like should not!

      This would represent a pretty major shift in the user experience, but that shift could be about the only practical way to dig Microsoft's reputation for terrible security out of the hole it's in now.

      I'd like nothing more than people to switch to my favorite OS, Linux, but in the mean time, I don't think it's worth all of the suffering that users experience in the mean time.

      I think the best mode of operation is for Microsoft to define a white-list of applications that are allowed to run as Administrator and make it a pain in the ass for users to make adjustments to that list each and every time. This would encourage users to run as a user... but again, the problem of developers not updating their coding practices to match will be the biggest hurdle.

    4. Re:'User' attitudes by AvantLegion · · Score: 4, Insightful
      But asking for the password is better than nothing. And the password pops up at predictable times - when installing software, changing system settings, etc.

      Were it to pop up at an unusual time, I'd think a decent number of people would be suspicious. And for those that weren't, it would at least give them something to reference back to as to "where they went wrong". Problem with Windows is that the "security" fails silently, and soon you have a compromised system and no idea how it got that way.

    5. Re:'User' attitudes by Coryoth · · Score: 3, Insightful

      On the other hand, perhaps people will end up getting too used to typing in the password whenever it's presented.

      "Installer? Check! Installer? Check! Virus? Check!"


      I think the more disconcerting possibility is a shareware or other program that mimics the password dialog and sends the results off somewhere. People have a remarkable tendency to use the same password for everything. This could be a boon for password farming.

      Jedidiah.

    6. Re:'User' attitudes by uujjj · · Score: 3, Insightful

      software is supposed to require admin privileges to install. It is the ability of software be installed WITHOUT an admin password that is the problem.

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

    The permissions will permanently be set to 777.

    The problem has never been a lack of permissions in NTFS, just that no one uses them well.

    1. Re:Of course... by Koiu+Lpoi · · Score: 4, Insightful

      And there's a plethora of windows programs that require Admin rights just to run. The most bizzare one, in my opinion, is Battlefield 1942, although there are plenty of others, like PowerDVD. Just trying to use permissions properly in windows is a huge pain, if not impossible. I hope Longhorn fixes this, but I've got a feeling that it's just a re-routing of the current problem.

  3. Years? by Anonymous Coward · · Score: 3, Insightful
    in what sounds exactly like what UNIX/Linux users have been doing for years.
    I think you mean decades, not years.
  4. Re:-rw-r--r-- by Narchie+Troll · · Score: 5, Insightful

    Note that the discussion isn't about using literal Unix-style permissions -- the title is rather misleading. NTFS permissions are very good; in some ways, they are superior to classic Unix permissions (but not necessarily to Posix ACLs).

    Instead, the Windows security model is (apparently) going to be more Unix-like, in that the demarcation between administrator (root) and normal user will be more strict. Mostly, this means making software developers allow their programs to be installed and run with limited permissions, unlike the current admin-fest.

    There are many ways that Microsoft could fuck this up, but I hope they don't. Unlike some people, I have no investment in constantly repairing ruined systems.

  5. Glad to see a first step.. by Antyrael · · Score: 3, Insightful

    While this has been a long time in coming, problems are bound to accompany a change of this large a scale. I see the biggest problem being older apps that do the job, but aren't under development anymore. As well, it would be great if MS could implement something that follows along the same lines as the su command for *nix. Just a quick userswitch at the command line, install a program, and bam, done.

    --
    Expectations are for the unprepared.
  6. Home by MisanthropicProgram · · Score: 4, Insightful

    I'd like to add that I hope that some of the software developers will start to consider that people will be running their software under another account other than "owner". I have a game, that no matter what I do to the permissions, will not run under any account other than the owner/administrator.
    I'd also like to point out that I've been following all of the suggestions and tips on /. regarding Windows security and permissions and I haven't had my machine corrupted - yet (knocks on head) Knock on wood.
    Thanks guys!

    1. Re:Home by n0-0p · · Score: 4, Insightful

      There's no speculation at all, it is a fact. Windows NT is heavily derived from VMS; the lead architect for both is the same person. This is openly referenced in MS literature even. Why try to make it sound like a conspiracy?

      As for the rest, no it is not harder to muck up a *nix system than windows, it is just much harder to configure and run a Windows NT/2K/XP system with multi-user priveleges. This is not due to the base OS, which has all the necessary support. It has been bad policy on MS' part by failing to standardize, promote and enforce these requirements in applications. Because of this, application developers (MS included in many cases) take the easy way out and build software that requires admin privs.

      Please, do some basic fact checking in the future. Your entire post was very deceptive.

    2. Re:Home by sconeu · · Score: 4, Insightful

      Unfortunately, "The Sims" and "Mavis Beacon Teaches Typing 15" actually have that requirement (on their website). I think the Sims has it on the box, too.

      Will someone tell the reason why on G-d's Green Earth that a typing tutor requires Admin?

      The only thing I can think of is sloppy programming, writing to Program Files or to HKLM, instead of C:\Documents and Settings\{user}\Application Data or HKCU

      --
      General Relativity: Space-time tells matter where to go; Matter tells space-time what shape to be.
  7. What worries me about manifests by tepples · · Score: 5, Insightful

    But here's something that worries me more about manifests:

    Microsoft also proposes application manifests, which allow developers to define the permissions an application needs to operate properly and can be signed by independent software vendors to ensure integrity. Deployment manifests, signed by IT departments, will allow network administrators to dictate how much trust an application should have on the network, according to the documents.

    Based only on this part, it appears that an application manifest must be published by an entity that can afford three figures USD per year for a code signing license. Developers of free software and proprietary freeware often cannot afford this annual fee. My worry is that Longhorn Home Edition may not permit users to install customized deployment manifests, locking users into using only programs with an application manifest, that is, proprietary commercial software.

    1. Re:What worries me about manifests by Lavaeolus · · Score: 3, Insightful

      Based only on this part, it appears that an application manifest must be published by an entity that can afford three figures USD per year for a code signing license

      Not necessarily - I assume that the certificate an IT department uses to sign code will only need to be trusted within the company network. Windows Server is shipped with a certification authority software, and it is a (relatively) trivial task to create certificates that are trusted by all machines in a domain.

  8. UNIX-like? by ryanvm · · Score: 4, Insightful

    After reading the article *gasp*, I wouldn't say Microsoft is moving towards a UNIX-like security system. Rather they are moving away from a stupid security system.

    There's nothing inherently UNIX-ish about not giving normal users administrative privileges. Unless you're defining UNIX as any multi-user operating system. The idea of limiting normal users is standard in any decent multi-user operating system.

  9. Not Permissions, Just Common Sense Default ACLs by foo+fighter · · Score: 5, Insightful

    This isn't Windows switching from their ACL model to a UNIX permission model.

    One, they are pushing for 3rd-party developers to finally stop requiring simple apps like kid's software and low-end desktop publishing to be run with escalated privileges.

    I mean, these application developers have had since '98 or '99 to work this out. But Window's lax defaults and lack of user education didn't force the issue. Microsoft is finally, /finally/, forcing the issue.

    Two, it is Microsoft finally realigning their default ACLs to be at once more secure and more common sense.

    It makes no sense for a home user to not be able to control their power settings or change their system time unless they have escalated privileges.

    Really, this isn't so much Windows following UNIX as it is Windows following OS X.

    Finally, and this is IMHO, going to a permission model would be a *huge* step backwards. I know UNIX die-hards will flame me for this, but it is my experience that ACLs are much more flexible and lucid than permissions.

    --
    obviously no deficiencies vs. no obvious deficiencies
    1. Re:Not Permissions, Just Common Sense Default ACLs by OmniVector · · Score: 4, Insightful

      a little clarfication on the os x permissions model. basically os x uses standard unix permissions right now. tiger's introducing ACL support. mac os x's good permissions model comes from well separated privledges, logical admin username/password prompts on actions that require escalation, and developers actually testing to make sure apps run/install without requiring admin privs. (heck you can install most apps in os x by just putting it in ~/Applications). technically windows has better permission control than most OSes out, it's just the defaults are total shit and the app developers don't take any responsibility to allow user-level installs and running.

      --
      - tristan
  10. Re:ACLs by BAILOPAN · · Score: 3, Insightful

    Unix permissions _do suck, they're too simplistic and ACLs solve a lot of the problems inherent to it. For example, if I want to define a class of groups where each group defines a set of people allowed certain permissions to a directory, recursively, there's simply no way unless you use a filesystem that has an ACL extension (or something like XFS which has ACLs built in).

    The article poster's saying "Unix Permissions" was being misinformative; Windows will never use the setuid-user-group-world style permissions, it has an ACL-like system. I think what's really meant is that this system will actually be USED in the future, it's pretty much ignored right now for most Windows desktops. As I read this, Microsoft will just be actually enforcing and organizing their own system -- which is a good idea.

    --
    If you say "here goes my karma" I will bite you!!!
  11. Are Unix permissions fine-grained enough? by mrogers · · Score: 4, Insightful
    What I'd really like to see is something more fine-grained than Unix permissions: instead of giving every program permission to access all my files, I'd like to have multiple "hats" per user. Each user would have a personal equivalent of /etc/passwd describing their different hats (web, graphics, work, music, etc). A few programs like the shell, the window manager and the file manager would run with the user's full permissions, while other programs would be restricted to their own directories (eg ~/.mozilla), plus any files passed to them by the file manager (this could be implemented using pipes, or the file manager could change the permissions on the file). The file selection dialog would be provided by the file manager so it would be able to "see" all the user's files, but the application would only be able to access files selected by the user.

    Just as the login process forks and drops its root privileges before running your shell, the file manager or window manager would fork and drop its full user privileges before running an application that was supposed to wear a certain hat.

    1. Re:Are Unix permissions fine-grained enough? by multi+io · · Score: 3, Insightful
      You can do everything with the *NIX permission model that you can with ACL

      Now that's certainly untrue -- you can only assign at most three different permission sets for three different groups of users to a given file. "rwx" would allow eight different permission sets though. You can't, for example, assign "r--" to paul and john, "-w-" to lisa and mel, "r-x" to john and sue, and "---" to anybody else.

      How often this is really needed is another question though.

  12. Windows biggest problem by erroneus · · Score: 5, Insightful

    I'd love to blame Microsoft for their own operating system problems, but really, the blame is mostly on the third party developers.

    It has been this way from the beginning... as far back as I can see, developers skirted the BIOS because BIOS calls were too slow -- that was back when the BIOS was part of the OS. This is not a Microsoft problem, but it adds to understanding of how the culture evolved. "Forget about standards and interoperability, we need to deliver performance!" The error in judgement has been costly.

    Today developers continue to write code that uses and exploits bugs and irregularities in the MS Windows operating system environment. If I learned nothing else from reading the comments found in the Windows Source code scandals, I learned that Microsoft became obliged to add code to emulate bugs and irregularities for specific applications to continue to run properly. In a perfect world, the app writers would write code using the APIs as documented. (And when bugs and irregularities were found, Microsoft would FIX them to discourage developers from utilizing the strange or buggy behaviors)

    Developers should be mature enough to realize that any bug or irregularity found in an OS API should be considered subject to change and could break their software once it is fixed. It kinda bugs me that these "paid professionals" were and continue to be so short-sighted.... (meanwhile, these Open Source Amateurs rely almost exclusively on documented API functions and features simply because bugs and irregularities are often fixed quickly enough that to write code against them would mean they would need to update their code AGAIN.)

    I think this kind of speaks volumes about where the real weakness in commericial software development lies -- in the motivation.

  13. Permissions in the Home vs. in the Workplace by amichalo · · Score: 4, Insightful

    This doesn't solve all problems for Microsoft, just changes them.

    While this will be a certain benefit to corporate environments with IT security policies and IT departments to come install/upgrade software for employees while at the same time ensuring that new version of FreeCell you got from a friend doesn't infect the whole corporate network, the issues become more troublesome for home users.

    A home user will either end up running their system as an Administrator, thus circumventing the access permissions model, and/or they will become frustrated with the inability to install/update/access/delete files on their own computer.

    How many times has the home user faced a property configuration wizard that tells them to contact their "system/network administrator" for more information.

    My mother is not a "system administrator", but yet, to change her ISP, she had to put on that hat or call me to talk her through it.

    No disrespect to Linux, but Microsoft would do well to study Apple's model for system security on a home implementation. Apple has, successfulyl in my opinion, abstracted much of the user security model to allow the home user to know nothing about CHMOD while still providing appropriate security when needed - like entering an administrative password (SUDOing the application) for installations and upgrades.

    Last on the list of needed changes to the windows security model is to provide far more robust error/exception handling when a user does something like tries to rename a file that is open. Consider this closing argument:

    "The file cannot be renamed because it is in use by another application."

    versus

    "The file 'foo.doc' cannot be renamed to 'bar.doc' because it is opened by 'Word.exe' would you like to:
    - Cancel the renaming
    - Save the document changes in Word and rename the file
    - Discard the document changes in Word and rename the file"

    --
    I only came here to do two things; kick some ass, and drink some beer...looks like we're almost out of beer.
  14. Re:Permissions - who cares - they need symbolic li by EmperorKagato · · Score: 3, Insightful

    In reality that is what drive naming convention does. Especially using F: for a networked folder \\filer\production Behind the mask of C/D/E could be the \\devicename\partition\ Just windows gives you the convience of the drive name.

    --
    ----- You know you have ego issues when you register a domain in your name.
  15. This is nice and all by jayhawk88 · · Score: 3, Insightful

    ...but getting older programs working in XP was bad enough. Something like this is probably going to break 3/4 of the old Windows software out there, a nightmare for those of us in the corporate worlds. Cause, you know, Sue in Financials has 10 years worth of expense reports locked up in PeachTree Accounting 4.4 for Windows 95 and doesn't see why she should use anything else, and Doug in Facilities has a master key database in dBase 2.5 for DOS that nothing on the fucking planet can read any more.

    Ugh, I'm already seeing the problems.

  16. Re:Swing and a miss... by Elwood+P+Dowd · · Score: 5, Insightful
    Installing software is an administrative task, not a user task. Software installation *should* require admin access.

    Just one more example of MS not understanding the difference between administration and use.
    No, no, no. You couldn't be more full of shit if you tried. In Linux, you can
    ./configure --prefix=$HOME
    In OS X, you can
    ./configure --prefix=$HOME/Library
    or leave your .apps in ~/Applications/. The whole point is to make it so that users can install applications without it installing spyware all over your system directories. Software installation shouldn't require admin privs. You should be able to do just about anything to your computer without effecting other users.
    --

    There are no trails. There are no trees out here.
  17. Re:-rw-r--r-- by be-fan · · Score: 4, Insightful

    The problem with the NT security model is that they violate an important principle of security: they aren't simple. Simple security systems are not only more likely to be correct, but they are easier to use. Ever ask *why* so much Windows software doesn't bother using the security mechanism? Ever try to code to it? It's ugly and complicated!

    --
    A deep unwavering belief is a sure sign you're missing something...
  18. Re:Logo Program by gewalker · · Score: 4, Insightful

    Nothing in the article says that MS is getting rid of ACL's, just that they are going to start writing software that is function with local admin. Slashdot title is misleading (what a shocker).

    Tons of software from MS & others on Windows won't work correctly unless user is admin (and support for su equivalent from Windows is weak).

    It is like running everything as dba, sure its convenient, but you are just begging for trouble. Worse, when all software is written assuming dba, changing it to run as a regular user is painful. This is the same situation as most windows software is in. Pain will be worse the XP/SP2 by far.

    MS should also added chroot to Windows if they are serious about security. Such a simple concept, such a valuable addition. Of course, much windows software goes boom if you introduce chroot, but they should still add it to Windows.

  19. Re:Logo Program by univacmac · · Score: 5, Insightful

    I never gave a damn if my drivers were signed or not - i wanted the device to work, and if that was the only driver i could use, screw windows. :D

  20. Re:Finally... by squallbsr · · Score: 3, Insightful

    But sensoring the internet isn't always the solution. They sensor us here at work (I'm a developer), whereas most of the blocked sites probably should be blocked for normal users, but for our job it is getting harder and harder to get help or find examples and such when programming on a project. Google groups are blocked, all msdn blogs are blocked, most sites with the word "forum" are blocked. And it isn't like they are going to unblock these sites for us because they are useful for us.

    For those of you sitting behind the proxy - don't forget that some people probably legitimately need access to the site you just blocked.

    --
    Sleep: A completely inadequate substitution for Caffeine.
  21. Re:Windows != Unix by Eric+S.+Smith · · Score: 4, Insightful
    Windows doesn't use a single filesystem root, so the concept of "chroot" doesn't apply.

    The broader concept is that of putting processes in little restricted-filesystem "jails," which is perfectly applicable to Windows. A process could think that it's dealing with C:\blah when it's actually in C:\Program Files\Applications\Thing\blah. Expanding on the idea, you could expose a CD drive, but keep the DVD burner hidden, and so on. Perhaps you could even hide your Internet connection from a less-than-totally-trusted process that shouldn't need it.

  22. Re:Logo Program by zippthorne · · Score: 5, Insightful

    The drivers that came with my motherboard are not signed, the driver for my monitor is not signed (it's quite old), I forget about the graphics card.. printer drivers not signed - what am i supposed to do? use my computer with the "default" monitor at much lower resolution and refresh rate than my monitor is capable of, and never print anything?

    --
    Can you be Even More Awesome?!
  23. Re:Logo Program by Verteiron · · Score: 3, Insightful

    While many gamers are Windows users, very few Windows users are gamers. Unless the user is a gamer, the odds are good they'll never know there was a problem. If the user is a gamer, they're downloading the nVidia drivers from nVidia, and ignoring the older ones available on Windows Update.

    --
    End of lesson. You may press the button.
  24. Re:Windows biggest problem is Microsoft by argent · · Score: 4, Insightful

    developers skirted the BIOS because BIOS calls were too slow -- that was back when the BIOS was part of the OS. This is not a Microsoft problem

    It bloody well is a Microsoft problem. They had the ability to improve the performance of the BIOS, ANSI.SYS was frequently ten to a hundred times faster than the BIOS on a typical computer... all they needed to do was intercept the BIOS calls and perform the same operations they did with ANSI.SYS and they would immediately remove any need for people to go around them.

    But they didn't. So your choice was ANSI.SYS, or direct hardware access. I went with the BIOS for my terminal program and half my code was "curses" style optimizations to avoid making extra trips into the BIOS ... as if this memory mapped display was a 300 baud terminal!

    Similarly, the current mess with applications needing to write to %SYSTEMROOT% to install is Microsoft's fault, because for many years they recommended that applications do that... as near as I can tell so they could ship DLL updates through application vendors instead of coming up with their own update mechanism. The result of that? Administrator-level installers, DLL Hell, and viruses being REINSTALLED back into %SYSTEMROOT% by the system restore tools they created to try and work around the problems...

    Not Microsoft's fault? Like hell it's not!