Group Policy 24 марта 2026 10 мин чтения
ЕС
Евгений Семёнов
Генеральный директор ООО АйТи Фреш · 15+ лет в IT

Политики AppLocker: ограничение запуска программ в Windows

Политики AppLocker: ограничение запуска программ в Windows

В корпоративной среде одна из ключевых задач системного администратора — контроль над тем, какие приложения могут запускать пользователи на своих рабочих станциях. Бесконтрольная установка и запуск стороннего ПО приводит к заражению вирусами-шифровальщиками, утечке данных и деградации производительности. Технология AppLocker, встроенная в Windows, позволяет гибко управлять списком разрешённых приложений через групповые политики Active Directory без необходимости покупки сторонних решений.

В этом руководстве мы подробно разберём архитектуру AppLocker, пошаговую настройку через GPO, все типы правил и условий, режим аудита для безопасного тестирования, мониторинг событий блокировки и автоматизацию управления правилами через PowerShell.

Что такое AppLocker и когда его использовать

AppLocker — это компонент Windows, предназначенный для контроля запуска приложений на основе правил (application whitelisting). Он пришёл на смену устаревшей технологии Software Restriction Policies (SRP), которая была признана deprecated начиная с Windows 10 версии 1803.

Ключевые преимущества AppLocker перед SRP:

Изначально AppLocker был доступен только в редакциях Enterprise и Education. Однако начиная с Windows 10 версии 2004 и Windows 11, политики AppLocker можно применять и в редакции Pro, что значительно расширяет возможности его использования в небольших организациях.

AppLocker особенно эффективен в сценариях, где нужно защитить компьютеры общего пользования (киоски, учебные классы, терминальные серверы), а также для выполнения требований стандартов безопасности (CIS Benchmarks, PCI DSS), предписывающих белые списки приложений.

Предварительные требования и служба Application Identity

Перед настройкой правил AppLocker необходимо убедиться, что на целевых компьютерах запущена служба Application Identity (AppIDSvc). Эта служба отвечает за определение и проверку идентичности приложения при его запуске. Без неё правила AppLocker не применяются.

Проверить состояние службы через PowerShell:

Get-Service AppIDSvc | Select-Object Name, Status, StartType

Чтобы гарантировать автоматический запуск службы на всех компьютерах домена, настройте её через групповую политику. Откройте редактор GPO и перейдите:

Computer Configuration → Windows Settings → Security Settings → System Services → Application Identity

Установите тип запуска в Automatic. Это критически важный шаг — без него развёрнутые правила не будут применяться, и вы потратите часы на поиск проблемы.

Для немедленного запуска на локальной машине (например, при тестировании):

Set-Service -Name AppIDSvc -StartupType Automatic
Start-Service AppIDSvc
Служба Application Identity по умолчанию имеет тип запуска Manual. Если вы забудете перевести её в Automatic через GPO, правила AppLocker будут присутствовать в политике, но фактически не будут работать. Это самая частая ошибка при внедрении AppLocker.

Создание политики AppLocker через GPO

Откройте консоль управления групповыми политиками (gpmc.msc) и создайте новый объект GPO или отредактируйте существующий. Перейдите к настройкам AppLocker:

Computer Configuration → Windows Settings → Security Settings → Application Control Policies → AppLocker

В правой панели вы увидите четыре категории правил:

Шаг 1: Создание правил по умолчанию

Прежде чем добавлять собственные запрещающие правила, обязательно создайте набор правил по умолчанию. Щёлкните правой кнопкой по категории Executable Rules и выберите Create Default Rules. Будут созданы три базовых правила:

Аналогично создайте правила по умолчанию для остальных категорий (Windows Installer Rules, Script Rules). Это предотвратит случайную полную блокировку системы.

Никогда не включайте принудительный режим AppLocker без предварительного создания правил по умолчанию. Без базовых разрешающих правил система заблокирует все приложения, включая системные процессы, что может привести к полной неработоспособности компьютера и невозможности входа.

Шаг 2: Добавление пользовательских правил

После создания базовых правил можно добавить запрещающие правила. Например, чтобы заблокировать запуск приложений из пользовательских папок (частый вектор атак шифровальщиков), создайте правило Deny для группы Everyone с условием Path:

Типы условий для правил AppLocker

Каждое правило AppLocker использует одно из трёх условий для идентификации приложения.

Publisher (Издатель)

Условие на основе цифровой подписи файла. Это наиболее гибкий и рекомендуемый тип, поскольку правило продолжает работать при обновлении приложения до новой версии. Можно задать различный уровень детализации:

