Solved

XCACLS and dumping results to a text file

Posted on 2009-05-04
3
2,174 Views
Last Modified: 2013-12-05
I am working on a security audit and we would like to take the results from XCACLS and dump them into a text file.

Thanks to another post here, I found a the code below at the following link:  http://windowsitpro.com/article/articleid/84696/jsi-tip-9901-how-can-i-enumerate-the-folder-permissions-on-a-drive-or-folder-in-csv-format.html

This works great but the only question I have is, how do I modify the batch so that it includes files aswell as folders?

Thanks,
Nancy
@echo off

if {%1}=={} @echo Syntax: TreePerm DriveOrFolder&goto :EOF

if not exist %1 @echo Syntax: TreePerm %1 does NOT exist.&goto :EOF

setlocal

set obj=%1

set XCACLS=""

for /f "Tokens=*" %%F in ('@echo XCACLS.VBS') do (

 If "%%~dp$PATH:F" NEQ "" set XCACLS="%%~dp$PATH:F%%~F"

)

if %XCACLS% EQU "" @echo Syntax: TreePerm - XCACLS NOT in PATH&endlocal&goto :EOF 

for /f "Skip=2 Tokens=*" %%a in ('cscript //nologo %XCACLS% %obj% /T /S^|find "\"') do (

 set line=%%a

 call :parse

)

endlocal

goto :EOF

:parse

if "%line:~0,10%" EQU "Directory:" set fPath="%line:~11%"&goto :EOF

if "%line:~0,6%" EQU "Owner:" set fPath=""&goto :EOF

set type="%line:~0,7%"

set type=%type: "="%

set Usr="%line:~9,23%"

set Usr=%Usr:  =%

set Usr=%Usr: "="%

set Perm="%line:~33,22%"

set Perm=%Perm:  =%

set Perm=%Perm: "="%

set Perm=%Perm:(=[%

set Perm=%Perm:)=]%

set Perm=%Perm:,=%

set Inherit="%line:~55%"

set Inherit=%Inherit:  =%

set Inherit=%Inherit: "="%

set Inherit=%Inherit:,=%

@echo %fPath%,%type%,%Usr%,%perm%,%Inherit%

Open in new window

0
Comment
Question by:fuzzysneekers
  • 2
3 Comments
 
LVL 82

Accepted Solution

by:
oBdA earned 250 total points
ID: 24299060
There are tools that make this a bit easier, for example by offering the ability to only show permissions for folders that differ from the parent, and by being faster than xcacls.vbs.
My favorite tool for this is the free DumpSec (http://www.systemtools.com/somarsoft/index.html)
You can set the Permissions Report Options to not show the owner, and to "Show directories (not files) whose permissions differ ..." to create the most concise report possible.
Save it one time in native format so that you can open it again and save it in a different format if you need to, then you can save it as csv file.
There are some other free tools from Sysinternals:
- AccessChk (http://technet.microsoft.com/en-us/sysinternals/bb664922.aspx)
- AccessEnum (http://technet.microsoft.com/en-us/sysinternals/bb897332.aspx)
- ShareEnum (http://technet.microsoft.com/en-us/sysinternals/bb897442.aspx)
Or the Security Explorer from ScriptLogic (http://www.scriptlogic.com/products/security-explorer/) (not free)
0
 

Author Comment

by:fuzzysneekers
ID: 24305086
Hi oBdA,

I looked at the Sysinternals tools but I want to be able to split the path from the final folder and/or file name.  Unfortunately, these don't do that.

I took a look at DumpSec and it looks like it will work.  I only have a few questions about the reporting that I am hoping you can answer:

1 - When it shows what looks like a HEX code instead of permissions (I have a view that show ax00000004 and ax00000002), what does this mean?
2 - Is there any way to have it split the file name from the path?

This tool provides enough information that I think I can forgo splitting the path but that would be nice.

Thanks for the tip!
Nancy
0
 
LVL 82

Expert Comment

by:oBdA
ID: 24305292
When you see hex codes, it means that the permissions are not the "standard" ones, but a combination that can't be listed with the usual RXW etc. You can check the folder for the permission combination that's actually configured.
DumpSec can't split the file name by itself, but once you have it in Excel, it shouldn't be too difficult to create a macro that parses the path and splits it; a folder path ends with a backslash, a file name doesn't, and in the latter case, the rightmost string after the last backslash is the file name.
0

Featured Post

Why spend so long doing email signature updates?

Do you spend loads of your time carrying out email signature updates? Not very interesting are they? Don’t let signature updates get you down. Let Exclaimer Cloud - Signatures for Office 365 make managing email signatures a breeze.

Join & Write a Comment

I've always wanted to allow a user to have a printer no matter where they login. The steps below will show you how to achieve just that. In this Article I'll show how to deploy printers automatically with group policy and then using security fil…
Setting up a Microsoft WSUS update system is free relatively speaking if you have hard disk space and processor capacity.   However, WSUS can be a blessing and a curse. For example, there is nothing worse than approving updates and they just have…
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…
When you create an app prototype with Adobe XD, you can insert system screens -- sharing or Control Center, for example -- with just a few clicks. This video shows you how. You can take the full course on Experts Exchange at http://bit.ly/XDcourse.

707 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now