Аудит доступа к ресурсам. Аудит доступа к объектам

В каждом из журналов накапливается большое количество событий, в которых трудно иногда найти нужные события. Заметим вначале, что щелчок мышью на заголовке любого столбца в консоли (оснастке) " Просмотр событий " позволяет отсортировать события по убыванию или возрастанию значений данного столбца. Для более точного отбора искомых событий служат средства фильтрации в " Просмотре событий ". Если открыть свойства какого-либо журнала, то в открывшейся панели, кроме закладки " Общие ", имеется также закладка " Фильтр ", позволяющая установить правила для отбора событий. Посмотрим внимательно на данную закладку (рис. 16.4):


Рис. 16.4.

Можно установить правила отбора:

  • по типу событий - уведомления, предупреждения, ошибки, аудит успехов, аудит отказов;
  • по источнику (например, компоненты системы Alerter , Browser , DCOM , DHCP , disk , eventlog , Server , System и др.);
  • по категории (например, Диск , Оболочка , Принтеры , Сеть , Службы , Устройства и др.);
  • по известному коду события;
  • по имени пользователя;
  • по имени компьютера;
  • задать период времени - с какого по какой момент времени отобрать события.


Рис. 16.7.

Аудит

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

Процесс аудита безопасности настраивается с помощью групповых политик (напомним, что групповые политики можно определять для сайта, домена или организационного подразделения, а также для отдельной рабочей станции или сервера). Параметры аудита безопасности находятся в разделе " Параметры безопасности - Локальные политики - Политики аудита " любого объекта групповых политик .


Рис. 16.9.

