Have you heard of Uniblue's Registry Booster 2009?
Clean, repair and optimize your system with this Free Stability Scan.
Learn more here »

Validate system access with AccessChk

Article by Tom Olzak, CISSP (6,627 pts )
Published on Aug 28, 2008
Part 1 of 10 in the series: Use SysInternals security utilities to manage network and system security

AccessChk is a free utility, which allows you to quickly assess access to folders, files, processes, or services on Windows workstations or servers.

The Challenge

System administrators and security professionals usually know what to do to ensure trustworthy processing environments. After all, there are plenty of blogs, articles, books, etc. on the subject. Many administrators diligently design and implement access controls, assuming their well-planned configurations actually provide expected levels of security. However, we can't think of everything during the design phase of controls implementation. No system lock-down controls should be implemented without checking the result, ensuring the access constraints we intended are actually in place.

Workstation- or server-level validation can be tricky. Not only should you check folder and file access. Access to processes, services, and OS components must also be verified. AccessChk enables checking of all these components.

AccessChk

AccessChk, is a free downloadable Windows (XP, VIsta, 2000 and Server 2003 supported) command line utility. Part of Microsoft's Sysinternals Suite, it's one of several troubleshooting solutions, which target specific security challenges.

Using AccessChk is simple, and Microsoft provides use case examples as part of it's online documentation. However, its ability to communicate issues if something doesn't work right is very limited. So it's important to adhere strictly to the command line syntax.

The command's syntax is very simple,

accesschk [modifiers] [user/group] [process/service/file/folder]

Entering accesschk with no parameters results in a help listing as shown in Figure 1. As long as you follow the syntax provided, you can quickly check access levels for inviduals users or groups. The following are some examples.

  1. Check for write access, for a specific user, to Windows system files (Figure 2): accesschk -w tolzak c:\windows\system32
  2. Check for write access, for a specific user, to all Windows services (Figure 3): accesschk -cw tolzak *
  3. Check for write access, for members of the USERS group, to all Windows services (Figure 4): accesschk -cw users *
  4. Check for write access, for members of the USERS group, to Windows system files (Figure 5): accesschk -w users c:\windows\system32
  5. Check for write access, for a specific user, to all running processes (Figure 6): accesschk -pw tolzak *

Tips

Many Windows administrators aren't used to using command line utilities. So here are some tips.

  1. Create a specific folder for your command line utilities. Don't place them in OS folders (e.g. system32 or windows).
  2. Make sure your PATH environment variable contains the path to the command line utility folder. Windows searches the paths in the PATH variable when an executable is invoked at the command line. PATH is changed from the command line or via My Computer properties. Figure 7 shows the command line syntax for adding an additional path (c:\sysinternals) to the the existing PATH contents. But be careful with this. If you type it wrong, you'll make unintended changes. For those who prefer the safer GUI approach, right click on My Computer then on Properties. At the bottom of the Advanced tab display, click Environment Variables. As shown in Figure 8, click on the path variable then the Edit button. (Example uses Windows XP)
  3. If you want to place the output of the command in a text file for input to a script or for later reference, use the command line redirect function. For example, accesschk -pw tolzak * > whoop places the output of accesschk into a text file named whoop.

Tables and Figures (hover for caption, click to enlarge)

Figure 1: AccessChk HelpFigure 2: Check for OS write accessFigure 3: Check for write access to servicesFigure 4: Check for write access for members of USERS group (no access found)Figure 5: Check for wtie access for members of USERS group to System32 (No access found)Figure 6: Check for specific user access to running processesFigure 7: Change PATH from the command lineFigure 8: Change PATH via Windows GUI

Use SysInternals security utilities to manage network and system security

SysInternals provides free security utilities for managing Microsoft Windows networks and systems. Available for download from Microsoft, they provide a powerful set of applications for oversight and protection of network assets.

Search More About:

Tom Olzak, CISSP (6,627 pts )

I'm an IT professional with over 26 years experience in programming, network engineering, and security. I have an MBA as well as CISSP and MCSE certifications. Currently I'm Director of Information... read more

Leave a Comment

Name:
Email (required, must be legitimate):
Subject:
Your Comment:

2000 characters maximum. Characters remaining: 2000

Enter the code above:
   

  Channel Sponsors  
Free Network Security Scanner
Network security & port scanning made easy with GFI LANguard. Download free today!
  Free PC Scan
Increase PC stability. Scan your PC for common registry errors.
Earn Your IT Degree Online
Earn your IT degree online from an accredited leader in distance education. Maximum transfer of previously earned credit. Finish sooner. Excelsior College.
  Advertise Here!
The Computing Hub at Bright Hub receives over 430,000 monthly page views.  Contact us to learn more about advertising opportunities.




Bright Hub - Science & Technology Articles, Buyer's Guides, How-To Tips and Software Reviews
About Bright Hub | Contact Us | Advertise with Us | Become a Writer | RSS | Site Map | Terms of Use | Privacy Policy | Copyright Policy
©2009 Bright Hub Inc. All rights reserved. Page copy protected against web site content infringement by Copyscape