Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×

Running Windows Without Administrator Privs? 239

javacowboy asks: "For a while now, I've been advising friends who run Windows to try running as a regular user, as opposed to running as administrator, which is the default setting. However, I switched to Mac a year and a half ago and I haven't run Windows since, so I'm probably not the best person to be giving this advice. Still, on a philosophical level, *trying* to run Windows as a non-admin, given the prevalence of viruses, worms, trojans, and spy-ware, seems to make sense. Have any of you tried to run Windows as a non-admin, and how did it work out for you? Are there certain tasks or certain software you need to be admin to run? How realistic is it to expect a Windows user to run their OS as non-root?"
This discussion has been archived. No new comments can be posted.

Running Windows Without Administrator Privs?

Comments Filter:
  • one experience (Score:5, Informative)

    by yagu ( 721525 ) * <{yayagu} {at} {gmail.com}> on Tuesday May 23, 2006 @02:52AM (#15385180) Journal

    A friend's computer shared by the entire household was unendingly compromised. We restored XP many times from scratch but the result was always the same, within a month XP was toes up again.

    We did manage to trace the culprit pretty certainly to one of the kid's AOL sessions. No emphasis and teaching was enough to stop a trusting click to wreak trojan horse havoc. (I don't blame the kid, she was using in good faith and only talked to friends, and only clicked when she was assured they were "being good". Unfortunately, in the world of XP running with admin privelege, this is not enough.)

    We finally bought a separate computer with discrete accounts, and only one had admin access. The kids' accounts were non-admin. This new machine remains uncompromised, but with a price.

    The non-admin accounts, while unable as expected to install software, have random and mysterious failures. I've been able to track some down to exactly what I (and most) feared -- applications which expect to have admin access. Not one example was legitimate in the sense the failure point was performing work requiring admin access, it was just presumptive development by the application. (Interestingly, one of the applications that works fine in admin access but not in non-admin access is Windows Media Player 10.)

    Unfortunately this turns out to be a common symptom running non-admin in XP. Lots of applications will work fine. Lots won't.

    The machine remains partitioned as described, but the ultimate result has been the kids gravitating back to the unprotected computer for unfettered access. I expect that machine will continue to need its periodic re-imaging.

    These problems in XP aren't rare and are artifacts of an infrastructure with security tacked on in ugly layers again and again, all as afterthoughts. I hope Vista proves better at this, but wonder how many applications will continue as problematic because of a murky and muddled and shifting security architecture.

    For the record, I'm simply amazed Microsoft has gotten away with this for so long... it's ample empirical evidence more deals on shop architectures are being made on the golf course and not around the white boards.

    And, also for the record, Microsoft has the money and power to fix this once and for all. I'm sure some will defend Microsoft's incremental work on this, but for too many years my observation has been Micosoft using their money to buy additional fingers with which they point at others to blame rather than work to solve comprehensively the security and system integrity problems.

    • Bottom line:
    I still recommend PC owners create separate non-admin accounts with only one admin account. Applications that won't/can't play nice I recommend they uninstall and ask for their money back. This isn't optimal, but it keeps the machine healthy longer.

    Sigh.

  • Aaron Margolis (Score:5, Informative)

    by BSDevil ( 301159 ) on Tuesday May 23, 2006 @02:53AM (#15385183) Journal
    Runs "The Non-Admin Blog" - one of the most useful resources for this. He's a Microsoft staff consultant, and often has tips for it you won't find elsewhere.

    Check it out at http://blogs.msdn.com/aaron_margosis/ [msdn.com]
  • Some advice (Score:5, Informative)

    by VGPowerlord ( 621254 ) on Tuesday May 23, 2006 @02:54AM (#15385189)
    I'm running Windows XP Pro as a Limited User right now. The important thing to remember is that some programs, games in particular, don't like it if you don't change the file (and sometimes, registry) permissions.

    Registry permissions can be set using reged32.

    Installers are also a problem. Since Windows program like making a mess (i.e. putting DLL files in the system and system32 directories), you usually need to run then as Administrator. The "Run As..." menu item can be used to elevate priviliges for a single program. This appears in context (right-click) menus by default, unless you're in the Control Panel. In that case, hold down shift when right-clicking.

    Windows Explorer can be started as a different user, if you set the option to run Explorer Windows in a separate thread. This option needs to be turned on for the user you're changing to, not for the current user. You can find this option in Control Panel (Classic View), Folder Options..., View tab, Launch folder windows in a separate process.

    Here's a few sources to consult:

    I'm sure I missed some things, but other posters will point them out.

  • Re:one experience (Score:3, Informative)

    by exKingZog ( 847868 ) on Tuesday May 23, 2006 @02:58AM (#15385226) Homepage
    We run all our staff accounts as limited users at work. We have two pieces of software that don't like running under regular accounts, and in both cases the solution is to give users modify access on that app's folder in %program files%. Also, I'm puzzled by WMP 10 not working - works fine for our staff, and my girlfriend's account on my PC, and the guest account I set up for a friend once.

    The main culprit is almost always always programs trying to store data in their installation folder rather than the user's appdata directory.
  • by D4C5CE ( 578304 ) on Tuesday May 23, 2006 @02:59AM (#15385235)
    The staff at Heise, publishers of c't (one of Europe's major IT mags) have dedicated much time, effort, and a series of extensive articles to this question. [heise.de] Some of them are online for a free read, in particular on the pages subsequent to the above link.

    Learning German is probably an effort on par with trying to replicate their years of work and experience. ;-)

    There was even a database detailing which application caused how much trouble without administrator privileges [archive.org].

    However, in all of this the question comes to mind whether the best way to obtain as much as possible of Mac-like security and ease of use on PCs wouldn't simply be installing Linux in the first place.

  • Re:one experience (Score:4, Informative)

    by skinfitz ( 564041 ) on Tuesday May 23, 2006 @03:10AM (#15385296) Journal
    applications which expect to have admin access

    ...don't want to sound like a Windows fanboy at all but there are many *NIX apps that expect to have root - ethereal for example. Sure they are usually system admin related, but it doesn't mean that you have to run the entire session as root because you can simply use su.

    In Windows you can use the runas command similar to su to give elevated privs to individual apps. You can also use a switch to cache credentials (like chown +x root) that the admin can use to give users the ability to work with awkward apps so it's not really a big deal for the odd application if the machine is set up correctly.
  • Re:Annoying (Score:3, Informative)

    by datafr0g ( 831498 ) * <datafrogNO@SPAMgmail.com> on Tuesday May 23, 2006 @03:28AM (#15385354) Homepage
    I agree that it is annoying in general however in XP Pro, installing an application is usually pretty painless.

    Just "right click" the installer executable and select the "Run as" option to run the installer as a user with privilages.
  • Regmon Filemon (Score:4, Informative)

    by pedestrian crossing ( 802349 ) on Tuesday May 23, 2006 @03:39AM (#15385384) Homepage Journal

    You can eliminate the guess work by using Regmon and Filemon from here [sysinternals.com].

    These utilities log all file and registry access attempts, successful or unsuccessful.

    Most applications that "need" admin rights, actually only need the correct rights on a specific reg key or directory. Granting only the needed rights gets the app working without adding unnecessary rights/risks.

  • Re:one experience (Score:3, Informative)

    by Bert64 ( 520050 ) <bert AT slashdot DOT firenzee DOT com> on Tuesday May 23, 2006 @05:03AM (#15385641) Homepage
    Ethereal only requires root if you want to actively sniff the interface with it (as opposed to reading logs you captured earlier), there are obvious reasons why non root users can't sniff network traffic especially on a system which was designed to be multi user rather than having multi-user support kludged in as an afterthought.

    In many unixes nowadays you can use capabilities, to give a program that normally would require root, whatever access it requires without giving it full root (such as raw socket capability etc)...

    Also, you have to be careful *WHICH* programs you give increased privileges to, some are simply not designed with that in mind, or perhaps just poorly programmed.
  • Re:one experience (Score:3, Informative)

    by cortana ( 588495 ) <sam@[ ]ots.org.uk ['rob' in gap]> on Tuesday May 23, 2006 @08:51AM (#15386305) Homepage
    If you run ethereal as root then you're asking to be compromised.

    You should be capturing packets with tcpdump (as root), and opening the file it creates with ethereal as an unpriviliged user.
  • Some tips... (Score:4, Informative)

    by pla ( 258480 ) on Tuesday May 23, 2006 @09:51AM (#15386647) Journal
    As someone who runs as a non-admin, I'll share a few tips I've learned on how best to make everything work...

    1) Download CPAU [joeware.net], which works somewhat like RunAs but will let you create "job" files so you don't need to type a password each time.

    2) Make three accounts, a "guest" (don't use the built-in guest account for this) user, a "poweruser", and an "admin" (don't use the built-in admin account for this). For the rest of this post, I'll call your real account "fred", the lower-permissioned account "barney", and the higher-permissioned account "gazoo".

    3) Set the root of all drives to explicitly "deny" all permissions to "gazoo". This wouldn't even slow down an interactive attacker, but few hostile programs expect to need to take ownership and change permissions from an account already having admin privs.

    4) Give "fred" write permission on "Documents and Settings\barney". Give "barney" read permission on "Documents and Settings\fred". Give "fred" read permission on "Documents and Settings\gazoo". That alone will solve 99% of permission problems you'll have.

    5) Use CPAU to set up job files to run all your networking programs (browser, email, IM, etc) as "barney". Do the same for all programs that legitimately need admin access (many CD/DVD rippers, for example) to run as "gazoo".

    6) To install most software (even well-behaved software that doesn't require admin to run), log in as admin (the real one, not "gazoo") and create its directory under Program Files, giving "fred" (or "barney" if it will run with reduced permissions) write permission to that dir. Then, install it while logged in as "fred" (or, again, as "barney" if applicable). Also, some pesky software will work best if you install it first as the user it will run as, and then as "fred". Firefox and Thunderbird fall into this category, because of the way they handle user profiles (Using the highly-recommended "Portable [portableapps.com]" versions of both will completely avoid this problem, btw).


    The above will take care of most common problems you might have. Other problems will still pop up, however.

    For example, good luck printing from your web browser - you can use Microsoft's TweakUI to edit the relevant ACLs, but that seems like about a 50/50 shot of working. I curently have two machines at home set up more-or-less as described above, and basically identical. One of them can print from "barney" and one can't. Wierd.

    Also, get used to using UNC names. Mapped drives, even if mapped under all three accounts, will not show up for programs running as anyone but the currently logged-in user.



    And some "experts" wonder why so many Windows users still run as admin.
  • Cool Hack: (Score:4, Informative)

    by Ayanami Rei ( 621112 ) * <rayanami&gmail,com> on Tuesday May 23, 2006 @05:45PM (#15389947) Journal
    Create a secondary user, call it, I don't know, Granny2.

    Give this user permissions to do whatever it is that the unprivledged account can't deal with (modifying its own Program Files directory, whatever). Make it have no password and deny interactive logon, but allow batch logon.

    Now, using "su" from sysinternals, create a shortcut that runs su with the options to log on as "Granny2" using a "batch" logon, and have it run the nasty application.

    Here's the key. PUT THE LINK IN HER PERSONAL START MENU/DESKTOP. Not in the All Users desktop. These are special shortcuts for this ONE USER.

    To complete the tour de force, go into the registry under the Granny2 user find:
    HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Explorer\Shell Folders

    Change Personal, Desktop, etc. to MIMIC the Granny user. Then give Granny2 R/W privs on the Granny profile.

    Boom! Smooth, seamless access to all misbehaving apps. I did this to get Turbotax and Quicken to run on a family PC under multiple accounts with unprivledge users who know nothing about technology or to remember passwords.
    Worked like a charm.

Scientists will study your brain to learn more about your distant cousin, Man.

Working...