Path (Путь)

Условие на основе расположения файла. Поддерживает подстановочные символы и специальные переменные AppLocker:

Например, правило C:\Tools\* разрешит запуск всех исполняемых файлов из папки C:\Tools и её подпапок.

File Hash (Хэш файла)

Условие на основе SHA256-хэша файла. Используется для неподписанных приложений. Главный недостаток — при каждом обновлении приложения хэш меняется, и правило перестаёт работать. Подходит для редко обновляемых утилит.

Рекомендуемый приоритет выбора условий: сначала Publisher (если приложение подписано), затем Path (для доверенных каталогов), и только в крайнем случае File Hash. Комбинируйте разные типы условий для максимальной гибкости и безопасности.

Режим аудита: тестирование без блокировки

Прежде чем переводить AppLocker в принудительный режим, настоятельно рекомендуется использовать режим аудита (Audit only). В этом режиме все приложения запускаются без ограничений, но каждый случай, который был бы заблокирован, записывается в журнал событий.

Настройка режима: в редакторе GPO нажмите Configure rule enforcement в свойствах AppLocker и для каждой категории выберите Audit only.

Через PowerShell можно проверить текущий режим:

Get-AppLockerPolicy -Effective | Select-Object -ExpandProperty RuleCollections

Рекомендуемый план внедрения:

  1. Разверните политику в режиме Audit only на пилотную группу компьютеров (2-4 недели)
  2. Проанализируйте журналы событий и выявите легитимные приложения, которые будут заблокированы
  3. Создайте разрешающие правила для этих приложений
  4. Переведите политику в режим Enforce rules
  5. Распространите на остальные компьютеры домена

Мониторинг событий AppLocker

Все события AppLocker записываются в журнал Applications and Services Logs → Microsoft → Windows → AppLocker. Ключевые Event ID, на которые следует обращать внимание:

Для быстрого поиска всех заблокированных приложений через PowerShell:

Get-WinEvent -LogName "Microsoft-Windows-AppLocker/EXE and DLL" |
    Where-Object { $_.Id -eq 8004 } |
    Select-Object TimeCreated, Message -First 50 |
    Format-List

Для анализа событий аудита (что было бы заблокировано):

Get-WinEvent -LogName "Microsoft-Windows-AppLocker/EXE and DLL" |
    Where-Object { $_.Id -eq 8003 } |
    Select-Object TimeCreated,
        @{N='User';E={$_.Properties[1].Value}},
        @{N='FilePath';E={$_.Properties[0].Value}} -First 100 |
    Format-Table -AutoSize
Настройте пересылку событий AppLocker (Event ID 8003 и 8004) на централизованный сервер сбора логов. Это позволит оперативно реагировать на попытки запуска запрещённого ПО и корректировать правила при необходимости.

Автоматическая генерация правил

Ручное создание правил для десятков приложений — трудоёмкий процесс. AppLocker предлагает мастер Automatically Generate Rules, который сканирует указанную папку и создаёт правила для всех найденных исполняемых файлов.

Из консоли GPO: щёлкните правой кнопкой по категории правил и выберите Automatically Generate Rules. Укажите папку для сканирования (например, C:\Program Files) и группу пользователей, для которой создаются разрешения. Мастер предложит выбрать тип условий: Publisher, File Hash или Path.

Аналогичную операцию можно выполнить через PowerShell. Сначала получите текущую политику, затем сгенерируйте правила на эталонном компьютере:

# Получить текущую политику
Get-AppLockerPolicy -Local | Format-List

# Сгенерировать правила для папки Program Files
Get-AppLockerFileInformation -Directory "C:\Program Files" -Recurse |
    New-AppLockerPolicy -RuleType Publisher,Hash -User Everyone -Optimize |
    Set-AppLockerPolicy -Merge

Управление правилами AppLocker через PowerShell

PowerShell позволяет полностью автоматизировать управление политиками AppLocker. Это особенно полезно при стандартизации правил на множестве серверов или при интеграции в CI/CD пайплайны.

Экспорт и импорт политик

Экспорт текущей политики в XML-файл для резервного копирования или переноса:

Get-AppLockerPolicy -Effective -Xml | Out-File "C:\Backup\AppLockerPolicy.xml" -Encoding UTF8

Импорт политики из файла:

Set-AppLockerPolicy -XmlPolicy "C:\Backup\AppLockerPolicy.xml"

Для применения политики на удалённый компьютер через GPO используйте модуль GroupPolicy:

