Максим Федотенко

gallery/1435337774_facebook
gallery/1435337799_twitter
gallery/logo
gallery/view.avatar

2013 год

Часть 9. Аудит

В этой части статьи разберем рекомендации по настройке аудита в инфраструктуре виртуальных десктопов. В Главе 1 разберем рекомендации по аудиту действий в самой инфраструктуре, а в Главе 2 – по настройке аудита действий пользователя в виртуальном десктопе.

Глава 1. Аудит инфраструктуры

Первым шагом должна быть создана база данных для сбора событий View Manager.[1]

Далее View Manager должен быть настроен для передачи информации о событиях в базу данных.

Список литературы

[1] VMware View Installation. Chapter 8. Creating an Event Database. “Add a Database and Database User for View Events”

[2] VMware View Security. VMware View Security Reference. “VMware View Accounts”

[3] VMware View Administration. Chapter 17. Using the vdmadmin Command. “Generating View Event Log Messages in Syslog Format Using the –I Option”

[4] VMware View Installation. Chapter 8. Creating an Event Database. “Add a Database and Database User for View Events”, “Prepare an SQL Server Database for Event Reporting”

[5] Deployment and Technical Considerations Guide “VMware View Backup Best Practices”. Раздел View Backup and Restore. “Backup frequency Recommendations”

[6] VMware View Optimization Guide for Windows 7. Раздел Windows 7 Operating System Customizations. “Windows 7 Customizations Available Using the Registry”

[7] Avecto. Centralizing Windows Events with Event Forwarding

[8] Microsoft TechNet

[9] RSA enVision Event Source Update. Event Sources. Microsoft. Microsoft Windows RSA enVision Event Source.

[10] RSA enVision Event Source. Microsoft Windows Eventing 6.0 Web Services API. Configuration Instructions and Release Notes

Для этого необходимо во View Administrator выбрать “View Configuration –> Event Configuration”. В панели “Event Database” нажать кнопку “Edit…”. В появившемся окне “Edit Event Database” заполнить следующие поля, используемые для сбора событий View Manager базе данных:

  • Database server;
  • Database type;
  • Port;
  • Database name;
  • User name.

Учетная запись пользователя, под которой View Manager обращается к базе данных событий, должна отличаться от учетной записи пользователя, под которым View Composer обращается к базе данных View Composer.[2]

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

Во View Administrator можно указать за какой срок показывать события, например за 3 месяца (Максимальное кол-во показываемых записей составляет 2 000).

Для этого во View Administrator нужно выбрать “View Configuration –> Event Configuration”. В панели “Event Settings” нажать кнопку “Edit…”. В появившемся окне “Edit Settings” установить параметр “Show events in View Administrator for:” в значение “3 Months”.

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

Зайти в View Administrator. Выбрать “View Configuration –> Event Configuration”. В панели “Event Settings” нажать кнопку “Edit…”. В появившемся окне “Edit Settings” установить параметр “Classify events as new for:” в значение “3 Days”.

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

Для настройки следует зайти во View Administrator каждой установки. Выбрать “View Configuration –> Event Configuration”. В панели “Event Database” нажать кнопку “Edit…”. В появившемся окне “Edit Event Database” установить в поле “Table prefix:” соответствующий префикс.

Также может быть настроено журналирование событий на внешний сервер сбора событий (syslog-сервер) и/или сервер корпоративной системы сбора событий информационной безопасности. При этом прямое UDP-соединение по протоколу syslog на Syslog-сервер не поддерживается.[3]

Используется следующая команда:

vmadmin –I –eventSyslog –enable –path \\<logserver>\<share>\<viewEvents> -user <domain>\<user> -password <password>[3]

В случае использования в качестве СУБД Microsoft SQL Server для аутентификации в базе данных событий View Manager должна использоваться модель аутентификации SQL Server (SQL Server Authentication).[4] Другие методы аутентификации не поддерживаются.

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

Роль db_owner fixed database в базе данных View Composer.

В случае использования в качестве СУБД Oracle учетная запись пользователя, под которой происходит обращение View Manager к базе данных событий, должна иметь следующие права:

grant connect to <user>;

grant resource to <user>;

grant create procedure to <user>;

grant create view to <user>

grant create sequence to <user>;

grant create table to <user>;

grant create materialized view to <user>;

grant execute on dbms_lock to <user>;

grant execute on dbms_job to <user>;

