Windows IT Pro is the authoritative and independent resource for windows nt, windows 2000, windows 2003, windows xp. Features a collection of resources and magazines for windows IT professionals.
  
  
  Advanced Search 


April 2007

PsExec, User Account Control and Security Boundaries


RSS
Subscribe to Windows IT Pro | See More Security Articles Here | Reprints | Or get the Monthly Online Pass—only $5.95 a month!
Main Article    Ask the Experts

I introduced the -l switch to the PsExec tool about a year and a half ago as an easy way to execute processes with standard-user rights from an administrative account on Windows XP. PsExec uses the CreateRestrictedToken API to create a security context that's a version of the one your account is using, but without membership in the local Administrators group or any administrative privileges. A process running in that security context has only the privileges and accesses of a standard user account.

There's one catch to the virtual sandbox that the restricted token creates: Processes running in the sandbox are running as you, and thus can read and write any files, registry keys, and processes to which your account has access. That caveat creates gaps in the sandbox walls, and malicious code could take advantage of these gaps to escape and become a full Administrator. So why do I still recommend using the PsExec feature to run processes with limited rights on XP when you use an administrator account instead of a standard user account? Because this type of sandbox hasn't been widely used, malware authors haven't bothered to write the code necessary to escape the sandbox walls.

However, Windows Vista changes that situation because it uses an enhanced form of this sandbox in User Account Control (UAC) and Internet Explorer (IE) Protected Mode. With UAC, all users, including administrators, run with standard user rights. For executables that require administrative rights, UAC asks the user's permission for it to run with administrative rights.

This act of giving an executable administrative rights is called elevation in UAC. When you elevate, you create processes that have administrative rights on the same desktop as those that have standard user rights. Processes elevated from a standard user account run in a different account from those with standard user rights, so the Windows security model defines a wall around the elevated process that prevents the non-elevated processes from writing code into those that are elevated. However, it doesn't prevent non-elevated processes from sending fake input into elevated processes, nor does it create a sandbox around the non-elevated processes of administrative users to stop the processes from compromising the administrator's elevated processes. Vista therefore introduced Windows Integrity Controls, which supply additional fencing for the sandbox.

In Vista's integrity model, every process runs at an integrity level (IL) and every securable object has an IL. The primary integrity levels are low, medium (the default), high (for elevated processes) and system. The integrity mechanism prevents lower-IL processes from sending all but a few informational window messages to the windows owned by processes of a higher IL. It also only allows a process to open an object for write access if the process IL is equal to or higher than that of the object. And processes can't open processes of a higher IL for read access.

The new version of PsExec takes advantage of the enhanced Vista sandbox when you specify the -l switch, running the executable you specify with a standard user token at low IL. The sandbox PsExec creates is almost identical to the one surrounding IE Protected Mode, and you can feel your way around the walls by launching a command prompt or regedit at low IL and seeing what you can modify.

With the exception of processes and threads, the wall doesn't block reads. That means that your low-IL command prompt or IE Protected Mode can read objects that your account can, including a user's documents and registry keys. Even the ability of a process at low IL to manipulate objects of a higher IL isn't necessarily prevented. You can read more details of these types of sandbox breaches in my blog at https://blogs.technet.com/ markrussinovich/archive/2007/02/12/638372.aspx.

So if your elevated processes are susceptible to compromise by those running at a lower IL, why did Vista go to the trouble of introducing elevations and ILs? Microsoft wants to lead us to a world in which everyone runs as standard user by default, and all software is written with that assumption. Without the convenience of elevations, most of us would continue to run with administrative rights all the time.

End of Article



Reader Comments

You must log on before posting a comment.

If you don't have a username & password, please register now.




Top Viewed ArticlesView all articles
Friday at PASS Europe 2006

Kevin talks about the closing day of the event and shares a funny Microsoft film. ...

More fun TechEd 2005 Resources

Kevin points out some more TechEd resources ...

Outlook Tips and Techniques

Read about hiding items, merging appointments, multiple windows, creating views, permissions, sending Outlook items to outside recipients, Send As permission, Inbox Assistant, tricks for rules, and tips for obtaining Microsoft Knowledge Base articles. ...


Security Whitepapers Protecting (You and) Your Data with Exchange Server 2007

Extended Validation SSL Certificates

Unauthorized applications: Taking back control

Related Events Check out our list of Free Email Newsletters!

Security eBooks Spam Fighting and Email Security for the 21st Century

Understanding and Leveraging Code Signing Technologies

A Guide to Windows Certification and Public Keys

Related Security Resources Become a VIP member of the Windows IT Pro community!
Get it all with the VIP CD and VIP access. A $500+ value for only $279!

Subscribe to Windows IT Pro!
Solve your toughest technical problems with our experts and access 10,000 + articles online. 30% off

Monthly Online Pass - Only $5.95!
Get instant access to 10,000+ articles from Windows IT Pro Magazine!

TechNet Virtual Labs
Evaluate and test Microsoft's newest products.

Job Openings in IT


ADS BY GOOGLE SPONSORED LINKS FEATURED LINKS

Microsoft Exchange & Windows Connections event returns to Las Vegas Nov 10 - 13
Connections returns to Las Vegas for this exciting event where each attendee will receive SQL Server 2008 standard with 1 CAL. Co-located with Microsoft ASP.NET, SQL Server, and SharePoint Connections with over 250 in-depth sessions.

Free Online Event! Virtualization:Get the Facts!
Register now and attend this free, live in-depth online conference on November 13 and 20, 2008, produced by Windows IT Pro. All registrants are eligible to receive a complimentary one-year digital subscription to Windows IT Pro (a $49.95 value)!

Check Out Hyper-V Video on ITTV
Watch Karen Forster's interview on Hyper-V's performance on ITTV.net.

Ease Your Scripting Pains with the Flexibility of PowerShell!
Join MVP Paul Robichaux on December 11, 2008 at 11:00 AM EDT as he equips you with PowerShell basics in 3 introductory lessons, each followed by a live Q&A session—all on your own computer!

PASS Community Summit 2008 in Seattle on Nov 18-21
The don’t-miss event for Microsoft SQL Server Professionals. Register now and you’ll enjoy top-notch Microsoft and Community speakers and more.



Solving PST Management Problems
In this white paper, read about the top PST issues and how to administer local/network PST Files.

Get Protected -- Data Protection Manager 2007
Protect your virtualized environment with Data Protection Manager

Order Your SQL Fundamentals CD Today!
Learn how to use SQL Server, understand Office integration techniques and dive into the essentials of SQL Express and Visual Basic with this free SQL Fundamentals CD.
Windows IT Pro Home Register FAQ for Windows WinInfo News
Europe Edition About Us Contact Us/Customer Service Media Kit Affiliates / Licensing  
SQL Server Magazine Office & SharePoint Pro Windows Dev Pro IT Job Hound ITTV
IT Library Technology Resource Directory Connected Home Windows Excavator Windows SuperSite 
 
 Windows IT Pro is a Division of Penton Media Inc.
 Copyright © 2008 Penton Media, Inc., All rights reserved. Terms and Use | Privacy Statement | Reprints and Licensing