$gpo = Get-GPO -Name "AppLocker - Workstations"
Set-AppLockerPolicy -XmlPolicy "C:\Policies\applocker_standard.xml" -Ldap "LDAP://CN=$($gpo.Id),CN=Policies,CN=System,DC=contoso,DC=local"

Создание правил через PowerShell

Создание разрешающего правила по издателю для конкретного приложения:

# Получить информацию о файле
$fileInfo = Get-AppLockerFileInformation -Path "C:\Program Files\7-Zip\7z.exe"

# Создать правило Publisher для группы Users
$rule = $fileInfo | New-AppLockerPolicy -RuleType Publisher -User "CONTOSO\Domain Users" -Optimize

# Применить правило (объединить с существующими)
$rule | Set-AppLockerPolicy -Merge

Тестирование политики

Перед применением можно протестировать, как политика повлияет на конкретный файл:

Test-AppLockerPolicy -Path "C:\Users\john\Downloads\setup.exe" -XmlPolicy "C:\Policies\applocker_standard.xml" -User "CONTOSO\john"

Результат покажет, будет ли файл разрешён (Allowed), заблокирован (Denied) или не попадает ни под одно правило.

При использовании Set-AppLockerPolicy без флага -Merge текущая политика будет полностью заменена содержимым XML-файла. Всегда указывайте -Merge, если хотите добавить новые правила к существующим, а не заменить их.

Исключения в правилах AppLocker

Каждое правило AppLocker поддерживает исключения, что обеспечивает гибкость настройки. Например, вы можете создать разрешающее правило для всех приложений Microsoft, но добавить исключение для powershell_ise.exe, если хотите запретить его запуск обычным пользователям.

Исключения особенно полезны в сочетании с правилами типа Publisher. Например: разрешить все приложения от издателя Adobe, кроме Adobe Flash Player (который давно устарел и является вектором атак).

Важно помнить иерархию обработки правил:

  1. Запрещающие правила (Deny) всегда имеют приоритет над разрешающими (Allow)
  2. Если для категории существует хотя бы одно правило, по умолчанию всё, что не разрешено явно, блокируется
  3. Исключения в разрешающем правиле фактически создают запрет для указанных файлов

AppLocker vs. WDAC: что выбрать

Начиная с Windows 10, Microsoft продвигает Windows Defender Application Control (WDAC) как более современную альтернативу AppLocker. Однако оба инструмента имеют свои области применения.

AppLocker лучше подходит, когда:

WDAC предпочтителен, когда:

В реальной практике AppLocker и WDAC можно использовать совместно. AppLocker обеспечит контроль на уровне пользователей, а WDAC добавит защиту на уровне ядра. Такой комбинированный подход даёт наилучший уровень безопасности.

Практические рекомендации по внедрению

На основе опыта внедрения AppLocker в десятках организаций можно выделить ключевые рекомендации:

Правильно настроенный AppLocker существенно повышает уровень безопасности рабочих станций и серверов, защищая от запуска вредоносного ПО, несанкционированных утилит и нелицензионного софта. Если в вашей организации требуется внедрение политик контроля приложений, настройка групповых политик Active Directory или комплексный аудит безопасности инфраструктуры, специалисты IT-аутсорсинговой компании ITfresh помогут реализовать это быстро и без рисков для рабочих процессов.

Официальная документация: Microsoft Learn — Windows Server, Microsoft Learn — PowerShell

Часто задаваемые вопросы

Что такое Политики AppLocker: ограничение запуска программ в Windows?

Политики AppLocker: ограничение запуска программ в Windows — это важный аспект системного администрирования, который позволяет настроить и оптимизировать работу IT-инфраструктуры. В данной статье подробно рассматриваются все ключевые моменты.

Как правильно настроить Политики AppLocker: ограничение запуска программ в Windows?

Для корректной настройки Политики AppLocker: ограничение запуска программ в Windows необходимо следовать пошаговой инструкции, представленной в статье выше. Важно учитывать особенности вашей инфраструктуры и требования безопасности.

Какие типичные ошибки возникают при работе с Политики AppLocker: ограничение запуска программ в Windows?

Наиболее частые ошибки при работе с Политики AppLocker: ограничение запуска программ в Windows: некорректная конфигурация, недостаточные права доступа и несовместимость версий. Рекомендуем обратиться к специалистам ITFresh для профессиональной настройки.

ООО АйТи Фреш

Возьмём это на себя

Настройка и администрирование — наша ежедневная работа. 15+ лет опыта, собственная инфраструктура, сертифицированные инженеры.

15+лет опыта
25+клиентов
8серверов Dell