Поиск на сайте: Расширенный поиск


Новые программы oszone.net Читать ленту новостей RSS
CheckBootSpeed - это диагностический пакет на основе скриптов PowerShell, создающий отчет о скорости загрузки Windows 7 ...
Вы когда-нибудь хотели создать установочный диск Windows, который бы автоматически установил систему, не задавая вопросо...
Если после установки Windows XP у вас перестала загружаться Windows Vista или Windows 7, вам необходимо восстановить заг...
Программа подготовки документов и ведения учетных и отчетных данных по командировкам. Используются формы, утвержденные п...
Red Button – это мощная утилита для оптимизации и очистки всех актуальных клиентских версий операционной системы Windows...
OSzone.net Microsoft PowerShell Использование PowerShell для непрерывного аудита безопасности Active Directory RSS

Использование PowerShell для непрерывного аудита безопасности Active Directory

Текущий рейтинг: 3 (проголосовало 5)
 Посетителей: 3096 | Просмотров: 4235 (сегодня 0)  Шрифт: - +

Фраза, которую я чаще всего слышу сегодня в мире аудита, звучит так: "непрерывный аудит". Сам по себе термин вызывает в мозгу абсолютно иные ассоциации, не связанные с его истинным значением. Однако в реальности непрерывный аудит необходим, желаем и в большинстве случаев требуем. Когда речь заходит о сетях Windows, понятие непрерывного аудита является новым и не совсем понятным. Аудиторы в замешательстве по поводу того, что им нужно сделать, чтобы удовлетворить свои потребности и требования. После месяцев исследований, обучения и тестирования я собрал ряд опций, которые аудиторы могут использовать для завершения аудита Active Directory, по крайней мере, на минимальном уровне.

Определение непрерывного аудита безопасности

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

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

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

Использование PowerShell для непрерывного аудита

PowerShell является бесплатным и мощным инструментом, который был разработан компанией Microsoft для Windows XP и более поздних версий. PowerShell теперь идет в качестве штатного инструмента в Windows Server 2008 и Windows 7, но его необходимо устанавливать на Windows XP и Server 2003, если нужно запустить этот инструмент на них.

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

Получение PowerShell

Есть две версии PowerShell. Каждая версия может выполняться на определенных платформах ОС. Ниже приведена информация о версиях PowerShell, о том, где можно получить установочный файл PowerShell, а также о том, какие ОС поддерживает каждая версия PowerShell.

  • Версия 1.0 (загрузка)
  • Windows XP
  • Windows Server 2003
  • Windows Vista
  • Windows Server 2008
  • Версия 2.0 (загрузка)
  • Windows XP SP3
  • Windows Server 2003 with SP 2
  • Windows Vista SP1
  • Windows Server 2008
  • Windows 7
  • Windows Server 2008 R2

Настройка PowerShell

После установки PowerShell необходимо выполнить несколько дополнительных задач, чтобы иметь возможность выполнять команды. Поскольку PowerShell создан безопасным по умолчанию, необходимо ослабить безопасность, чтобы выполнять некоторые команды, такие как перечислены в этой статье.

Для ослабления безопасности PowerShell нужно запустить PowerShell на компьютере от имени локального администратора (если у вас нет привилегий локального администратора на локальном компьютере, вам нужно обратиться за помощью к пользователю, который имеет такие привилегии. Это ЕДИНТВЕННАЯ задача, которая должна быть выполнена от имени локального администратора).

В окне PowerShell выполните:

set-executionpolicy

Затем, после получения уведомления, показанного на рисунке 1, введите:

Unrestricted

Это также показано на рисунке 1.

*
Увеличить

Рисунок 1: Настройка PowerShell на выполнение неподписанных команд.

Теперь можно выполнить команды PowerShell, которые описаны ниже, без каких-либо ошибок по причинам ограничений безопасности.

Получение команды PowerShell для AD

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

Чтобы получить правильно настроенную и сохранённую команду, нужно выполнить следующие шаги:

  1. Скопируйте содержимое онлайн кода, перейдя по вышеуказанной ссылке, или кода, указанного далее в статье, используя обычное выделение текста Windows, и выберите опцию копирования.
  2. Вставьте текст в блокнот (нельзя использовать документ Word, поскольку он может добавить дополнительные символы в код, что не позволит выполнить команду).
  3. Сохраните файл блокнота в .ps1 файл (не сохраняйте его с обычным расширением .txt! Это может быть сложно, если вы никогда не делали этого ранее. Чтобы убедиться, что файл сохранен корректно, обязательно выберите опцию "Все файлы" при сохранении файла и вручную введите .ps1 для расширения файла).

Теперь все готово для выполнения команд!

Выполнение новой команды PowerShell

Чтобы запустить команду корректно, необходимо перейти в папку, в которую вы сохранили .ps1 файл. PowerShell поддерживает стандартный синтаксис командной строки, такой как:

cd c:\pscmdlets

Это переместит нынешнее положение PowerShell в папку pscmdlets, расположенную в корне диска c:\. Просто измените путь на ту папку, в которую вы сохранили свой .ps1 файл.

Теперь нужно ввести корректный синтаксис, чтобы заставить команду работать. Для выполнения команды нужно использовать .\ перед именем команды. Для выполнения команды введите:

.\getadinfo.ps1

После чего вы должны получить результаты, подобные тому, что показано в начале кода, представленного ниже.

Получение информации AD

Вот несколько команд, которые можно выполнить для сбора весьма полезной информации из AD:

.\getadinfo.ps1 -Domain yourdomain.corp -ToCsv C:\MyFolder\MyFile.csv

.\getadinfo.ps1 -Domain yourdomain.corp -OU AllOU -Property distinguishedName,l -ToCsv C:\MyFolder\MyOUFile.csv

.\getadinfo.ps1 -Domain yourdomain.corp -User administrator

.\getadinfo.ps1 -Domain yourdomain.corp -Group 'Domain Admins'

Заключение

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

Автор: Дерек Мелбер  •  Иcточник: winsecurity.ru  •  Опубликована: 12.07.2011
Нашли ошибку в тексте? Сообщите о ней автору: выделите мышкой и нажмите CTRL + ENTER
Теги:   Active Directory, Powershell.


Оценить статью:
Вверх
Комментарии посетителей
Комментарии отключены. С вопросами по статьям обращайтесь в форум.