Політики аудиту змін в Active Directory

Будь-адміністратор Active Directory рано чи пізно стикається з необхідністю аудиту зміни в Active Directory, і це питання може встати тим гостріше, чим більше і складніше структура Active Directory і чим більше список осіб, кому делеговано права керування в тому чи іншому сайті або контейнері AD. У сферу інтересів адміністратора (або фахівця з ІБ) можуть потрапити такі питання як:

  • хто створив / видалив користувача або групу AD
  • хто включив / заблокував користувача
  • з якої адреси був змінений / скинутий пароль користувача домену
  • хто створив / відредагував групову політику і т.д.

В ОС сімейства Windows існують вбудовані засоби аудиту змін в різних об'єктах, які, як і багато інших параметрів Windows, мають можливості управління за допомогою групових політики.

Примітка. Ми вже торкалися теми аудиту Windows в статті: "Аудит доступу до файлів і папок в Windows 2008"

Розберемо на конкретному прикладі методику включення аудит змін параметрів користувачів і членства в групах Active Directory (згідно даної методики можна включити відстеження та інших категорій подій).

зміст:

  • Розширені політики аудиту Windows
  • Налаштування аудиту змін облікових записів і груп Active Directory
  • Основні недоліки вбудованої системи аудиту Windows

Розширені політики аудиту Windows

Створимо новий об'єкт GPO (групову політику) з ім'ям "Audit Changes in AD". Перейдіть в розділ редагування і розгорніть гілку Computer Configuration> Policies> Windows Settings> Security Settings> Advanced Audit Configuration. У даній гілці групових політик знаходяться розширені політики аудиту, який можна активувати в ОС сімейства Windows для відстеження різних подій. У Windows 7 і Windows Server 2008 R2 кількість подій, для яких можна здійснювати аудит збільшено до 53. Ці 53 політики аудиту (т.зв. гранулярні політики аудиту) знаходяться в гілці Security Settings \ Advanced Audit Policy Configuration згруповані в 10 категоріях:

  • Account Logon - аудит перевірки облікових даних, служби перевірки достовірності Kerberos, операцій з квитками Kerberos і інших події входу
  • Account Management - відстеження змін в облікових записів користувачів і комп'ютерів, а також інформації про групи AD і членство в них
  • Detailed Tracking - аудит активності індивідуальних програм (RPC, DPAPI)
  • DS Access - розширений аудит змін в об'єктах служби Active Directory Domain Services (AD DS)
  • Logon / Logoff - аудит інтерактивних і мережевих спроб входу на комп'ютери і сервери домену, а також блокування облікових записів
  • Object Access - аудит доступу до різних об'єктів (ядру, файлової системи і загальних папок, реєстру, службам сертифікації і т.д.)
  • Policy Change - аудит змін у групових політиках
  • Privilege Use - аудит прав доступу до різних категорій даних
  • System - зміни в настройках комп'ютерів, потенційно критичних з точки зору безпеки
  • Global Object AccessAuditing - дозволяють адміністратору створити власне списки ACL, які відстежують зміни в реєстрі і файлової системою на всіх цікавлять об'єктах

Природно, щоб не перевантажувати систему зайвою роботою, а журнали непотрібною інформацією, рекомендується використовувати лише мінімально необхідний набір аудірумих параметрів.

Налаштування аудиту змін облікових записів і груп Active Directory

В даному випадку, нас цікавить категорія Account Management, що дозволяє включити аудит змін у групах Audit Security Group Management) і аудит облікових записів користувачів (політика Audit User Account Management). Активуємо дані політики аудиту, задавши відстеження тільки успішних змін (Success).

Залишилося прілінкованние цю політику до контейнера, який містить облікові записи контролерів домену (за замовчуванням це OU Domain Controllers) і застосувати цю політику (вождів 90 хвилин або виконавши команду gpupdate / force).

Після застосування даної політики інформація про всі зміни в облікових записах користувачів і членство в групах буде фіксувати на контролерах домену в журналі Security. На скріншоті нижче відображено подія, що фіксують момент видалення користувача з груп Active Directory (в подію можна побачити хто, коли і кого видалив з групи).

За замовчуванням журнал відображає всі події безпеки, що потрапили в лог. Щоб спростити пошук потрібного події, журнал можна відфільтрувати по конкретному Event ID. У тому випадку, якщо нас цікавлюся тільки події, наприклад, що коливаються скидання пароля користувача в домені, необхідно включити фільтр по id 4724.

Нижче наведено список деяких ID подій, які можуть знадобитися для пошуку і фільтрації подій в журналі Security практиці:
ID подій, в контексті змін в групах AD:

4727: A security-enabled global group was created.
4728: A member was added to a security-enabled global group.
4729: A member was removed from a security-enabled global group.
4730: A security-enabled global group was deleted.
4731: A security-enabled local group was created.
4732: A member was added to a security-enabled local group.
4733: A member was removed from a security-enabled local group.
4734: A security-enabled local group was deleted.
4735: A security-enabled local group was changed.
4737: A security-enabled global group was changed.
4754: A security-enabled universal group was created.
4755: A security-enabled universal group was changed.
4756: A member was added to a security-enabled universal group.
4757: A member was removed from a security-enabled universal group.
4758: A security-enabled universal group was deleted.
4764: A group's type was changed.

Примітка.  Детальніше про аудит змін у групах Active Directory.

ID подій, в контексті змін в облікових записів користувачів в AD:

4720: A user account was created.
4722: A user account was enabled.
4723: An attempt was made to change an account's password.
4724: An attempt was made to reset an account's password.
4725: A user account was disabled.
4726: A user account was deleted.
4738: A user account was changed.
4740: A user account was locked out.
4765: SID History was added to an account.
4766: An attempt to add SID History to an account failed.
4767: A user account was unlocked.
4780: The ACL was set on accounts which are members of administrators groups.
4781: The name of an account was changed:
4794: An attempt was made to set the Directory Services Restore Mode.
5376: Credential Manager credentials were backed up.
5377: Credential Manager credentials were restored from a backup.

Основні недоліки вбудованої системи аудиту Windows

Однак у штатних засобів перегляду і аналізу логів в Windows є певні недоліки.

Природно, консоль Event Viewer надає лише базові можливості перегляду і пошуку інформації про ті чи інші події в системі і не передбачає можливостей складної обробки, групування і агрегації інформації. По суті ця задача цілком залежить від здібностей і рівня підготовки системного адміністратора або інженера ІБ, який за допомогою різних скриптів (наприклад, powershell илл vbs) або офісних засобів може розробити власну систему імпорту та пошуку по журналам.

Також не варто забувати, що за допомогою вбудованих засобів Windows складно об'єднати журнали з різних контролерів домену (можна, звичайно, скористатися можливістю перенаправлення логів в Windows, але цей інструмент також недостатньо гнучкий), тому пошук потрібного події доведеться здійснювати на всіх контролерах домену (в рамках великих мереж це дуже накладно).

Крім того, при організації системи аудиту змін в AD за допомогою штатних засобів Windows потрібно врахувати, що в журнал системи пишеться величезна кількість подій (найчастіше непотрібних) і це призводить до його швидкого заповнення і перезатіранію. Щоб мати можливість роботи з архівом подій, необхідно збільшити максимальний розмір журналу і заборонити перезапис, а також розробити стратегію імпорту та очищення журналів.

Саме з цих причин, для аудиту змін в AD в великих і розподілених системах переважно використовувати програмні комплекси сторонніх розробників. Останнім часом на слуху, наприклад, такі продукти, як NetWrix Active Directory Change Reporter або ChangeAuditor for Active Directory.