Политики управления приложениями
AppLocker – управление правами на запуск приложений.
Одна из причин, по которой безопасность корпоративной сети организации может оказаться под угрозой, – несанкционированная установка и запуск приложений пользователями. Сотрудники могут запускать сомнительные приложения, утилиты, которые расходуют корпоративный трафик (например, Bittorent-клиенты), программы, которые вносят изменения в различные компоненты системы, что, в конечном итоге, приводит к ухудшению её производительности. Наконец, не исключена возможность запуска приложений, содержащих вредоносный код, что может стать причиной заражения компьютера вирусами.
В предыдущих версиях Windows была возможность решения этой задачи при помощи политик ограниченного использования программ (Software Restriction Policies), однако этот инструмент был неудобен и несовершенен. В Windows 7 функция политик ограниченного использования программ заменена средством AppLocker, которое представляет собой изменённую и доработанную версию Software Restriction Policies.
AppLocker значительно упрощает контроль за действиями пользователей, которые касаются установки приложений, а также запуска файлов EXE, использования библиотек DLL, файлов инсталляторов MSI и MSP, а также сценариев. Основные отличия AppLocker от политик ограниченного использования программ:
− применение правила к определённому пользователю или к группе, а не только ко всем пользователям;
− мастер автоматического создания правил;
− импорт и экспорт созданных правил;
− режим «Только аудит», в котором ведется аудит приложений, которые обрабатываются правилами, однако на самом деле правила не применяются;
− условие «Издатель», которое является расширенной версией условия «Сертификаты», существовавшего ранее;
− поддержка новой командной строки Windows Power Shell;
− коллекции правил для разных типов файлов, которые не зависят друг от друга.
Для доступа к настройкам AppLocker необходимо перейти в раздел «Администрирование» (Administrative Tools) панели управления выбрать пункт «Локальная политика безопасности» (Local Security Policy), после чего раскрыть список «Политики управления приложениями» (Application Control Policies).
Рисунок 4 – Узел «Политики управления приложениями»
Одна из особенностей AppLocker состоит в том, что по умолчанию все правила, настроенные при помощи этого средства, применяются. Именно поэтому необходимо очень осторожно настраивать их, так как можно по неопытности заблокировать работу Windows. Во-первых, рекомендуется перед созданием правил перейти в окно их настройки, щёлкнув по ссылке «Настроить применение правил» (Configure Rule Enforcement), и для каждого типа правил (исполняемые файлы, установщик Windows и сценарии) выбрать вариант применения «Только аудит» (Audit Only). В этом случае правила с любыми настройками не смогут блокировать работу приложений или системы в целом, однако при помощи журнала событий администратор сможет просмотреть, как они применяются по отношению к файлам или приложениям. Если окажется, что правила блокируют приложения, к которым доступ должен быть разрешён, или, наоборот, не действуют на программы, к которым нужно ограничить доступ, правила можно будет отредактировать.
Второе решение, которое может помочь администраторам разобраться с новыми возможностями управления доступом, – создание и отладка правил на тестовом компьютере. AppLocker поддерживает импорт и экспорт правил, благодаря чему можно создать набор политик ограничений в безопасной среде, тщательно протестировать их работоспособность, после чего импортировать уже в рабочую среду.
Для применения правил, созданных при помощи AppLocker, необходимо, чтобы на компьютерах была запущена служба «Удостоверение приложения» (Application Identity). По умолчанию она отключена. Для её запуска откройте раздел «Администрирование» панели управления и выберите пункт «Службы», после чего найдите службу в списке, щёлкните по её названию правой кнопкой мыши и выберите команду «Запустить». В свойствах службы можно настроить её автоматический запуск.
Рисунок 5 – Окно свойств AppLocker, вкладка «Примечание»
Рисунок 6 – Запуск службы «Удостоверение приложения»
По умолчанию в AppLocker используется три типа (коллекции) правил, которые настраиваются и используются независимо друг от друга: исполняемые файлы (EXE и COM), установщик Windows (MSI и MSP) и сценарии (PS1, BAT, CMD, VBS и JS), однако при необходимости можно также включить правила для файлов библиотек DLL (сюда входят и файлы с расширением OCX). Для этого нужно установить флажок «Включить коллекцию правил DLL» (Enable the DLL rule collection) на вкладке «Дополнительно» (Advanced) окна «Свойства AppLocker» (AppLocker Properties).
Рисунок 7 – Окно свойств AppLocker, вкладка «Дополнительно»
Стоит, однако, иметь в виду, что использование таких правил может существенно повлиять на производительность системы. Это связано с тем, что каждое приложение, как правило, использует для работы несколько файлов библиотек, поэтому на их проверку и соответствие правилам уходит гораздо больше времени, чем на проверку только приложений. Кроме этого, некоторые приложения загружают дополнительные файлы библиотек в процессе работы, поэтому проверка, которую Windows будет при этом выполнять, может замедлить работу пользователя с программой. При включении правил DLL их необходимо создавать для каждой библиотеки, которая используется всеми разрешёнными программами.
Необходимо отметить, что использование большого числа правил любого типа (это касается не только правил DLL) в любом случае будет снижать производительность системы, поскольку при попытке запуска каждого приложения Windows потребуется обрабатывать все правила, чтобы разрешить или запретить пользователю работу с программой.
Именно поэтому, создавая правила, имеет смысл строить их таким образом, чтобы общее их число было как можно меньшим. Все правила AppLocker работают по принципу разрешения («белый список»), запрета («черный список») и исключения. Иными словами, перед созданием правила стоит решить, что удобнее: 1) сделать правило, разрешающее определённое действие (при этом запуск всех приложений, которых нет в составленном администратором списке, будет запрещён), и сделать исключения для некоторых групп пользователей или приложений; или же 2) создать правило, разрешающее запускать все приложения, кроме указанных в списке, и также указать исключения.
Несмотря на то, что при помощи AppLocker можно создавать как разрешающие, так и запрещающие правила, в большинстве случаев рекомендуется использовать первый вариант. Это связано с тем, что для обеспечения безопасности любой организации гораздо логичнее составить фиксированный список разрешённых приложений, который можно по мере необходимости обновлять, нежели попытаться перечислить в правиле те программы, которые запрещено запускать. Любой новый вирус, который администратор не успел добавить в запрещающее правило, имеет все шансы проникнуть в корпоративную сеть. Также причиной, по которой рекомендуется использовать разрешающие правила, является то, что запрещающие действия во всех случаях переопределяют разрешающие.
Для создания нового правила раскройте список AppLocker в окне «Локальная политика безопасности», необходимо щёлкнуть правой кнопкой мыши по нужному типу правила и выбрать команду «Создать новое правило». Будет запущен мастер, на первом этапе работы которого нужно будет определиться с тем, будет ли это правило разрешать или запрещать определённые действия, а также, на какие категории пользователей оно будет распространяться.
Затем нужно будет выбрать тип основного условия: «Издатель» (Publisher), «Путь» (Path) и «Хэшируемый файл» (File Hash). Несмотря на то, что типы условий похожи на те, которые использовались в политиках ограниченного использования программ в предыдущих версиях Windows, работа с ними организована по-другому.
Наиболее интересным является условие «Издатель», прототипом которого в политиках ограниченного использования программ было условие «Сертификаты» (Certificate). Это условие дает возможность разрешить запуск приложений, для которых имеется цифровая подпись издателя. При создании правил с таким условием учитывается не только название производителя, как это было в Windows XP, но и другая информация, такая как название продукта, имя файла, номер версии.
При этом условие может распространяться в точности на указанный номер версии приложения или на все версии, номер которых выше или ниже заданного. Благодаря этому, можно гибко настроить правило, которое будет разрешать установку новых версий приложений, но при этом запрещать установку старых релизов, которые могут быть несовершенны с точки зрения безопасности. Для использования условия «Издатель» нужно указать путь к файлу приложения, который содержит цифровую подпись. Установив флажок «Пользовательские значения», можно вручную отредактировать значения всех полей. Стоит иметь в виду, что если приложение не имеет цифровой подписи, то использовать условие «Издатель» в его отношении невозможно.
Условие «Путь» позволяет определить приложения, которые разрешено запускать и устанавливать пользователю, на основе их расположения в файловой системе локального компьютера, в сети или на сменных носителях. Создавая такое условие, можно использовать подстановочные знаки и переменные окружения. Например, чтобы указать путь на CD/DVD-диске, нужно использовать переменную %REMOVABLE%, а для указания пути на USB-накопителе – %HOT%.
Условие «Путь» необходимо использовать очень осторожно, так как при недостаточной продуманности оно может стать причиной того, что пользователи смогут с его помощью обходить некоторые запреты. Например, если создать разрешающее условие такого типа и включить в него расположение папки, в которую пользователь может выполнять запись, то пользователь сможет скопировать в такую папку запрещённый для запуска файл из другого расположения и запустить его.
Условие «Хэшируемый файл» в большинстве случаев является наименее эффективным, так как определение легитимности файла построено на вычислении его контрольной суммы. Нетрудно догадаться, что если выходит обновление приложения, то его контрольная сумма изменяется, и условие перестает работать. С другой стороны, такой способ позволяет защититься от возможности запуска известной программы, в которую был внедрен вредоносный код. Поскольку при этом контрольная сумма изменяется, модифицированное приложение запустить будет невозможно.
Как видно, каждое из условий несовершенно и имеет свои недостатки. Именно поэтому на следующем этапе работы мастера предлагается настроить исключения. Исключения можно использовать, если в качестве основного выбраны условия «Издатель» и «Путь».
Наконец, на последнем этапе работы мастера нужно дать правилу название, а также снабдить его описанием. Несмотря на то, что последнее необязательно, не стоит пренебрегать этой возможностью, так как описание может помочь в будущем вспомнить, за что отвечает то или иное правило.
Чтобы лучше понять, как работают правила, можно начать с создания правил по умолчанию. Они доступны для каждого из типов правил. Например, правила для исполняемых файлов включают такие: разрешение на запуск любых приложений членам группы «Администраторы», разрешение на запуск приложений, находящихся в директории Program Files и в папке Windows, для членов группы «Все». Для создания набора правил по умолчанию нужно раскрыть список AppLocker в окне «Локальная политика безопасности», щёлкнуть правой кнопкой мыши по нужному типу правила и выбрать команду «Создать правила по умолчанию».
Рисунок 8 – Создание правила по умолчанию
Правила по умолчанию можно редактировать. Для этого нужно щёлкнуть по названию правила в списке и выбрать строку «Свойства». Редактировать можно все свойства правил, например, добавлять исключения, изменять пути, группы пользователей, на которые они распространяются, и т.д.
Рисунок 9 – Редактирование свойств
В AppLocker встроен автоматический механизм, упрощающий создание правил. Выберите команду «Создать правила автоматически» для определённого типа правил, укажите группы пользователей, к которым будут применяться создаваемые правила, а также папку, в которую установлены приложения.
При автоматическом создании правил мастер пытается максимально уменьшить их число. В таком режиме создаются только разрешающие правила. Если среди проанализированных приложений имеются такие, которые созданы одним разработчиком и у которых совпадает название продукта (согласно цифровой подписи), для них создаётся одно правило с условием «Издатель». Что касается условия «Хеш», то создаётся одно условие, которое содержит контрольные суммы всех файлов.
После завершения работы мастера автоматического создания правил AppLocker выдает отчет, в котором выводит общее количество файлов и число правил, которые будут созданы. Перед созданием правил есть возможность просмотреть как проанализированные файлы, так и составленные правила.
Используя AppLocker, нужно иметь в виду, что правила, созданные с его помощью, могут быть применены только на компьютерах, работающих под управлением Windows 7 Максимальная, Windows 7 Корпоративная и Windows Server 2008 R2.