grant unlimited tablespace to <user>.

Необходимо осуществлять резервное копирование базы данных событий View Manager, например, средствами системы управления базами данных (СУБД). Резервное копирование базы данных событий View Manager должно осуществляться периодически.[5]

Глава 2. Аудит виртуальных десктопов

1. Настройка событий аудита виртуальных десктопов

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

Настройка сбора событий аудита должна быть произведена:

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

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

Для этого в групповой политике, применяемой к виртуальным десктопам, в ветке “Computer Configuration –> Policies –> Windows Settings –> Security Settings –> EventLog” необходимо установить параметр “Retention Method for security log” в значение “Overwrite events as needed”.

           или

На основном образе пула виртуальных десктопов в оснастке “Computer Management” в свойствах ключа “System Tools –> Event Viewer –> Windows Logs –> Security” установить параметр “When maximum event log size is reached” в значение “Overwrite events as needed”.

            или

На основном образе виртуальных десктопов пула в реестре произвести следующие изменения:[1]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\Application]

“Retention”=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\Security]

“Retention”=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\System]

“Retention”=dword:00000001

2. Централизованный сбор событий аудита

Основной темой данной главы является централизация сбора событий аудита. Т.к. виртуальные десктопы являются динамическими сущностями, то вместе с их исчезновением исчезают и журналы безопасности. Соответственно события из этих журналов необходимо вовремя передать на сервера аудита. Для этого может использоваться несколько технологий, некоторые из которых будут приведены ниже. При этом стоит заметить, что, наверное, наиболее удобная из них технология Microsoft Event Forwarding, которую мы и рассмотрим первой.

Microsoft Event Forwarding [7]

При использовании технологии Microsoft Event Forwarding виртуальные десктопы должны самостоятельно передавать события из своих журналов событий Windows на Event Collector (сервер, осуществляющий сбор событий). При этом в рамках одного ЦОД/контролируемого периметра канал передачи событий между виртуальным десктопом и сервером Event Collector может не существовать (в целях уменьшения нагрузки на виртуальные десктопы и сервер Event Collector).

Описание использования технологии Microsoft Event Forwarding далее в большинстве основывается на статье “Centralizing Windows Events with Event Forwarding” компании Avecto.

Настройка виртуальных декстопов

На виртуальных десктопах должна быть запущены службы Windows Event Log и Windows Remote Management (WS-Management).

Для этого в групповой политике, применяемой к виртуальным десктопам, в ветке “Computer Configuration –> Policies –> Windows Settings –> Security Settings –> System Services” установить:

  • параметр “Windows Event Log” в значение “Automatic”;
  • параметр “Windows Remote Management (WS-Management)” в значение “Automatic”;

или

На основном образе пула виртуальных десктопов в оснастке “Службы” включить с типом запуска “Automatic” службы:

  • Windows Event Log;
  • Windows Remote Management (WS-Management).

Виртуальные десктопы должны быть настроены на отсылку событий журналов на сервер Event Collector.

Для этого в групповой политике, применяемой к виртуальным десктопам, в ветке “Computer Configuration –> Policies –> Administrative Templates –> Windows components –> Event Forwarding” установить параметр “Configure the server address, refresh interval, and issuer certificate authority of a target Subscription Manager” в значение “Enabled” со следующим значением опции “SubscriptionManagers”:

  • Server=http://<Event Collector FQDN>:5985/wsman/SubscriptionManager/WEC

или

На основном образе пула виртуальных десктопов в реестре прописать ключ с именем 1 и текстовым значением “Server=http://<Event Collector FQDN>:5985/wsman/SubscriptionManager/WEC” в ветвях:

  • HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\EventLog\Event Forwarding\SubscriptionManager
  • HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows\EventLog\EventForwarding\SubscriptionManager

Настройка сервер Event Collector

В каждом ЦОД/контролируемом периметре должен быть установлен выделенный сервер Event Collector.

Сервер Event Collector не должен выполнять функций, отличных от сбора событий из журналов. При этом в качестве сборщика событий (Event Collector) может выступать сервер Microsoft Windows Server версии не ниже Microsoft Windows Server R2.

На сервере Event Collector должны быть запущены службы Windows Event Log, Windows Remote Management (WS-Management) и Windows Event Collector.

Для этого на сервере Event Collector в оснастке “Службы” включить с типом запуска “Automatic” службы:

  • Windows Event Log;
  • Windows Remote Management (WS-Management);
  • Windows Event Collector.

