Андрей Попов - Windows Script Host для Windows 2000/XP
Р РёСЃ. 4.26. Рнформация РѕР± отказе для сценария WSH РІ журнале событий системы
Разрешим теперь выполнение сценариев WSH (Enabled="1") и установим режим безопасности, при котором будут запускаться только сценарии с цифровыми подписями, для которых установлено доверие (TrustPolicy=2). Если запустить какой-либо сценарий с такой подписью (например, Signed.js с подписью, созданной на основе сертификата "Попов надежный"), то в журнале событий системы появится запись об успехе (рис. 4.27).
Р РёСЃ. 4.27. Рнформация РѕР± успехе для сценария WSH РІ журнале событий системыВ
Применение к сценариям WSH политики ограниченного использования программ
В Windows ХРвстроены политики ограниченного использования программ (SRP, Software Restriction Policies), с помощью которых можно управлять возможностью выполнения программного обеспечения на компьютере. Политики SRP могут применяться и к сценариям WSH любого типа, для этого необходимо, чтобы параметр системного реестра UseWINSAFER, который описан в табл. 4.2, имел значение 1.
Для применения политик SRP к сценариям WSH на локальной машине необходимо сначала загрузить в ММС оснастку Политика "Локальный компьютер" (Local Computer Policy) (рис. 4.28).
Рис. 4.28. Установка политик SRP с помощью оснастки Политика "Локальный компьютер"
ЗамечаниеПроцесс загрузки этой оснастки был подробно описан в разд. "Блокировка локальных и удаленных сценариев WSH. Пример административного шаблона" этой главы, поэтому здесь мы останавливаться на нем не будем.
После этого нужно перейти в раздел Конфигурация компьютера | Конфигурация Windows | Параметры безопасности | Политики ограниченного использования программ | Дополнительные правила (Computer Configuration | Windows Configuration | Security Settings | Software Restriction Policies | Additional Rules).
Создание и изменение дополнительных правил (Additional Rules) в SRP и является механизмом определения политик безопасности для сценариев WSH.
Блокировка сценария с заданным именем
Для того чтобы, пользуясь SRP, запретить выполнение сценариев с определенными именами, нужно создать новое правило для пути (Path Rule), которое позволяет идентифицировать программы по пути к ним. Рассмотрим, например, каким образом можно запретить выполнение всех сценариев, написанных на языке VBScript (т.е. запретить запуск всех файлов с расширением vbs). Для этого нужно, находясь в разделе Дополнительные правила (Additional Rules), выбрать в меню Действие (Action) пункт Создать правило для пути (New Path Rule), после чего на экран будет выведено диалоговое окно, в котором нужно описать создаваемое правило. Здесь в поле Путь (Path) укажем маску "*.vbs" для всех VBScript-сценариев, а в раскрывающемся списке Уровень безопасности (Security level) выберем значение "Не разрешено" ("Disallowed") (рис. 4.29).
Рис. 4.29. Диалоговое окно для создания нового правила для пути
После ввода такого дополнительного правила SRP на машине нельзя будет запускать сценарии с расширением vbs. При попытке выполнения VBScript- сценария будет выведено диалоговое окно с информацией о невозможности его запуска (рис. 4.30).
Также РІ разделе Дополнительные правила (Additional rules) имеется возможность создать правило для хеша (хеш — Рто серия байтов фиксированной длины, которая рассчитывается РїРѕ специальному алгоритму Рё однозначно идентифицирует содержимое файла). РЎ помощью этого правила можно запретить выполнение файла, имеющего заданный хеш. Однако для сценариев, РІ отличие РѕС‚ компилированных исполняемых модулей, это РЅРµ является подходящим ограничением, С‚.Рє. хеш файла СЃРѕ сценарием можно изменить простым добавлением пустой строки РІ текст сценария.
Р РёСЃ. 4.30. Блокировка сценариев WSH СЃ помощью дополнительных правил SRPВ
Блокировка сценариев с заданной подписью
Еще одним возможным ограничением является запрет на выполнение файлов, подписанных с помощью определенного цифрового сертификата ("Попов ненадежный", например).
Рис. 4.31. Диалоговое окно для создания нового правила для сертификата
Для этого нужно в разделе Дополнительные правила (Additional rules) создать новое правило для сертификата (Certificate Rule) (пункт Создать правило для сертификата (New Certificate Rule) в меню Действие (Action)). В диалоговом окне Создание правила для сертификата (New Certificate Rule) в качестве имени субъекта сертификата (Certificate subject name) укажем с помощью кнопки Обзор (Browse) файл C:ScriptПопов.cer (процесс создания этого файла описан в разд. "Управление сертификатами с помощью ММС"), а в раскрывающемся списке Уровень безопасности (Security level) выберем значение "Не разрешено" ("Disallowed") — рис. 4.31.
После ввода этого дополнительного правила SRP на машине нельзя будет запускать никакие исполняемые файлы (сценарии WSH в том числе), которые подписаны с использованием сертификата "Попов ненадежный".