BeyondTrust

Friday, January 29, 2010

The Swiss Cheese Model

BeyondTrust Privilege Manager was first released in February 2005. Since then we've heard a lot of stories from administrators on how they tried implementing a least privileged model without Privilege Manager. Some folks used scripts to grant/remove administrator rights to the user, others used native settings like Group Policy Files system and Registry ACL policies. I am not speaking bad of these admins and admittedly, I have taken similar steps myself in the past; and in moderation these do have a place. The problem with utilizing this approach to completely address Least Privilege or Least-Privileged User Accounts (LUA) is that you get into what we refer to as, 'The Swiss Cheese Model'. You inherently open up a number of security holes in your enterprise, not to mention risk breaking compatibility with applications, and create an incredible amount of work maintaining these policies and transferring this knowledge to other administrators. Below is an excerpt taking from a Microsoft KB on this:

Extensive permission changes that are propagated throughout the registry and file system cannot be undone. New folders, such as user profile folders that were not present at the original installation of the operating system, may be affected. Therefore, if you remove a Group Policy setting that performs ACL changes, or you apply the system defaults, you cannot roll back the original ACLs.

Changes to the ACL in the %SystemDrive% folder may cause the
following scenarios:

  • The Recycle Bin no longer functions as designed, and files cannot be recovered.
  • A reduction of security that lets a non-administrator view the contents of the administrator’s Recycle Bin.
  • The failure of user profiles to function as expected.
  • A reduction of security that provides interactive users with read access to some or to all user profiles on the system.
  • Performance problems when many ACL edits are loaded into a Group Policy object that includes long logon times or repeated restarts of the target system.
  • Performance problems, including system slowdowns, every 16 hours or so as Group Policy settings are reapplied.
  • Application compatibility problems or application crashes.

In contrast, using BeyondTrust Privilege Manager (PM) to facilitate a Least Privileged environment has been proven time and time again to be an effective, easy to use and maintain solution to the issues that arise when going to this type of environment. Using PM has also been the only realistic way to satisfy certain audit requirements which prevents users from running with Administrative Privileges with many of our customers.

You can learn more about BeyondTrust Privilege Manager at our website: http://pm.beyondtrust.com

For more information on the risks involved with File System and Registry Access Control List Modifications see this Microsoft Article: http://support.microsoft.com/kb/885409/en-us

Friday, January 22, 2010

How to elevate Scripts, Batch Files and Registry files

We are often asked if Privilege Manager can elevate other items, those other than the obvious *.exe, *.msc and *.msi. In order to elevate things like registry files, batch files and scripts, you simply need to know the format for the rule. Here are the formats for the most frequently requested items.

To elevate a script, simply create a rule to point to the scripting host, then in the arguments field, scope the rule to the specific script you would like to elevate to prevent the user from elevating any script.


















Alternatively, you could use WindowsServer\Netlogon without a file specified at the end which would elevate all scripts in the Netlogon folder.

To elevate a registry merge, simply add the path to regedit.exe, and in the arguments field, scope down to the reg file you wish to elevate:


















Note: The elevation of the *.reg and script files are scoped to the item in the arguments field, the user can not self elevate any script or *.reg file on their own when an argument is present.

Batch files are applications, so you simply need to point to the path (or HASH) of the batch file:



















With these examples in mind, you should be able to create other rules for similar situations (e.g. KIX scripts, java scripts, etc.)




 

© 1985-2009 BeyondTrust Software, Inc. All rights reserved.
Site MapContact UsPrivacy Policy/ California Privacy RightsHome