Я пытаюсь ввести некоторые скудные дополнительные меры по предотвращению вредоносных программ, ограничив выполнение * .exe в нескольких местах - в частности, временные папки, в которые распаковываются различные инструменты сжатия, когда пользователь может открыть исполняемый файл прямо из Zip-файла.
Из статьи TechNet, http://technet.microsoft.com/nl-nl/library/cc786941%28v=ws.10%29.aspx:
Вы можете использовать переменные среды в правиле пути. Поскольку правила пути оцениваются в клиентской среде, возможность использовать переменные среды (например,% Windir%) позволяет правилу адаптироваться к среде конкретного пользователя.
...
Правило пути может включать? и * подстановочные знаки, позволяющие таким правилам, как «* .vbs» соответствовать всем файлам сценариев Visual Basic. Следующие примеры иллюстрируют использование подстановочных знаков:
- «\ DC - ?? \ login $» соответствует \ DC-01 \ login $, \ DC-02 \ login $
- «* \ Windows» соответствует C: \ Windows, D: \ Windows, E: \ Windows
- «C: \ win *» соответствует c: \ winnt, c: \ windows, c: \ windir
У меня есть эти правила пути (которые я применял как по отдельности, так и в различных комбинациях):
%APPDATA%\*.exe
%APPDATA%\*\*.exe
%LOCALAPPDATA%\*.exe
%LOCALAPPDATA%\*\*.exe
%TEMP%\*.exe
%TEMP%\7z*\*.exe
%TEMP%\wz*\*.exe
%TEMP%\Rar*\*.exe
... который теоретически должен представляют исполняемые файлы непосредственно во временной папке пользователя, а исполняемые файлы в временных папках, названные так, как Winzip, WinRAR и 7-zip могут называть свои временные папки (например, %TEMP%\7zSF20.tmp\the_file.exe
).
В %APPDATA%
и %LOCALAPPDATA%
одни работают; в %TEMP%
другие не делают. Исполняемые файлы появиться быть заблокированным в% TEMP%, но это только потому, что в настройках по умолчанию они также соответствуют %LOCALAPPDATA%\*\*.exe
правило (по умолчанию Temp находится в AppData \ Local).
Первоначально я думал, что это проблема с подстановочными знаками в частичных именах папок, но, похоже, это характерно для использования переменной% TEMP% (отсюда и перезапись).
Я подтвердил два обходных пути (и почему я бы предпочел не использовать их):
с помощью %LOCALAPPDATA%\Temp
на месте %TEMP%
%TEMP%
переменная может отличаться от %LOCALAPPDATA%\Temp
.с помощью %HKEY_CURRENT_USER\Environment\TEMP%
%HKEY_CURRENT_USER\Environment\TEMP%\7z*\*.exe
%HKEY_CURRENT_USER\Environment\TEMP%7z*
приблизится ( \
между переменной и подпапкой указывать не следует, и после этого вы не можете указать маску имени файла)SET TEMP=C:\
и запустил программу из командной строки).(Как бы то ни было, я попытался настроить SRP как в разделе «Компьютер», так и в разделе «Пользователь» объекта групповой политики, как независимо, так и одновременно, на случай, если один перезаписал другой или %TEMP%
было решено по-разному на уровне компьютера и пользователя.)
Что такого особенного в %TEMP%
переменная, которая здесь не применяется, тогда как что-то вроде %LOCALAPPDATA%\Temp\\wz*\\*.exe
бы?
Похоже, что ограничение связано именно с %TEMP%
переменная окружения. Я отредактировал вопрос как таковой.
Программа может увидеть другое содержимое% TEMP%, чем вы, когда вы проверяете его в cmd.exe или command.com. Иногда они не совпадают.
Но использование переменных среды в политике ограниченного использования программ в любом случае - плохая идея, потому что вредоносное ПО может изменить переменную.
Пожалуйста, попробуйте это:
%HKEY_CURRENT_USER\Environment\TEMP%7z*/*.exe
Если вы опускаете обратную косую черту (\) после закрытия%, а затем используете прямую косую черту (/) для подкаталогов
Я нашел эту ссылку: https://www.sysadmins.lv/blog-en/software-restriction-policies-rule-creation.aspx
Я использую это, чтобы заблокировать exe-файлы из% TMP% и% TMP% * \, это выглядит странно, но он работает здесь на клиентах Win7 pro, UAC включен, нет административных разрешений для текущего пользователя.
%HKEY_CURRENT_USER\Environment\TEMP%*exe
%TEMP%\*\*.exe
Я пытался использовать %TEMP%\Rar*\*.exe
и успешно заблокирован запуск из %TEMP%\Rar15\putty.exe
и из %TEMP%\Rar14.tmp\putty.exe
Не думаю, что в% TEMP% может быть что-то особенное. Я дважды проверил, путь к ключу реестра, который я использую, не влияет %TEMP%\Rar*\*.exe