@@ -99,45 +99,32 @@ reg query HKLM\SOFTWARE\Policies\Microsoft\Windows\Installer\AlwaysInstallElevat
99
99
echo .
100
100
101
101
echo --- Program Files and User Directories where everybody (or users) have full or modify permissions ---
102
- icacls " C:\Program Files\*" 2 > nul | findstr " (F)" | findstr " Everyone"
103
- icacls " C:\Program Files (x86)\*" 2 > nul | findstr " (F)" | findstr " Everyone"
104
- icacls " C:\Program Files\*" 2 > nul | findstr " (F)" | findstr " BUILTIN\Users"
105
- icacls " C:\Program Files (x86)\*" 2 > nul | findstr " (F)" | findstr " BUILTIN\Users"
106
- icacls " C:\Program Files\*" 2 > nul | findstr " (M)" | findstr " Everyone"
107
- icacls " C:\Program Files (x86)\*" 2 > nul | findstr " (M)" | findstr " Everyone"
108
- icacls " C:\Program Files\*" 2 > nul | findstr " (M)" | findstr " BUILTIN\Users"
109
- icacls " C:\Program Files (x86)\*" 2 > nul | findstr " (M)" | findstr " BUILTIN\Users"
110
- icacls " C:\Documents and Settings\*" 2 > nul | findstr " (F)" | findstr " Everyone"
111
- icacls " C:\Documents and Settings\*" 2 > nul | findstr " (M)" | findstr " Everyone"
112
- icacls " C:\Documents and Settings\*" 2 > nul | findstr " (F)" | findstr " BUILTIN\Users"
113
- icacls " C:\Documents and Settings\*" 2 > nul | findstr " (M)" | findstr " BUILTIN\Users"
114
- icacls " C:\Users\*" 2 > nul | findstr " (F)" | findstr " Everyone"
115
- icacls " C:\Users\*" 2 > nul | findstr " (F)" | findstr " BUILTIN\Users"
116
- icacls " C:\Users\*" 2 > nul | findstr " (M)" | findstr " Everyone"
117
- icacls " C:\Users\*" 2 > nul | findstr " (M)" | findstr " BUILTIN\Users"
118
- icacls " C:\Documents and Settings\*" /T 2 > nul | findstr " :F" | findstr " BUILTIN\Users"
119
- icacls " C:\Users\*" /T 2 > nul | findstr " :F" | findstr " BUILTIN\Users"
102
+ where /q icacls
103
+ IF ERRORLEVEL 1 (
104
+ echo icacls is missing, performing checks using cacls for older versions of Windows
105
+ FOR /F " tokens=* USEBACKQ" %%F IN (`where cacls`) DO (SET cacls_exe=%%F )
106
+ ) ELSE (
107
+ FOR /F " tokens=* USEBACKQ" %%F IN (`where icacls`) DO (SET cacls_exe=%%F )
108
+ )
109
+ %cacls_exe% " C:\Program Files\*" 2 > nul | findstr " (F)" | findstr " Everyone"
110
+ %cacls_exe% " C:\Program Files (x86)\*" 2 > nul | findstr " (F)" | findstr " Everyone"
111
+ %cacls_exe% " C:\Program Files\*" 2 > nul | findstr " (F)" | findstr " BUILTIN\Users"
112
+ %cacls_exe% " C:\Program Files (x86)\*" 2 > nul | findstr " (F)" | findstr " BUILTIN\Users"
113
+ %cacls_exe% " C:\Program Files\*" 2 > nul | findstr " (M)" | findstr " Everyone"
114
+ %cacls_exe% " C:\Program Files (x86)\*" 2 > nul | findstr " (M)" | findstr " Everyone"
115
+ %cacls_exe% " C:\Program Files\*" 2 > nul | findstr " (M)" | findstr " BUILTIN\Users"
116
+ %cacls_exe% " C:\Program Files (x86)\*" 2 > nul | findstr " (M)" | findstr " BUILTIN\Users"
117
+ %cacls_exe% " C:\Documents and Settings\*" 2 > nul | findstr " (F)" | findstr " Everyone"
118
+ %cacls_exe% " C:\Documents and Settings\*" 2 > nul | findstr " (M)" | findstr " Everyone"
119
+ %cacls_exe% " C:\Documents and Settings\*" 2 > nul | findstr " (F)" | findstr " BUILTIN\Users"
120
+ %cacls_exe% " C:\Documents and Settings\*" 2 > nul | findstr " (M)" | findstr " BUILTIN\Users"
121
+ %cacls_exe% " C:\Users\*" 2 > nul | findstr " (F)" | findstr " Everyone"
122
+ %cacls_exe% " C:\Users\*" 2 > nul | findstr " (F)" | findstr " BUILTIN\Users"
123
+ %cacls_exe% " C:\Users\*" 2 > nul | findstr " (M)" | findstr " Everyone"
124
+ %cacls_exe% " C:\Users\*" 2 > nul | findstr " (M)" | findstr " BUILTIN\Users"
125
+ %cacls_exe% " C:\Documents and Settings\*" /T 2 > nul | findstr " :F" | findstr " BUILTIN\Users"
126
+ %cacls_exe% " C:\Users\*" /T 2 > nul | findstr " :F" | findstr " BUILTIN\Users"
120
127
echo .
121
- echo ... performing same checks but using cacls instead of icacls (for older versions of Windows)...
122
- cacls " C:\Program Files\*" 2 > nul | findstr " (F)" | findstr " Everyone"
123
- cacls " C:\Program Files (x86)\*" 2 > nul | findstr " (F)" | findstr " Everyone"
124
- cacls " C:\Program Files\*" 2 > nul | findstr " (F)" | findstr " BUILTIN\Users"
125
- cacls " C:\Program Files (x86)\*" 2 > nul | findstr " (F)" | findstr " BUILTIN\Users"
126
- cacls " C:\Program Files\*" 2 > nul | findstr " (M)" | findstr " Everyone"
127
- cacls " C:\Program Files (x86)\*" 2 > nul | findstr " (M)" | findstr " Everyone"
128
- cacls " C:\Program Files\*" 2 > nul | findstr " (M)" | findstr " BUILTIN\Users"
129
- cacls " C:\Program Files (x86)\*" 2 > nul | findstr " (M)" | findstr " BUILTIN\Users"
130
- cacls " C:\Documents and Settings\*" 2 > nul | findstr " (F)" | findstr " Everyone"
131
- cacls " C:\Documents and Settings\*" 2 > nul | findstr " (M)" | findstr " Everyone"
132
- cacls " C:\Documents and Settings\*" 2 > nul | findstr " (F)" | findstr " BUILTIN\Users"
133
- cacls " C:\Documents and Settings\*" 2 > nul | findstr " (M)" | findstr " BUILTIN\Users"
134
- cacls " C:\Users\*" 2 > nul | findstr " (F)" | findstr " Everyone"
135
- cacls " C:\Users\*" 2 > nul | findstr " (F)" | findstr " BUILTIN\Users"
136
- cacls " C:\Users\*" 2 > nul | findstr " (M)" | findstr " Everyone"
137
- cacls " C:\Users\*" 2 > nul | findstr " (M)" | findstr " BUILTIN\Users"
138
- cacls " C:\Documents and Settings\*" /T 2 > nul | findstr " :F" | findstr " BUILTIN\Users"
139
- cacls " C:\Users\*" /T 2 > nul | findstr " :F" | findstr " BUILTIN\Users"
140
- echo .
141
128
142
129
echo ---Domain joined? If so check domain controller for GPP files ----
143
130
set user
0 commit comments