Службу Windows Remote Management (WS-Management) следует настроить на ограничение входящих управляющих соединений только из сетей модуля виртуальных десктопов (Virtual LAN).

Для настройки ограничения следует:

  • в групповой политике, применяемой к серверу Event Collector, в ветке “Computer Configuration –> Policies –> Administrative Templates –> Windows components –> Windows Remote Management (WinRM) –> WinRM Service” установить параметр “Allow automatic configuration of listeners” в значение “Enabled” с указанием в опции “IPv4 filter сетей модуля Virtual LAN”.

или

  • winrm set winrm/config/service @{IPv4Filter=”<сеть модуля Virtual LAN>”}

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

  • на сервере Event Collector в реестре в ветвях:

-  HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WinRM\Service
-  HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows\WinRM\Service

должны присутствовать следующие ключи с соответствующими значениями:

-  AllowAutoConfig с значением 1
-  IPv4Filter с значением <сети модуля Virtual LAN>

или

  • на сервере Event collector в выводе команды:

winrm get winrm/config/service

в значении параметра “IPv4Filter” должна быть указана сеть модуля Virtual LAN.

Также служба Windows Remote Management (WS-Management) должна быть настроена на запрещение входящих управляющих соединений в режиме совместимости с предыдущими версиями.

Для этого в групповой политике, применяемой к серверу Event Collector, в ветке “Computer Configuration –> Policies –> Administrative Templates –> Windows components –> Windows Remote Management (WinRM) –> WinRM Service” необходимо установить следующие параметры:

  • “Turn On Compatibility HTTP Listener” в значение “Disabled”;
  • “Turn On Compatibility HTTPS Listener” в значение “Disabled”.

Служба Windows Remote Management (WS-Management) может быть настроена на разрешение незашифрованных управляющих соединений. В связи с тем, что сервер Event Collector и виртуальные десктопы, с которых собираются события, должны находиться в одном ЦОД/контролируемом периметре, не имеет смысла осуществлять защиту канала передачи событий.

Для того, чтобы разрешить незашифрованные управляющие соединения нужно:

  • в групповой политике, применяемой к серверу Event Collector, в ветке “Computer Configuration –> Policies –> Administrative Templates –> Windows components –> Windows Remote Management (WinRM) –> WinRM Service” установить параметр “Allow unencrypted traffic” в значение “Enabled”;

или

  • winrm set winrm/config/service @{AllowUnencrypted=”true”}

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

  • на сервере Event Collector в реестре в ветвях:

-  HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WinRM\Service
-  HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows\WinRM\Service

должны присутствовать следующие ключи с соответствующими значениями:

-  AllowUnencryptedTraffic с значением 1

или

  • на сервере Event collector в выводе команды:

winrm get winrm/config/service

в значении параметра “AllowUnencrypted” должна быть указано значение “true”.

На сервере Event Collector должна быть создана подписка на события с виртуальных десктопов.

Подписку необходимо создать в узле “Subscriptions” в Event viewer на сервере Event Collector.

При этом подписка на события виртуальных десктопов должна записывать принимаемые события в журнал Forwarded Events.

Для этого нужно на сервере Event Collector запустить Event Viewer. Выбрать узел “Subscriptions”. Выбрать подписку. В диалоговом окне “Subscription Properties <название подписки>” параметр “Destination log” установить в значение “Forwarded Events”.

Отправка событий по данной подписке должна инициироваться виртуальными десктопами.

Для этого на сервере Event Collector необходимо запустить Event Viewer. Выбрать узел “Subscriptions”. Выбрать подписку. В диалоговом окне “Subscription Properties <название подписки>” параметр “Subscription type” установить в значение “Source computer initiated”.

Прием событий по данной подписке должен быть ограничен только от доменных компьютеров (входящих в группу Domain Computers).

Для этого на сервере Event Collector необходимо запустить Event Viewer. Выбрать узел “Subscriptions”. Выбрать подписку. В диалоговом окне “Subscription Properties <название подписки>” нажать на кнопке “Select Computers Groups…” В появившемся окне указать группу “<название домена>\Domain Computers”.

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

Для этого нужно на сервере Event Collector запустить Event Viewer. Выбрать узел “Subscriptions”. Выбрать подписку. В диалоговом окне “Subscription Properties <название подписки>” нажать на кнопке “Select Computers Groups…” В появившемся окне указать группу “<название домена>\<группа виртуальных десктопов>”.

