Kaspersky Security Center сбор из СУБД MS SQL
Предварительные требования
-
Сетевая доступность между R-Vision SIEM и СУБД Kaspersky Security Center (tcp/1433).
-
Учетная запись в СУБД с правами на чтение таблицы kav.dbo.ev_event (Сбор событий из БД).
Настройка в СУБД MS SQL
События Kaspersky Security Center записываются в таблицу ev_event
базы данных KAV СУБД MS SQL.
Для настройки сбора логов из базы данных необходимо к ней подключиться.
Чтобы подключиться к БД, используйте специально созданную сервисную учетную запись (далее — УЗ).
Создание учетной записи в СУБД MS SQL
Чтобы создать сервисную УЗ, подключитесь к СУБД с правами администратора. Для этого выполните следующие действия в SQL Server Management Studio:
-
Выберите New Login в контекстном меню для Security/Logins.
-
Создайте сервисную учетную запись.
Вместо локальной УЗ вы также можете использовать заранее созданную доменную.
-
Предоставьте учетной записи права на чтение базы KAV.
Настройка в R-Vision SIEM
Общий вид рабочего конвейера для обеспечения получения и отображения событий:
Для подключения базы данных MS SQL в качестве источника событий в SIEM настройте следующий конвейер:
-
Создайте точку входа со следующими параметрами:
-
Тип точки входа: Database.
-
SQL-запрос:
SELECT TOP 10000 ev.event_id AS event_id , ev.event_type_id AS deviceEventClassId , ev.severity AS severity , ev.task_display_name AS taskDisplayName , ev.product_name AS product_name , ev.product_displ_version AS product_version , ev.event_type AS externalId , ev.event_type_display_name AS event_subcode , ev.descr AS msg , CASE WHEN ev.rise_time is not NULL THEN DATEADD(hour,DATEDIFF(hour,GETUTCDATE(),GETDATE()),ev.rise_time ) ELSE ev.rise_time END AS endTime , CASE WHEN ev.registration_time is not NULL THEN DATEADD(hour,DATEDIFF(hour,GETUTCDATE(),GETDATE()),ev.registration_time ) ELSE ev.registration_time END AS kscRegistrationTime , cast(ev.par7 AS varchar(4000)) AS sourceUserName , hs.wstrWinName AS dHost , hs.wstrWinDomain AS strNtDom , serv.wstrWinName AS kscName , CAST(hs.nIp / 256 / 256 / 256 % 256 AS VARCHAR) + '.' + CAST(hs.nIp / 256 / 256 % 256 AS VARCHAR) + '.' + CAST(hs.nIp / 256 % 256 AS VARCHAR) + '.' + CAST(hs.nIp % 256 AS VARCHAR) AS sourceAddress , serv.wstrWinDomain AS kscNtDomain , CAST(serv.nIp / 256 / 256 / 256 % 256 AS VARCHAR) + '.' + CAST(serv.nIp / 256 / 256 % 256 AS VARCHAR) + '.' + CAST(serv.nIp / 256 % 256 AS VARCHAR) + '.' + CAST(serv.nIp % 256 AS VARCHAR) AS kscIP , CASE WHEN virus.tmVirusFoundTime IS NOT NULL THEN DATEADD(hour,DATEDIFF(hour,GETUTCDATE(),GETDATE()),virus.tmVirusFoundTime ) ELSE ev.registration_time END AS virusTime , virus.wstrObject AS filePath , virus.wstrVirusName AS virusName , virus.result_ev AS result FROM kav.dbo.ev_event AS ev LEFT JOIN kav.dbo.v_akpub_host AS hs ON ev.nHostId = hs.nId INNER JOIN kav.dbo.v_akpub_host AS serv ON serv.nId = 1 LEFT JOIN kav.dbo.rpt_viract_index AS Virus ON ev.event_type_id = virus.nEventVirus WHERE event_id > ?
При большом количестве событий в СУБД рекомендуется добавлять TOP 10000
в начало SQL-запроса. -
База данных: MS SQL.
-
Интервал запроса: 15.
-
Поле идентификатора:
-
Ключ: event_id.
-
Значение: 1.
-
-
Строка подключения в секрете:
jdbc:sqlserver://DBSERVER:1433;encrypt=false;databaseName=KAV;user=kasper;password=passw0rd
Строка подключения в секрете в случае использования доменной учетной записи:
jdbc:sqlserver://DBSERVER:1433;encrypt=false;databaseName=KAV;authenticationScheme=NTLM;integratedSecurity=true;user=srv_ksc;password=P@ssw0rd
Здесь:
-
DBSERVER
-- FQDN или IP-адрес сервера СУБД. -
1433
-- порт подключения
-
-
-
Добавьте нормализатор с правилом "Kaspersky Security Center".
-
Добавьте конечную точку типа Хранилище событий.
-
Установите конфигурацию конвейера.
Если настройка выполнена корректно, в хранилище начнут поступать события из MS SQL.
Таблица маппинга
Таблица соответствия полей события для всех рассмотренных типов событий представлена по ссылке.