Отслеживание изменений в реестре – один из важнейших моментов аудита Windows. Так, мы можем проследить когда и что изменило реестр, став либо причиной неполадок или просто вызвало замену параметров. Какая же программа или кто из пользователей внесли изменения в ключи и параметры реестра? Мало кто из пользователей знает, но эта функция в Windows почти готова к работе и заряжена; нам остаётся только спустить крючок. Самый первый способ, который напрашивается, это использование утилиты Process Monitor. Работу с ней мы обязательно разберём отдельно, а пока поговорим о “встроенных” возможностях Windows. И это как раз тот редкий случай, когда уже имеющийся вариант лучше остальных, со стороны.
В Windows аудитом изменений реестра “занимается” специальная служба под наименованием Object Access Audit Policy, а за конкретным ключом будет присматривать Audit Security. После работы с их настройками соответствующая информация будет отображаться в Журнале событий Windows.
Вся процедура подразумевает три пункта:
- активация политики Аудита
- активация SACL
- просмотр Журнала событий и поиск по фильтрам
Перед тем, как начать…
Обычно на эту статью натыкаются, когда что-то где-то УЖЕ произошло. Подразумеваю, что пользователь исправил ситуацию вплоть до переустановки неработоспособной Windows и теперь просто пытается не допустить повторения ошибки. Это значит, что вы УЖЕ знаете, какой примерно из разделов реестра нужно мониторить, ибо контролировать весь реестр не получится: журнал событий Windows разрастётся до нечитаемых размеров. Так что:
- этот режим, вероятно, носит временный характер
- для очистки Журнала воспользуйтесь информацией из статьи по ссылке выше.
А мы приступаем.
Что изменило реестр: настраиваем групповую политику
- с помощью быстрой команды отправляемся в редактор политики
secpol.msc
- найдём настройку Политики Аудита и справа выберем Аудит доступа к объектам:
- выставим пару галочек для формирования событий:
- Соглашаемся, закрываем окна и выходим из редактора
Что изменило реестр: настраиваем события в самом реестре
- заходим в редактор реестра
regedit.exe
- ищем ключ, изменения в котором нужно отслеживать. Для примера я возьму параметр, в который часто лезут программы (раздел огромный, в Журнале ему будет тесно, конечно):
- через Разрешения выходим на окно Безопасности, в котором выберем кнопку Дополнительно. И окажемся в окне Дополнительных параметров безопасности для искомого ключа. Следуем по пути, мною указанному (вкладка Аудит – кнопка Добавить – в окне имён пишем Все и закрепим кнопкой Проверить имена):
Вкладки Безопасность в Свойствах нет…
- появится окно Объекта для элемента аудита. Выставляем Полный доступ на Успех и Отказ:
- Применить и ОК. Можно из реестра выходить, здесь закончили.
Что изменило реестр: проверяем
Всё готово. Чтобы проверить изменения в реестре, необходимо отправиться в Журнал событий:
eventvwr.msc
В левой части консоли раскрываем Журналы Windows -> Безопасность:. Событий там много из без того, так что нам лишь стоит выставить необходимы фильтры по идентификационным номерам (все вам вряд ли понадобятся, читайте описание для каждого). Это:
- 4656 – это самое первое из событий, регистрирующееся в тот момент, когда какой-то пользователь пытается получить доступ к ключу реестра. Событие расскажет о категории доступа, запрошенного пользователем.
- 4657 – параметр реестра изменился
- 4660 – параметр удалён
- 4663 – это событие покажет, какой вид операции над файлом пользователь совершил: создал новый, изменил значение, удалил или даже просто посмотрел
Если вам нужно несколько событий, то вводим их через запятую, без пробела. Проверим все:
Подробности события – в одноимённой вкладке для каждого из них:
Теперь вы будете знать всё: какая программа и какой пользователь пытается или успешно что-то с реестром делает.
Успехов.