Далее необходимо настроить передачу событий как минимум из журнала безопасности (Security).

Для этого нужно на сервере Event Collector запустить Event Viewer. Выбрать узел “Subscriptions”. Выбрать подписку. В диалоговом окне “Subscription Properties <название подписки>” нажать на кнопке “Select events…”. В появившемся окне “Query filter” в закладке “Filter” выбрать параметр “By log” и в параметре “Event logs” указать журнал “Security”.

В рамках локальной сети возможно осуществление приема событий по незашифрованному протоколу HTTP.

Для этого на сервере Event Collector запустить Event Viewer. Выбрать узел “Subscriptions”. Выбрать подписку. В диалоговом окне “Subscription Properties <название подписки>” нажать на кнопке “Advanced…”. В появившемся окне “Advanced Subscription Settings” параметр “Protocol” должен содержать значение HTTP.

Для снижения нагрузки по обработке передаваемых событий на виртуальных десктопах рекомендуется установить параметр подписки “ContentFormat” в значение “Events”.

Для осуществления передачи событий, которые появились до возникновения возможности их передачи, необходимо установить параметр подписки “ReadExistingEvents” в значение “true”.

Для этого в командной строке ввести команду:

wecutil ss <имя подписки> /ree:true

А для проверки можно ввести команду:

wecutil gs <имя подписки>

При этом в выводе команды должна отобразиться строка “ReadExistingEvents: true”.

Microsoft SCOM Audit Collection Services

Аудит виртуальных десктопов может быть также настроен при помощи службы Microsoft SCOM Audit Collection Services. В случае использования для осуществления аудита виртуальных десктопов Microsoft SCOM Audit Collection Services следует руководствоваться следующими требованиями.

На основном образе виртуальных десктопов пула должна быть установлена служба Microsoft Audit Collection Services (Microsoft ACS) из состава SCOM.[8]

Для проверки следует запустить оснастку “Services”. В ней открыть окно свойств службы “Operations Manager Audit Forwarding Service”. Проконтролировать состояние следующих параметров:

  • Service status = Started

или

в ветке “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Sservices\AdtAgent” ключ “Start” должен иметь значение 0x00000002 (2).

Служба Microsoft ACS на основном образе виртуальных десктопов пула должна быть настроена на:

  • Запуск при старте операционной системы

Для проверки этого необходимо запустить оснастку “Services”. В ней открыть окно свойств службы “Operations Manager Audit Forwarding Service”. Проконтролировать состояние следующих параметров:

  • Start type = Automatic

или

В ветке “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Sservices\AdtAgent” ключ “Type” должен иметь значение 0x00000010 (16).

  • Передачу событий аудита на сервер аудита ACS (Collector)

Для проверки в ветке “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Operations Manager\3.0\Agent Management Groups\<название группы управления>\Parent Health Services\0”:

  • ключ “AuthenticationName” должен иметь значение “<Collector FQDN>”
  • ключ “NetworkName” должен иметь значение “<Collector FQDN>”

Название группы управления должно соответствовать названию группы управления в консоли управления System Center Operations Manager (Operations Console).

Для установки и настройки передачи событий аудита службой Microsoft ACS на сервер аудита основной образ виртуальных десктопов пула должен находиться в домене. События безопасности с виртуальных десктопов должны сохраняться в базе данных Microsoft System Center.

Система SIEM (на примере RSA enVision)

Аудит виртуальных десктопов может быть настроен для сбора событий в систему управления событиями безопасности (SIEM). В случае использования для осуществления аудита системы SIEM должны выполняться следующие требования.

В домене, к которому принадлежат виртуальные десктопы пула, должна быть заведена учетная запись, предназначенная для сбора событий из журналов аудита виртуальных десктопов.[9]

Учетная запись, предназначенная для сбора событий из журналов аудита виртуальных десктопов, должна иметь на виртуальном десктопе привилегию Manage auditing and security log policy.[9]

Для этого в групповой политике, применяемой к виртуальным десктопам, в ветке Computer Configuration –> Policies –> Windows Settings –> Security Settings –> Local Policies –> User rights assignment следует добавить в параметр Manage auditing and security log учетную запись, предназначенную для сбора событий из журналов аудита виртуальных десктопов.

            или

