Централизованный аудит событий SRP в домене
Среда, 03 - Июль - 2013 9 комментариев
Политики Software Restriction Policies и AppLocker играют важнейшую роль в защите компьютера от вирусов и нежелательных программ. Блокируя запуск неразрешённой программы, политика генерирует событие в журнале Application локального компьютера, что позволяет администратору контролировать состояние системы и по мере необходимости вносить изменения в параметры политики. Однако, отслеживать содержимое журналов одновременно на большом числе компьютеров — слишком сложная задача. Существенно упростить контроль можно, настроив автоматическую рассылку почтовых уведомлений при появлении в журнале интересующих нас событий.
Автоматические уведомления позволяют решить следующие задачи:
- вовремя реагировать и подправлять политику, если нужные программы были заблокированы и перестали работать при внедрении Application Whitelisting в пределах домена;
- отслеживать попытки запуска пользователем нежелательных программ;
- своевременно отслеживать блокировки попыток запуска троянских программ из Интернета, съёмных дисков и других источников.
—
Для Windows Vista и выше вопрос решается созданием задачи в Task Scheduler (Планировщике задач) со следующими параметрами:
- User Account: SYSTEM, Do not store password;
- Run whether user is logged on or not; Run with highest privileges;
- Trigger: On an Event, Log: Application, Event ID: 865;
- Action1: Start a program, CMD /c wevtutil.exe qe Application «/q:*[System [(EventID=865)]]» /f:text /rd:true /c:1 > C:\Windows\EventDetails.txt
- Action2: Start a program, BLAT C:\Windows\EventDetails.txt -f eventlog@MyCompany.com -to support@MyCompany.com -subject «EventLog Monitor — SRP Events» -server Mail.MyCompany.com
Команды BLAT в Windows нет, это отдельная программа (просто exe-файл), источник: http://www.blat.net/. Можно воспользоваться и встроенным типом действия Send an e-mail, однако тогда придётся текст аудированного события прикладывать отдельным файлом. Я предпочитаю видеть все детали сразу в теле письма.
Разумеется, создавать задачу в Task Scheduler каждого отдельного компьютера не нужно. Воспользуйтесь Group Policy Preferences, они запросто внесут задачу в Планировщики, а также раскидают BLAT.EXE сразу на все машины домена. При появлении в журнале Application события с номером 865 срабатывает триггер, затем детали актуального события экспортируются в текстовый файл и высылаются на почту.
—
В Windows XP/2003 ловушка события создаётся чуть иначе. Вместо Task Scheduler придётся воспользоваться командой EVENTTRIGGERS:
EVENTTRIGGERS /Create /TR «EventLog Monitor — SRP Events» /RU «SYSTEM» /L Application /EID 865 /TK «C:\Windows\EventLogMonitor.bat Event865»
Далее программируем реакцию на событие в файле EventLogMonitor.bat:
CSCRIPT C:\Windows\System32\eventquery.vbs -l Application -fi «ID eq 865» -R 1 -v > C:\Windows\EventDetails.txt
BLAT C:\Windows\EventDetails.txt -f eventlog@MyCompany.com -to support@MyCompany.com -subject «EventLog Monitor — SRP Events» -server Mail.MyCompany.com
Команда CSCRIPT и VBS-файл являются встроенными в XP/2003.
Надеюсь, оформить команду EVENTTRIGGERS в качестве Startup Script (сценария загрузки) для компьютеров всего домена сможете самостоятельно. Максимум, вам потребуется создать отдельный WMI-фильтр для выборки политикой только компьютеров с нужной операционной системой:
Select * from Win32_OperatingSystem where Caption = «Microsoft Windows XP Professional»
—
Немного подумав, вы сможете в данное наколенное решение добавить уведомления и по некоторым другим важным событиям — например, Account Lockout (XP: EventID=644, Log:Security) (Vista: EventID=4740, Log:Security).
Reblogged this on jambulkin and commented:
Централизованный аудит событий SRP в домене — Вешчь!
Огромное спасибо за Ваши публикации, книгу про SRP и прочие! Очень полезно, очень интересно читать.
В данном случае имеется проблемка.
DC Windows server 2012, клиент windows 7 32bit. В планировщик клиента не передается флаг тригера «активно». В соответствующей политике галка activate стоит.
На вкладке General варианты выбора опции Configure for: Windows Vista or Windows Server 2008 или Windows 7 пробовал. Результат не меняется.
Не сталкивались с такой проблемой?
Dear Jambulkin,
Книги по SRP ещё нет, ожидаю только к концу года.
С описанной проблемой пока не сталкивался. Попробуйте задачу на клиенте удалить, затем пусть политиками она приедет снова. Полезно было бы также зачистить кэш политик на клиенте. Было бы неплохо понять, чем проблемная машина отличается от тех, где проблема не наблюдается.
Под книгой я имел в виду «Руководство по настройке», в котором в том числе было описание SRP. С удовольствием прочту новую книгу, если она будет доступна.
Не забудьте отписаться о её выходе. Думаю, многие её ждут.
На данный момент ситуация наблюдается на всех клиентах. Удаление задачи в планировщике и создание ее снова через GPP (и даже создание новой политики) не приводит к срабатыванию триггера, хотя он теперь в состоянии activate. Отключение и повторное включение этой галки в триггере руками на клиенте помогает. Сразу начинает отрабатывать.
Клиенты Windows 7 SP1 со всеми обновлениями, кроме вышедших на этой неделе.
Контроллер домена Windows Server 2012 со всеми обновлениями кроме крайних на этой неделе. Уровень домена 2012.
Буду дальше пробовать в свободное время. Если будут подвижки, отпишусь.
Удалось выкроить несколько минут. Практика показала, что достаточно пересохранить триггер в запланированном задании на клиенте, и все начинает работать. Галка activate значения не имеет. После очередного обновления политики на клиенте работать перестает, пока снова вручную не войдешь в триггер и не нажмешь ОК, чтобы его снова пересохранить.
Кроме события 865 можно добавить и 866. Blat можно заменить vbs. Для отключение SRP политик, кроме дефолтного unrestricted, надо удалить из реестра и явно запрещающие политики.
Есичо, у себя я уже заменил bat/blat на powershell. Придётся публиковать, да?..
По поводу запретов — лучше их не применять вообще, тогда не придётся дополнительно обрабатывать.
Обычно я говорю «если где-то вижу Запреты на NTFS, значит, администратор плохо спланировал структуру ресурсов».
У меня в Вин7 WEVTUTIL не работал с вашими параметрами, писал, что слишком много аргументов, в итоге, заработала вот такая строчка:»CMD /c WEVTUtil query-events Application /count:1 /rd:true /format:text /q:»Event[System[(EventID=865)]]» > c:\logs\SRP-EventDetails.log»
WordPress фокусничает с кавычками, поэтому.