После применения политик настроим аудит доступа для нужных объектов (например, для папки Folder1 на сервере DC1 ) - откроем Свойства данной папки (папка должна быть размещена на разделе с файловой системой NTFS), перейдем на закладку " Безопасность ", нажмем кнопку " Дополнительно " и перейдем на закладку " Аудит ". Добавим в список пользователей, для которых будут отслеживаться попытки доступа к папке Folder1 , группу " Пользователи домена " и установим, какие именно попытки будут регистрироваться в журнале " Безопасность " (например, попытки удаления папок и файлов, успешные и неуспешные,

Иногда бывает необходимо понять кто удалил/изменил/переименовал конкретный файл или папку. В ОС Windows для этого используется аудит доступа к объектам.

Аудит это запись в специальные журналы информации об определенных событиях (источник, код события, успешность, объект и т.д.). Объектом аудита может являться как любой файл или папка, так и определенное событие, например вход в систему или выход из нее, то есть можно записывать все события происходящие с конкретным файлом или папкой - чтение, запись, удаление и т.д., можно события входа в систему и т.д.

Необходимо понимать, что аудит забирает на себя.

Для того, чтобы можно было настраивать аудит файлов и папок необходимо предварительно включить эту возможность через локальные (или в случае если у Вас используется Microsoft AD групповые) политики безопасности.

В случае локальных политик необходимо запустить оснастку “Локальная политика безопасности”, для этого необходимо нажать комбинацию клавиш Win+R, в открывшееся поле ввести secpol.msc и нажать клавишу Enter.

В открывшейся оснастке в дереве слева необходимо перейти в раздел “Локальные политики” - “Политика аудита”.

Далее необходимо выбрать необходимую нам политику - в данном случае это “Аудит доступа к объектам”. Именно этой политикой регулируется доступ к объектам файловой системы (файлам и папкам) и раскрыть ее двойным щелчком мыши. В открывшемся окне необходимо выбрать какие именно типы событий будут регистрироваться - “Успех” (разрешение на операцию получено) и/или “Отказ” - запрет операции и проставить соответствующие галочки, после чего нажать “Ок”.

Теперь когда включена возможность ведения аудита интересующих нас событий и их тип можно переходить к настройке самих объектов - в нашем случае файлов и папок.

Для этого необходимо открыть свойства файла или папки, перейти на вкладку “Безопасность”, нажать “Дополнительно” и “Аудит”.

Нажимаем “Добавить” и начинаем настраивать аудит.

Сначала выбираем субъект - это чьи действия будут аудироваться (записываться в журнал аудита).

Можно вписать туда имя пользователя или группы, если имя заранее неизвестно, то можно воспользоваться кнопкой “Дополнительно” которая открывает форму поиска где можно выбрать интересующих нас пользователей и группы. Чтобы контролировались действия всех пользователей необходимо выбрать группу “Все”.

Далее необходимо настроить тип аудируемых событий (Успех, Отказ, Все), также область область применения для аудита папок - только эта папка, папка с подпапками, только подпапки. только файлы и т.д., а также сами события аудита.

Для папок поля такие:

А такие для файлов:

После этого начнется сбор данных аудита. Все события аудита пишутся в журнал “Безопасность”. Открыть его проще всего через оснастку “Управление компьютером” compmgmt.msc.

В дереве слева выбрать “Просмотр событий” - “Журналы Windows” - “Безопасность”.

Каждое событие ОС Windows имеет свой код события. Список событий достаточно обширен и доступен на сайте Microsoft либо в интернете. Например события аудита можно посмотреть .

Попробуем например найти событие удаления файла, для этого удалим файл на котором предварительно настроен аудит (если это не тестовые файл, то не забываем сделать его копию, так как аудит это всего лишь информация о действиях, а не разрешение/запрет этих действий). Нам нужно событие с кодом 4663 - получение доступа к объекту, у которого в поле Операции доступа Написано “DELETE” . Поиск событий в журналах Windows достаточно сложен, поэтому обычно используются специализированные средства анализа - системы мониторинга, скрипты и т.д.

Вручную можно, например, задать например такой фильтр:

Открыть его двойным щелчком мыши и увидеть кто удалил данный файл в поле субъект.

Для ведения аудита доступа к файлам и папкам в Windows Server 2008 R2, необходимо включить функцию аудита, а также указать папки и файлы, доступ к которым необходимо фиксировать. После настройки аудита, в журнале сервера будет содержаться информация о доступе и других событиях на выбранные файлы и папки. Стоит заметить, что аудит доступа к файлам и папкам может вестись только на томах с файловой системой NTFS.

Включаем аудит на объекты файловой системы в Windows Server 2008 R2

Аудит доступа на файлы и папки включается и отключается при помощи групповых политик: доменный политик для домена Active Directory либо локальных политик безопасности для отдельно стоящих серверов. Чтобы включить аудит на отдельном сервере, необходимо открыть консоль управления локальный политик Start -> All Programs -> Administrative Tools -> Local Security Policy . В консоли локальной политики нужно развернуть дерево локальный политик (Local Policies) и выбрать элемент Audit Policy .

В правой панели нужно выбрать элемент Audit Object Access и в появившемся окне указать какие типы событий доступа к файлам и папкам нужно фиксировать (успешный/ неудачный доступ):


После выбора необходимой настройки нужно нажать OK.

Выбор файлов и папок, доступ к которым будет фиксироваться

После того, как активирован аудит доступа к файлам и папкам, необходимо выбрать конкретные объекты файловой системы, аудит доступа к которым будет вестись. Так же как и разрешения NTFS, настройки аудита по-умолчанию наследуются на все дочерние объекты (если не настроено иначе). Точно так же, как при назначении прав доступа на файлы и папки, наследование настроек аудита может быть включено как для всех, так и только для выбранных объектов.

Чтобы настроить аудит для конкретной папки/файла, необходимо щелкнуть по нему правой кнопкой мыши и выбрать пункт Свойства (Properties ). В окне свойств нужно перейти на вкладку Безопасность (Security ) и нажать кнопку Advanced . В окне расширенных настроек безопасности (Advanced Security Settings ) перейдем на вкладку Аудит (Auditing ). Настройка аудита, естественно, требует прав администратора. На данном этапе в окне аудита будет отображен список пользователей и групп, для которых включен аудит на данный ресурс:

Чтобы добавить пользователей или группы, доступ которых к данному объекту будет фиксироваться, необходимо нажать кнопку Add… и указать имена этих пользователей/групп (либо указать Everyone – для аудита доступа всех пользователей):

Сразу после применения данных настроек в системном журнале Security (найти его можно в оснастке Computer Management -> Events Viewer), при каждом доступе к объектам, для которых включен аудит, будут появляться соответствующие записи.

Альтернативно события можно просмотреть и отфильтровать с помощью командлета PowerShell — Get-EventLog Например, чтобы вывести все события с eventid 4660, выполним комманду:

Get-EventLog security | ?{$_.eventid -eq 4660}

Совет . Возможно назначить на любые события в журнале Windows определенные действия, например отправку электронного письма или выполнение скрипта. Как это настраивается описано в статье:

UPD от 06.08.2012 (Благодарим комментатора ).

В Windows 2008/Windows 7 для управления аудитом появилась специальная утилита auditpol . Полный список типов объектов, на который можно включить аудит можно увидеть при помощи команды:

Auditpol /list /subcategory:*

Как вы видите эти объекты разделены на 9 категорий:

  • System
  • Logon/Logoff
  • Object Access
  • Privilege Use
  • Detailed Tracking
  • Policy Change
  • Account Management
  • DS Access
  • Account Logon

И каждая из них, соответственно, делиться на подкатегории. Например, категория аудита Object Access включает в себя подкатегорию File System и чтобы включить аудит для объектов файловой системы на компьютере выполним команду:

Auditpol /set /subcategory:"File System" /failure:enable /success:enable

Отключается он соответственно командой:

Auditpol /set /subcategory:"File System" /failure:disable /success:disable

Т.е. если отключить аудит ненужных подкатегорий, можно существенно сократить объем журнала и количества ненужных событий.

После того, как активирован аудит доступа к файлам и папкам, нужно указать конкретные объекты которые будем контролировать (в свойствах файлов и папок). Имейте в виду, что по-умолчанию настройки аудита наследуются на все дочерние объекты (если не указано иное).

Добрый день!. Если вы еще не превратились в Шерлока Холмса в вашем домене, то теперь самое время. Ежеминутно в системах происходят тысячи изменений, которые требуется отследить и запротоколировать. Чем больше размер и сложность структуры, тем выше вероятность появления ошибок в администрировании и раскрытия данных. Без постоянного анализа изменений (удачных или неудачных) нельзя построить действительно безопасную среду. Системный администратор всегда должен ответить , кто, когда и что изменил, кому делегированы права, что произошло в случае изменений (удачных или неудачных), каковы значения старых и новых параметров, кто смог или не смог зайти в систему или получить доступ к ресурсу, кто удалил данные и так далее.

Аудит изменений стал неотъемлемой частью управления IT инфраструктурой, но в организациях не всегда уделяют внимание аудиту, часто из-за технических проблем. Ведь не совсем понятно, что и как нужно отслеживать, да и документация в этом вопросе не всегда помогает. Количество событий, которые необходимо отслеживать, уже само по себе сложность, объемы данных велики, а штатные инструменты не отличаются удобством и способностью упрощать задачу отслеживания. Специалист должен самостоятельно настроить аудит, задав оптимальные параметры аудита, кроме того, на его плечи ложится анализ результатов и построение отчетов по выбранным событиям. Учитывая, что в сети запущено нескольких служб – Active Directory/GPO, Exchange Server, MS SQL Server, виртуальные машины и так далее, генерирующих очень большое количество событий, отобрать из них действительно необходимые, следуя лишь описаниям, очень тяжело.

Как результат, администраторы считают достаточными мероприятия резервного копирования, предпочитая в случае возникновения проблем просто произвести откат к старым настройкам. Решение о внедрении аудита часто принимается только после серьезных происшествий. Далее рассмотрим процесс настройки аудита Active Directory на примере Windows Server 2008 R2, все действия описанные в статье будут применимы и к более новы редакциям Windows Server.

Кто должен заниматься аудитом домена Active Directory

Всегда самым насущным вопросом, остается в чей зоне ответственности находится сбор и анализ событий безопасности, которые происходят в домене организации. Как правило в большинстве компаний России, в виду того, что они:

  • Маленькие
  • Не имеющие достаточного количества денег, чтобы нанимать лишний персонал
  • Нет необходимости

то для них аудит Active Directory, файловых сервером, почты вообще не актуален, оно становится нужным, только тогда когда действительно в этом появится нужда в виде инцидента, который произошел и требует серьезного разбирательства. В компаниях среднего звена и высшего, уже как правило аудит событий налажен и его разбирательством занимается либо системный администратор, либо же у компании есть отдельный отдел безопасности, главой которого чаще всего пристраивают пожилого предпенсионного дядьку, которого уже выперли на пенсию из гос органов. У нас же правительство, ой как радеет, чтобы пенсионеры жили хорошо и богато.

Аудит Active Directory средствами операционной системы

В операционных системах семейства Windows Server 2008 R2 и выше, по сравнению с предшественниками, такими как Windows Server 2003 обновлены возможности подсистемы аудита, настраиваемые через политики безопасности, а количество отслеживаемых параметров увеличено на 53. В старых ОС существовала только политика Аудит доступа к службе каталогов, контролировавшая включение и отключение аудита событий службы каталогов. Теперь управлять аудитом можно на уровне категорий. Например, политики аудита Active Directory разделены на категории, в каждой из которых настраиваются специфические параметры:

  • Directory Service Access (доступ к службе каталогов);
  • Аудит входов в систему
  • Аудит системных событий
  • Отслеживание процессов
  • Аудит использования привилегий
  • Управление учетными записями и группами
  • Directory Service Changes (изменения службы каталогов);
  • Directory Service Replication (репликация службы каталогов);
  • Detailed Directory Service Replication (подробная репликация службы каталогов).

При включении глобальной политики аудита Аудит доступа к службе каталогов автоматически активируются все подкатегории политики служб каталогов.
Система аудита в Windows Server 2008 R2 отслеживает все попытки создания, изменения, перемещения и восстановление объектов. В журнал записывается предыдущее и текущее значения измененного атрибута и учетная запись пользователя, выполнившего операцию. Но если при создании объектов для атрибутов использовались параметры по умолчанию, их значения в журнал не заносятся.

Включение политики аудита в домене Active Directory

Логично, что домен AD изначально был придуман, для более удобного управления его объектами по всем аспектам, и аудит информационной безопасности предприятия тут не исключение. Все настройки системный администратор будет производить на уровне всего домена или леса, через групповые политики, которые будут применяться как к компьютерам, так и к контроллерам домена. Я могу выделить из инструментов участвующих в этом, вот такие:

  • глобальной политики аудита (Global Audit Policy, GAP);
  • списка управления доступом (System access control list, SACL) - определяет операции, для которых будет производиться аудит;
  • схемы – используется для окончательного формирования списка событий.

По умолчанию для клиентских систем аудит отключен, для серверных активна подкатегория "Доступ к службе каталогов Active Directory", остальные отключены. Для включения глобальной политики “Аудит доступа к службе каталогов” (Audit directory service access) необходимо вызвать "Редактор управления групповыми политиками " перейти в ветку Параметры безопасности/Локальные политики/Политика аудита, где активировать политику и установить контролируемые события (успех, отказ).

Так же есть дополнительный, более тонкий и избирательный режим аудита AD, его можно найти так же в политике:

Конфигурация компьютера - Политики - Конфигурация Windows - Параметры безопасности - Конфигурация расширенной политики аудита - Политика аудита - Управление учетными записями (Computer Configuration - Policies - Windows Settings - Security Settings - Advanced Audit Policy Configuration - Account Management)

В нем вы обнаружите разделы:

  1. Вход учетной записи
  2. Управление учетными записями
  3. Подробное отслеживание
  4. Доступ к службе каталогов (DS)
  5. Вход/выход
  6. Доступ к объектам
  7. Изменение политики
  8. Использование привилегий
  9. Система
  10. Аудит доступа к глобальным объектам

Второй вариант реализации, это использовать для настройки утилиту командной строки auditpol , получить полный список GAP с установленными параметрами. При помощи auditpol достаточно ввести команду:

auditpol /list /subcategory:*

Как видите, результатом команды auditpol, стало отсутствие настроек по аудиту, каких либо событий безопасности.

Активируем политику “directory service access”, через команду:

auditpol /set /subcategory:"directory service changes" /success:enable

Подробные сведения о команде можно получить, запустив ее в виде auditpol /h

Чтобы не ждать, обновим политику контролера домена:

Подкатегория политики аудита Доступ к службе каталогов формирует события в журнале безопасности с кодом 4662, которые можно просмотреть при помощи консоли Просмотр событий (Event Viewer) вкладка Журналы Windows – Безопасность.

В качестве альтернативного варианта просмотра событий можно использовать командлет Get-EventLog оболочки PowerShell . Например:

Get-EventLog security | ?{$_.eventid -eq 4662}

Командлет Get-EventLog может принимать 14 параметров, позволяющих отфильтровать события по определенным критериям: After, AsBaseObject, AsString, Before, ComputerName, EntryType, Index, InstanceID, List, LogName, Message, Newest, Source и UserName.

Кроме этого, регистрируется ряд других событий 5136 (изменение атрибута), 5137 (создание атрибута), 5138 (отмена удаления атрибута) и 5139 (перемещение атрибута).
Для удобства отбора определенных событий в консоли Просмотр событий используют фильтры и настраиваемые представления, а также подписку, позволяющую собирать данные журналов и с других серверов.

Коллекторы событий

Согласитесь, что не всегда удобно копаться в миллионах событий, которые генерируются ежесекундно на ваших контроллерах домена, как в таких ситуациях вы можете себе упростить жизнь сделать проведение аудита информационной безопасности более простым. Тут вариантов решения довольно много, я бы хотел выделить вот такие:

  • Лично у меня для аудита Active Directory используется перенаправление всех событий с нужных мне серверов на один, так называемый сервер-коллектор, в его задачи входит агрегирование логов со всех серверов, что я настроил. Данная функциональность, так же является рядовой, у меня лично сборщик перенаправляемых логов реализован на Windows Server 2016, но это не принципиально.

  • Вторая реализация, это система мониторинга Zabbix. Она полностью бесплатна, но вам придется слегка попотеть, чтобы ее должным образом настроить, но когда вы это сделаете, то получите в свое управление, очень удобный инструмент по ведению аудита в домене Active Directory. Вот пример реализации одного из тригеров, он будет выводить информацию, о событии "Вход с учётной записью выполнен успешно", ниже вы узнаете, что за это отвечает ID с номером 4624 (Более подробно читайте на https://habr.com/post/215509/)

  • Еще одним замечательным решением, будет внедрение продукта Netwrix Active Directory Change Reporter. Это мега крутой комбайн для аудита безопасности информационных систем и доменной инфраструктуры Active Directory. Данный продукт разворачивается буквально за 30 минут и готов к выполнению своих задач (Более подробно вы можете почитать вот тут http://itband.ru/2011/09/audit-adds/).

Список событий аудита событий Active Directory в Windows Server 2008 R2

Ниже я постарался вам выписать самые распространенные и более используемые события, которые необходимы при аудите безопасности информационных систем, если вы хотите изучить абсолютно все доступные, то советую вам посетить портал компании Microsoft, посвященный расширенному аудиту, вот сама ссылка https://docs.microsoft.com/ru-ru/windows/security/threat-protection/auditing/event-4723

Проверка учетных данных

  1. 4774 Учетная запись была сопоставлена для входа в систему.
  2. 4775 Не удалось сопоставить учетную запись для входа в систему.
  3. 4776 Предпринята попытка проверить учетные данные для учетной записи контроллера домена.
  4. 4777 Не удается проверить учетные данные для учетной записи контроллера домена.

Управление учетной записью компьютера

  1. 4741 Создана учетная запись компьютера.
  2. 4742 Изменена учетная запись компьютера.
  3. 4743 Удалена учетная запись компьютера.

Управление группами рассылки

  1. 4744 Создана локальная группа с отключенной проверкой безопасности.
  2. 4745 Изменена локальная группа с отключенной проверкой безопасности.
  3. 4746 Добавлен пользователь к локальной группе с отключенной проверкой безопасности.
  4. 4747 Удален пользователь из локальной группы с отключенной проверкой безопасности.
  5. 4748 Удалена локальная группа с отключенной проверкой безопасности.
  6. 4749 Создана глобальная группа с отключенной проверкой безопасности.
  7. 4750 Изменена глобальная группа с отключенной проверкой безопасности.
  8. 4751 Добавлен пользователь к глобальной группе с отключенной проверкой безопасности.
  9. 4752 Удален пользователь из глобальной группы с отключенной проверкой безопасности.
  10. 4753 Удалена глобальная группа с отключенной проверкой безопасности.
  11. 4759 Создана универсальная группа с отключенной проверкой безопасности.
  12. 4760 Изменена универсальная группа с отключенной проверкой безопасности.
  13. 4761 Член добавлен к универсальной группы с отключенной проверкой безопасности.
  14. 4762 Удален пользователь из универсальной группы с отключенной проверкой безопасности.

Другие события управления учетными записями

  1. 4739 Изменена политика домена.
  2. 4782 Хэш пароля учетной записи доступа к нему.
  3. 4793 Был вызван API проверку политики паролей.

Управление группой безопасности

  1. 4727 Создана глобальная группа с включенной безопасностью.
  2. 4728 Добавлен пользователь к глобальной группе с включенной безопасностью.
  3. 4729 Удален пользователь из глобальной группы с включенной безопасностью.
  4. 4730 Удалена глобальная группа с включенной безопасностью.
  5. 4731 Создана локальная группа с включенной безопасностью.
  6. 4732 Добавлен пользователь в локальную группу с включенной безопасностью.
  7. 4733 Удален пользователь из локальной группы с включенной безопасностью.
  8. 4734 Удалена локальная группа с включенной безопасностью.
  9. 4735 Изменена локальная группа с включенной безопасностью.
  10. 4737 Изменена глобальная группа с включенной безопасностью.
  11. 4754 Создана универсальная группа с включенной безопасностью.
  12. 4755 Изменена универсальная группа с включенной безопасностью.
  13. 4756 Добавлен пользователь к универсальной группе с включенной безопасностью.
  14. 4757 Удален пользователь из универсальной группы с включенной безопасностью.
  15. 4758 Удалена универсальная группа с включенной безопасностью.
  16. 4764 Изменен тип группы.

Управление учетными записями пользователей

  1. 4720 Учетная запись пользователя создана.
  2. 4722 Учетная запись пользователя включена.
  3. 4724 Сброс пароля пользователя.
  4. 4725 Учетная запись пользователя отключена.
  5. 4726 Учетная запись пользователя удалена.
  6. 4738 Изменена учетная запись пользователя.
  7. 4765 Журнал SID был добавлен к учетной записи.
  8. 4766 Не удалось добавить журнал SID учетной записи .
  9. 4767 Учетная запись пользователя была разблокирована.
  10. 4780 Список управления Доступом был установлен на учетные записи, которые являются членами группы администраторов.
  11. 4781 Было изменено имя учетной записи.
  12. 4794 Была предпринята попытка задать режим восстановления служб каталогов.
  13. 5376 Диспетчер учетных данных: учетные данные были сохранены.
  14. 5377 Диспетчер учетных данных: учетные данные были восстановлены из резервной копии.

Другие события

  1. 1102 Очищен журнал безопасности
  2. 4624 Успешный вход в систему
  3. 4625 Не удачный вход в систему

В ветке Политика аудита также активируются и другие возможности (см.рис.1): аудит входа/выхода в систему, аудит управления учетными записями, доступ к объектам, изменения политик и так далее. Например, настроим аудит доступа к объектам на примере папки с общим доступом. Для этого активируем, как рассказано выше, политику Audit object access, затем выбираем папку и вызываем меню Свойства папки, в котором переходим в подпункт Безопасность и нажимаем кнопку Дополнительно. Теперь в открывшемся окне “Дополнительные параметры безопасности для..” переходим во вкладку Аудит и нажимаем кнопку Изменить и затем Добавить и указываем учетную запись или группу, для которой будет осуществляться аудит. Далее отмечаем отслеживаемые события (выполнение, чтение, создание файлов и др.) и результат (успех или отказ). При помощи списка “Применять” указываем область применения политики аудита. Подтверждаем изменения.

Теперь все указанные операции будут отображаться в журнале безопасности.
Чтобы упростить настройку аудита при большом количестве объектов, следует активировать флажок Наследование параметров от родительского объекта. При этом в поле Унаследовано от будет показан родительский объект, от которого взяты настройки.
Больший контроль событий, записываемых в журнал, достигается применением политики детализированного аудита (Granular Audit Policy), которая настраивается в Параметры безопасности/Локальные политики/Advanced Audit Policy Configuration. Здесь 10 подпунктов:

  • Вход учетной записи – аудит проверки учетных данных, службы проверки подлинности Kerberos, операции с билетами службы Kerberos, другие события входа;
  • Управление учетными записями – аудит управления группами приложений, учетными записями компьютеров и пользователей, группами безопасности и распространения;
  • Подробное отслеживание – событий RPC и DPAPI, создания и завершения процессов;
  • Доступ к службе каталогов DS – аудит доступа, изменений, репликации и подробной репликации службы каталогов;
  • Вход/выход – аудит блокировки учетных записей, входа и выхода в систему, использования IPSec, сервера политики сети;
  • Доступ к объектам – аудит объектов ядра, работы с дескрипторами, событий создаваемых приложениями, служб сертификации, файловой системы, общих папок, платформой фильтрации;
  • Изменение политики – изменения политики аудита, проверки подлинности, авторизации, платформы фильтрации, правил службы защиты MPSSVC и другие;
  • Использование прав – аудит прав доступа к различным категориям данных;
  • Система – аудит целостности системы, изменения и расширения состояния безопасности, драйвера IPSec и других событий;
  • Аудит доступа к глобальным объектам – аудит файловой системы и реестра.

Активация аудита управления учетными записями пользователей позволит отслеживать: создание, изменение, удаление, блокировку, включение и прочие настройки учетных записей, в том числе пароль и разрешения. Посмотрим, как она работает на практике - выбираем подкатегорию User Account Management и активируем. Команда для auditpol выглядит так:

auditpol /set /subcategory:"User Account Management" /success:enable /failure:enable
gpudate /force

Система аудита в консоли Просмотр события сразу покажет событие с номером 4719 Изменение параметров аудита, в котором показаны название политики и новые значения

Чтобы создать событие, откроем консоль Active Directory – пользователи и компьютеры и изменим один из параметров любой учетной записи - например, добавим пользователя в группу безопасности. В консоли Просмотра события сразу будут сгенерировано несколько событий: события с номером 4732 и 4735, показывающие изменение состава группы безопасности, и добавление учетной записи новой группы безопасности (на рис.8 выделены фиолетовым).
Создадим новую учетную запись – система генерирует несколько событий: 4720 (создание новой учетной записи), 4724 (попытка сброса пароля учетной записи), несколько событий с кодом 4738 (изменение учетной записи) и, наконец, 4722 (включение новой учетной записи). По данным аудита администратор может отследить старое и новое значение атрибута - например, при создании учетной записи меняется значение UAC.

Недостатки штатной системы аудита

Штатные инструменты операционной системы часто предлагают лишь базовые наборы средств анализа. Официальная документация (http://technet.microsoft.com/ru-ru/library/dd772623(WS.10).aspx) очень подобно расписывает возможности самого инструмента, практически мало помогая в выборе параметров, изменения которых необходимо отслеживать. В итоге решение этой задачи целиком ложится на плечи системного администратора, который должен полностью разбираться в технических аспектах аудита, и зависит от уровня его подготовки, а значит, велика вероятность ошибки. Кроме того, на его плечи ложится анализ результата, построение разнообразных отчетов.
Для удобства выбора определенных событий интерфейс консоли Event Viewer позволяет создавать фильтры и настраиваемые представления. В качестве параметров для отбора данных можно указать: дату, журнал и источник событий, уровень (критическое, предупреждение, ошибка и т.д.), код, пользователя или компьютер и ключевые слова. В организации может быть большое количество пользователей, объединенных в группы и подразделения, для которых аудит необходимо настроить персонально, но данная возможность в интерфейсе не предусмотрена.

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

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

Некоторые стандарты безопасности требуют хранения данных, собранных в процессе аудита, в течение продолжительного времени (например, SOX до 7 лет). Системными средствами реализовать это можно, но очень сложно. Размер журнала безопасности (как и других) ограничен 128 Мб, и при большом количестве событий данные могут быть перезаписаны (т.е. утеряны) уже через несколько часов. Чтобы этого избежать, необходимо вызвать окно свойств журнала в Event Viewer, где увеличить размер журнала и активировать его архивацию, установив флажок в “Архивировать журнал при заполнении. Не перезаписывать события”.

Но теперь необходимо будет решить проблему поиска событий во множестве архивов. Также стоит отметить, что к недостаткам штатной системы аудита относятся ограниченные возможности мониторинга групповых политик. При том, что факт этого изменения штатными средствами можно отслеживать, не фиксируются значения измененных параметров и, таким образом, нельзя ответить на вопрос, что же именно было изменено и каким стало новое значение. В некоторых ситуациях этого достаточно, но назвать это полноценным аудитом затруднительно.. Остались вопросы, пишите их в комментариях.

Категория аудита Audit object access (аудит доступа к объектам) Windows 2000 - важный источник информации о действиях пользователей сети на уровне операционной системы. С помощью этой категории можно определить источник, время и метод доступа к файлам, папкам, разделам реестра и принтерам. Связав события доступа к объектам с соответствующими событиями регистрации или выполнения процессов, можно выяснить конкретные детали сеанса, в ходе которого была сделана попытка доступа, или узнать, из какого приложения пользователь пытался открыть объект.

Контроль на двух уровнях

Чтобы следить за доступом к объектам, необходимо организовать аудит Windows 2000 как на уровне системы, так и на уровне объектов. Сначала следует активизировать категорию Audit object access для успешных и неудачных событий. (Подробнее о том, как использовать системную политику аудита, рассказано в статье «Контроль событий регистрации в Windows 2000». Полный список статей этого автора о журналах безопасности Windows 2000 и Windows NT приведен во врезке «В предыдущих выпусках» - прим. ред.) Затем необходимо обеспечить аудит контролируемого объекта. Каждый объект имеет два ACL (список управления доступом): разграничительный ACL (DACL) и системный ACL (SACL).

Экран 1. Упрощенный вид DACL объекта.

Список DACL. В списке DACL перечислены пользователи, имеющие право доступа к объекту, и способы доступа. (Часто вместо DACL используется термин ACL.) Чтобы открыть DACL объекта из Windows Explorer (для папок и файлов) или в окне Printers (для принтеров), следует щелкнуть на объекте правой кнопкой мыши, выбрать пункт Properties и перейти к закладке Security (см Экран 1). На этой закладке дан упрощенный вид списка DACL, т. е. показаны разрешения только для одного пользователя или группы. Чтобы просмотреть полный список DACL, нужно щелкнуть на кнопке Advanced. Откроется диалоговое окно Access Control Settings объекта, показанное на Экране 2.

Список SACL. В списке SACL перечислены действия над объектом, подлежащие аудиту Windows 2000. SACL объекта состоит из элементов управления доступом (ACE). Элемент ACE точно определяет типы доступа, регистрируемые в журнале безопасности Windows 2000, когда конкретный пользователь или группа обращается к объекту. Специальный флаг каждого ACE показывает, к успешным или неудачным попыткам доступа относится данный элемент. Чтобы обратиться к SACL объекта, следует открыть диалоговое окно Access Control Settings и перейти к закладке Auditing. Каждый элемент в разделе Auditing Entries - это ACE. Из приведенного на Экране 3 списка SACL для файла примера (payroll.xls) видно, что Windows 2000 будет проверять успешные попытки записи и неудачные попытки чтения, предпринятые членами группы Everyone.


Экран 3. SACL объекта.

Контроль попыток доступа к объекту

Windows 2000 производит аудит доступа в тот момент, когда пользователь пытается получить доступ к объекту через прикладную программу. Когда пользователь обращается к объекту из приложения, программа запрашивает у Windows 2000 дескриптор (handle) объекта. С помощью дескриптора приложение выполняет операции над объектом. Прежде чем предоставить дескриптор, Windows 2000 сопоставляет DACL объекта с учетной записью пользователя, запустившего прикладную программу, и типами доступа (например, запись или чтение), запрошенными приложением. Затем Windows 2000 определяет, предусмотрена ли системной политикой аудита запись результатов этого сравнения в журнал. Например, если попытка доступа неудачна, система выясняет, активизирована ли политика аудита для регистрации неудачных обращений к объектам.

Если системной политикой аудита предусмотрена запись результата в журнал, то Windows 2000 обрабатывает SACL объекта. Система исследует каждый элемент ACE, имеющий отношение к результату, и определяет, какие из элементов идентифицируют учетную запись пользователя, запустившего приложение, и все группы, к которым он принадлежит. Затем Windows 2000 исследует типы доступа, указанные в этих ACE. Если хотя бы один тип доступа в ACE совпадает с любым из типов доступа, запрошенных приложением, то Windows 2000 генерирует событие с ID 560 «объект открыт» с соответствующим типом события (Failure Audit или Success Audit). В оснастке Event Viewer консоли Microsoft Management Console (MMC) сообщения о неудачном завершении какой-либо операции отмечены пиктограммой замка, а записи об успешном завершении операции - изображением ключа.

Предположим, что пользователь Гарольд работает с Microsoft Excel и пытается открыть файл payroll.xls. Excel запрашивает у Windows 2000 дескриптор для payroll.xls. Windows 2000 сравнивает DACL файла с учетной записью Гарольда и запросом на чтение, поступившим от Excel; согласно DACL, у Гарольда нет права на чтение payroll.xls. Как показано на Экране 2, доступ к payroll.xls имеют только Administrators и группа HR, а Гарольд не является членом ни одной из этих групп. Windows 2000 выясняет, что системной политикой аудита предусмотрена регистрация неудачных попыток обращения к объекту, поэтому она просматривает SACL файла payroll.xls и исследует каждый элемент ACE, контролирующий неудачные попытки доступа. Windows 2000 определяет, какие из этих элементов ACE указывают на учетную запись Гарольда или группу, к которой он принадлежит. Как показано на Экране 3, SACL объекта содержит ACE, который относит неудавшуюся операцию чтения к группе Everyone, поэтому Windows 2000 регистрирует событие с ID 560 (см. Экран 4).

Экран 4. Событие с ID 560 неудачной попытки доступа.

Предположим, что пользователь Салли также пытается открыть файл payroll.xls из Excel. Поскольку Салли является членом группы HR, она имеет право выполнять операции чтения и записи в файле payroll.xls. Системная политика аудита настроена на регистрацию успешных попыток доступа к объектам, и SACL файла содержит ACE, относящийся к успешным операциям записи и группе Everyone, поэтому Windows 2000 регистрирует событие с ID 560 (см. Экран 5).

Экран 5. Событие с ID 560 успешного доступа.

Разобраться в полях события с ID 560 нетрудно. Значение параметра Object Server всегда Security. В поле Object Type идентифицируется объект аудита - файл, папка, раздел реестра, принтер или служба. Windows 2000 заполняет поле New Handle ID лишь в том случае, если доступ к объекту был предоставлен. Если пользователь не имеет соответствующих полномочий, то доступ не предоставляется, и Windows 2000 не создает ID дескриптора. Operation ID - просто число, которое увеличивается на единицу для каждой операции, выполняемой в Active Directory (AD).

Теоретически, с помощью поля Process ID можно вычислить приложение, через которое пользователь открыл объект. Однако соответствующее событие с ID 592 (новый процесс), генерируемое категорией Audit process tracking, показывает ID процесса в другом формате, нежели все остальные события Windows 2000. По некоторым сведениям, разработчики Microsoft устранят эту проблему в версиях Windows XP и Windows Server - известных под названием Whistler. Для событий, отображающих непрямой доступ к объектам, Process ID идентифицирует серверное приложение, а не клиентскую программу, через которую пользователь открыл объект. Если пользователь открывает файл в каталоге общего доступа, то Process ID указывает на процесс System как на программу, открывшую объект. Чтобы проверить эту информацию, можно открыть Task Manager, перейти к закладке Processes и посмотреть идентификатор процесса в столбце PID.

Поля Primary User Name и Primary Domain идентифицируют учетную запись пользователя, напрямую обратившегося к объекту. Когда пользователь обращается к объекту со своего локального компьютера через настольное приложение, такое, как Microsoft Word или Excel, то Primary User Name и Primary Domain показывают учетную запись компьютера, а поля Client User Name и Client Domain - учетную запись пользователя. Например, на Экране 6 показано событие с ID 560, которое было зарегистрировано, когда пользователь Джон подключился к сетевому диску на файл-сервере Tecra и открыл документ budget.doc. Тогда в поле Primary User Name стоит имя TECRA$, соответствующее учетной записи файл-сервера в домене. Client User Name идентифицирует Джона как пользователя, работающего на клиентской стороне.

Экран 6. Событие с ID 560 непрямого доступа.

Поля Primary Logon ID и Client Logon ID содержат идентификатор logon ID, присваиваемый при регистрации с учетной записью пользователя, обратившегося к объекту. Чтобы определить, в каком сеансе был произведен доступ, следует посмотреть на событие с ID 540 (удаленная регистрация) или с ID 528 (все другие виды регистрации) с этим идентификатором (подробнее эти события описаны в статье «Контроль событий регистрации в Windows 2000».) Если пользователь напрямую открывает объект на своей локальной машине, то Primary Logon ID события с ID 560 соответствует Logon ID события с ID 528, зафиксированного Windows 2000 при регистрации пользователя в системе; поле Client Logon ID остается пустым. Если пользователь обращается к файлу на удаленной машине, то поле Primary Logon ID события с ID 560 идентифицирует сеанс, связанный с учетной записью локального компьютера, а поле Client Logon ID события с ID 528 соответствует Primary Logon ID.

В поле Accesses указаны типы доступа, запрошенные приложением. Одни типы доступа специфичны для определенного класса объектов, другие применимы к любому объекту. В Таблице 1 перечислены и описаны самые распространенные типы доступа.

Когда пользователь открывает файл или папку, в поле Accesses отмечаются предоставленные пользователю типы доступа, специфичные для данной папки или файла. Эти типы доступа соответствуют специальным разрешениям, приведенным в DACL файла. Параметры ReadAttributes и WriteAttributes указывают, что пользователь открыл файл с возможностью изменения его свойств (только чтение, архивный, скрытый, системный). ReadEA и WriteEA применяются к расширенным атрибутам файла, определяемым конкретными приложениями. Чтобы увидеть расширенные атрибуты файла, нужно открыть Windows Explorer и щелкнуть на файле правой кнопкой мыши. Выбрав Properties, следует перейти к закладке Custom, а затем к закладке Summary.

Тип AppendData означает, что пользователь имеет право добавить данные в открытый файл. ReadData и WriteData означают, что пользователь, открывший файл, имеет возможность прочитать или изменить его данные. Если задан режим аудита запуска исполняемых файлов, то Windows 2000 регистрирует доступ типа Execute при каждом запуске программы.

Те же типы доступа - с небольшими отличиями - используются Windows 2000 для контроля работы с папками. AppendData указывает, что пользователь создал в папке подпапку. Windows 2000 регистрирует тип WriteData, если в папке создается новый файл. Чтобы определить имя нового файла или подпапки, нужно посмотреть на последующее событие с ID 560, соответствующее новому дочернему объекту. Windows 2000 регистрирует тип ReadData, если пользователь просматривает содержимое папки (например, командой Dir или через Windows Explorer).

Завершение работы с объектом

Когда пользователь открывает объект из приложения, Windows 2000 регистрирует событие с ID 560, а при закрытии объекта операционная система регистрирует событие с ID 562 (дескриптор закрыт). Поля события с ID 562 частично совпадают с полями события с ID 560.

Экран 7. Событие с ID 562.

Следует обратить внимание на поле New Handle ID события с ID 560 (см. Экран 5) и поле Handle ID события с ID 562 (см. Экран 7). Windows 2000 генерирует различные Handle ID для каждого открытого объекта. Таким образом, связав событие с ID 560 и событие с ID 562 с одинаковыми Hand-le ID, можно определить, как долго объект оставался открытым. Из оснастки Event Viewer следует открыть событие с ID 560 и запомнить Handle ID события. Затем нужно щелкнуть правой кнопкой мыши на журнале Security и выбрать функции View, Find. В поле Event ID следует ввести значение 562, а в поле Description - значение Handle ID. Если Event Viewer показывает сначала новые объекты, то следует изменить направление поиска на Up, а затем щелкнуть Find Next.

Не только файлы

Категория Audit object class используется не только для контроля доступа к файлам. Например, с помощью программы regedt32 можно запустить аудит разделов реестра и затем контролировать доступ к разделам и элементам реестра. Элементы реестра не имеют собственных списков DACL и SACL; как и операции управления доступом, операции аудита проводятся через родительский раздел реестра. Windows 2000 регистрирует типы доступа, соответствующие разрешениям в списке DACL раздела, и описывает разрешения, указанные в событии с ID 560. Если обращение к разделу реестра вызывает событие с ID 560, то Windows 2000 указывает в поле Object Type значение Key. Значение в поле Object Name начинается с REGISTRY, за которым следует ветвь и остальной путь к разделу. Например, подраздел HKEY_LOCAL_MACHI-NESOFTWAREAcme отображается как REGISTRYMACHINESOFT-WAREAcme.

Из меню Settings, Printers можно получить доступ к спискам SACL принтеров и реестра. Для этого достаточно выполнить те же операции, что и при доступе к SACL файла или папки, но отправной точкой будет служить не Windows Explorer, а меню Settings, Printers.

В статье Microsoft «Monitoring and Auditing for End Systems» (http://www.microsoft.com/technet/ security/monito.asp ) говорится, что можно выполнять аудит системных служб, но в действительности это не так. Даже если в SACL службы режим аудита включен (с помощью политик Group Policy через ComputerConfiguration, Windows Settings, Security Settings, System Services), Windows 2000 не заносит в журнал безопасности сведений о запуске, остановке и отключении службы. Идентификаторы событий документированы для некоторых других операций (например, удаления объекта), но этот механизм пока не функционирует.

Наследование SACL

В Windows 2000 схема наследования SACL повторяет схему DACL. По умолчанию, элементы SACL автоматически переходят от родительских папок и разделов реестра к дочерним объектам. Например, если разрешить аудит неудачных операций записи в папку, то все файлы и подпапки наследуют этот элемент SACL. Существует несколько уровней настройки наследования SACL.

Дочерний уровень. Чтобы блокировать передачу элементов родительского SACL дочернему объекту, следует открыть окно Access Control Settings (параметры управления доступом) дочернего объекта, перейти к закладке Auditing и снять флажок Allow inheritable auditing entries from parent to propagate to this object. Затем нужно щелкнуть OK или Apply. Если к моменту сброса флажка какие-то наследуемые элементы SACL уже были переданы объекту-потомку, Windows 2000 потребует подтвердить необходимость их удаления или создать их копии без наследования.

Родительский уровень. Чтобы разблокировать наследование в дочерних объектах, следует открыть диалоговое окно Access Control Settings родительского объекта, показанное на Экране 8, перейти к закладке Auditing и установить флажок Reset auditing on all child objects and enable propagation of inheritable auditing entries. После щелчка на кнопке OK или Apply операционная система отменяет аудит на всех дочерних объектах и сбрасывает флажок, чтобы администратор мог выборочно блокировать наследование на дочерних объектах. Данная функция сброса полезна, если администратор не знает, какой режим наследования установлен в системе, и хочет начать все сначала.

Можно также контролировать глубину наследования и указать последний дочерний объект, на который распространяется действие каждого элемента SACL. Чтобы отредактировать отдельный элемент SACL, нужно открыть диалоговое окно Access Control Settings родительского объекта, перейти к закладке Auditing, выбрать элемент и открыть окно Auditing Entry щелчком на кнопке View/Edit, как показано на Экране 9. В данном диалоговом окне предусмотрено два способа реализации наследования дочерними объектами. Раскрывающийся список Apply onto определяет типы объектов, которым передается запись об аудите. По умолчанию из списка выбирается значение This folder, subfolders and files (данная папка, подпапки и файлы), но пользователь может выбрать любое сочетание этих объектов. (На Экране 9 выбран режим аудита неудачных операций чтения только файлов, но не папок.) С помощью флажка Apply these auditing entries to objects and/or containers within this container можно определить, передаст ли Windows 2000 запись объектам, расположенным непосредственно в папке, или рекурсивно распространит эту запись на все дочерние уровни ниже данной точки.

Как лучше провести аудит

Какую стратегию избрать для аудита объектов? Во-первых, если требуется проверить определенный каталог или раздел реестра на нескольких машинах, нужно использовать групповые политики. Например, чтобы исследовать неудачные попытки записи в каталоге \%systemroot% на всех компьютерах домена, следует открыть оснастку MMC Active Directory Users and Computers и щелкнуть правой кнопкой мыши на корневом домене. Затем, выбрав Properties, необходимо перейти к закладке Group Policy. Отметив пункт Default Domain Policy Group Object (GPO), следует щелкнуть на кнопке Edit и пройти по Computer Configuration, Windows Settings, Security Settings, File System. Щелкнув правой кнопкой мыши на File System, нужно выбрать пункт Add File. Затем введите с клавиатуры

%systemroot%

и щелкните OK. На экране появится диалоговое окно разрешений, похожее на то, которое показано на Экране 1. Чтобы запустить процесс аудит объекта, следует повторить описанную ранее последовательность действий. При этом нужно внимательно отнестись к определению области аудита. Не рекомендуется ограничивать круг проверяемых лиц, так как взломщики часто используют чужие пароли. Поэтому в списке управления следует указать аудитом группу Everyone, чтобы охватить всех пользователей. Однако желательно ограничить подлежащие аудиту типы доступа и объекты. В процессе аудита объектов генерируется большой объем данных. Чтобы журнал безопасности не наполнялся бесполезными сведениями, лучше остановиться на небольшом числе типов доступа к немногим объектам.

Неопытным администраторам может показаться, что на самом деле активность системы не столь велика, как можно предположить исходя из событий Audit object access. Следует помнить, что Windows 2000 не выполняет аудит собственно операций (например, чтения и записи) над объектами; вместо этого проверяются запросы на доступ к объектам, поступающие из приложений. Поэтому в поле Accesses события с ID 560 указывается только тип доступа, который мог получить пользователь, но не сам факт выполнения пользователем каких-либо операций. Проблема усугубляется прикладными программами, которые автоматически запрашивают все типы доступа, независимо от того, нужны ли они пользователю. Представители Microsoft заявляют, что в конечном итоге в Windows 2000 может быть реализован аудит действительных операций, а не возможностей доступа.

С помощью категории Audit object access можно решить ряд трудных задач: например, выяснить, имели ли место попытки несанкционированного доступа к данным и кто мог изменить тот или иной файл. Несмотря на трудности анализа избыточных данных журнала, эта категория занимает достойное место в арсенале администратора.