На основном образе пула виртуальных десктопов в оснастке Local Policy в разделе Computer Configuration –> Windows settings –> Security Settings –> Local Policies –> User Rights Assignment добавить в параметр Manage auditing and security log учетную запись, предназначенную для сбора событий из журналов аудита виртуальных десктопов.

Учетная запись, предназначенная для сбора событий из журналов аудита виртуальных десктопов, должна принадлежать на виртуальном десктопе группе Event Log Readers.[10]

Для этого в групповой политике, применяемой к виртуальным десктопам, в ветке Computer Configuration –> Policies –> Windows Settings –> Security Settings –> Restricted Groups необходимо создать группу Event Log Readers и добавить в члены группы учетную запись, предназначенную для сбора событий из журналов аудита виртуальных десктопов.

      или

На основном образе пула виртуальных десктопов добавить в локальную группу Event Log Readers учетную запись, предназначенную для сбора событий из журналов аудита виртуальных десктопов.

На виртуальных десктопах должна быть запущена служба Windows Remote Management (WS-Management).[10]

Для этого в командной строке основного образа пула виртуальных десктопов запустить команду winrm quickconfig и ответить Yes при вопросе о сохранении изменений.

В результате на виртуальном десктопе в оснастке Службы должна быть запущена служба Windows Remote Management (WS-Management)

На виртуальных десктопах служба Windows Remote Management (WS-Management) должна быть настроена на ограничение входящих управляющих соединений только с адресов системы SIEM.[10]

Для этого в групповой политике, применяемой к виртуальным десктопам, в ветке Computer Configuration –> Policies –> Administrative Templates –> Windows components –> Windows Remote Management (WinRM) –> WinRM Service установить параметр Allow automatic configuration of listeners в значение Enabled с указанием в опции IPv4 filter адресов системы SIEM.

        или

запустить команду:

                  winrm set winrm/config/service @{IPv4Filter=”<адреса системы SIEM>”}

Проверить можно следующим образом:

  • На виртуальном десктопе в реестре в ветвях:

-  HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WinRM\Service
-  HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows\WinRM\Service

должны присутствовать следующие ключи с соответствующими значениями:

-  AllowAutoConfig с значением 1
-  IPv4Filter с значением <адреса системы SIEM>

или

  • На виртуальном десктопе в выводе команды:

                     winrm get winrm/config/service

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

Необходимо разрешить доступ службы Windows Remote Management (WS-Management) к каналу журнала безопасности на виртуальном десктопе.[10]

Для этого на основном образе пула виртуальных десктопов  запустить команду:

                     wevutil gl Security

Запомнить значение параметра “channelAccess”, указанного в выводе команды.

Далее в групповой политике, применяемой к виртуальным десктопам, в ветке Computer Configuration –> Policies –> Administrative Templates –> Windows components –> Event Log Service –> Security установить параметр Log Access в значение Enabled, а поле LogAccess в значение параметра channelAccess дополненное строкой (A;;0x1;;;S-1-5-20).

Система SIEM должна иметь доступ на чтение к Windows Management Instrument (WMI) на виртуальном десктопе.[10]

Для этого на основном образе пула виртуальных десктопов запустить команду (в зависимости от версии операционной системы):

           winrm configsddl wmi

                или

           winrm configsddl

В появившемся окне необходимо указать разрешение Read(Get,Enumerate,Subscribe) для учетной записи, предназначенной для сбора событий из журналов аудита виртуальных десктопов.

Система SIEM должна иметь доступ к ресурсам Win32UTCTime и Win32_AccountSID Windows Management Instrument (WMI) на виртуальном десктопе.[10]

Для этого на основном образе пула виртуальных десктопов нужно запустить команду:

           wmimgmt

Далее в появившемся окне выбрать “WMI Control (Local)” и открыть окно свойств. В закладке Security выбрать “Root –> CIMV2” и нажать кнопку “Security”. В появившемся окне указать разрешения “Enable Account и Remote Enable” для учетной записи, предназначенной для сбора событий из журналов аудита виртуальных десктопов.

Выше указаны требования по настройке виртуальных десктопов для осуществления сбора событий информационной безопасности с них в SIEM систему. Далее необходимо осуществить настройку сбора этих событий в самой SIEM системе, что не является целью данной статьи и опущено. Подробнее этот вопрос для RSA enVision может быть изучен в документации на систему.