Перейти к содержанию

Обогащение событий

В качестве источников обогащения событий в Платформе используются следующие типы обогащений:

  • GeoIP

  • DNS

  • Threat Intelligence

  • RVS

  • Lookups

Настройка GeoIP обогащения

GeoIP обогащение работает на основе базы IP-адресов GeoLite от MaxMind’s.

  1. Для работы необходимо получить базу GeoLite2-City.mmdb и положить ее на экземпляр модуля обработки событий.(https://dev.maxmind.com/geoip/geolite2-free-geolocation-data?lang=en)

  2. Далее в конфигурационном файле модуля обработки событий /opt/pangeoradar/configs/termite/conf.yaml необходимо добавить следующие записи:

    geoip:
      enabled: true
      db-path: /etc/termite/GeoLite2-City.mmdb # путь до файла с базой ip-адресов
    
  3. Далее необходимо перезапустить сервис pangeoradar-termite.

В результате, события должны обогащаться GeoIP информацией, как изображено на рисунке 1.

GeoIP обогащение

Рисунок 1 -- Обогащенное GeoIP событие

Настройка DNS обогащения

DNS обогащение может работать как от .csv файла с базой FQDN и IP-адресов, так и получая информацию от DNS сервера. Можно использовать оба способа единовременно.

DNS обогащение по сети

Для организации работы DNS обогащения по сети необходимо произвести настройку в конфигурационном файле модуля обработки событий /opt/pangeoradar/configs/termite/conf.yaml добавив туда следующие записи:

dns:
  enabled: true
  domains:
  - demo.local # Домены для dns обогащения
  nets: [192.168.0.0/16] # Сети для dns обогащения
  servers: [192.168.150.15] # Сервера для dns обогащения
  port: 53 # Порт для dns обогащения
  local: false # вкл/выкл только локальное dns обогащение
  in_memory: # dns-кэш
    enabled: true # вкл/выкл dns-кэш
    expire: 10800 # время (сек) через которое записи удаляются из кеша

Локальное DNS обогащение

Для организации работы DNS обогащения из файла необходимо произвести настройку в конфигурационном файле модуля обработки событий /opt/pangeoradar/configs/termite/conf.yaml добавив туда следующие записи:

dns:
  enabled: true
  domains:
  - demo.local # Домены для dns обогащения
  nets: [192.168.0.0/16] # Сети для dns обогащения
  local: true # вкл/выкл только локальное dns обогащение
  in_memory: # dns-кэш
    enabled: true # вкл/выкл dns-кэш
    expire: 10800 # время (сек) через которое записи удаляются из кеша
    preload_from_file: /opt/pangeoradar/configs/termite/demo.local-output.csv # Путь до файла csv

Пример представления CSV файла с перечнем FQDN и IP-адресов:

'test1.demo.local','192.168.1.1'
'192.168.1.100','test3.demo.local'

В результате, события должны обогащаться DNS информацией, как изображено на рисунке 2.

DNS обогащение

Рисунок 2 -- Обогащенное DNS событие

Настройка Threat Intelligence обогащения

Threat Intelligence обогащение работает на основе баз угроз безопасности, получаемых Платформой различных поставщиков.

Для просмотра базы Threat Intelligence необходимо в интерфейсе Платформы перейти в раздел “Репутационные списки”. Раздел изображен на рисунке 3.

Репутационные списки

Рисунок 3 -- Репутационные списки

TI обогащение позволяет наполнять дополнительной информацией события, содержащие:
Домен-URL, IP - адрес, SSL хэш, Хэш файлов из базы угроз.

Для работы TI - обогащения необходимо в конфигурационном файле модуля обработки событий /opt/pangeoradar/configs/termite/conf.yaml добавить следующие записи:

# Пример настройки при Standalone инсталляции:

threatintel: # threat intelligence обогащение
  enabled: true
  service-url: http://localhost:8082/
  db-path: ./threat.db

В результате, события должны обогащаться TI информацией, как изображено на рисунке 4.

Обогащенное DNS событие

Рисунок 4 -- Обогащенное TI событие

Настройка RVS обогащения

RVS обогащение работает на основе табличных списков.

  1. Для настройки RVS обогащения необходимо в табличном списке создать коллекцию (вручную или специальными средствами для обогащения).

    Работа с интерфейсом табличных списков представлена в руководстве по работе с RVS (табличные списки) ;

  2. Далее, в созданной коллекции, необходимо добавить документ, пример которого изображен на рисунке 5.

    Табличный список

    Рисунок 5 -- Табличные списки

    Созданный документ в json формате:

    {
    "name": "192.168.200.3",
    "ip": [
        "192.168.200.3"
    ],
    "fqdn": [],
    "mac": [
        "00:0c:29:b9:7a:11"
    ],
    "groups": [
        "Рабочие станции"
    ]
    }
    
  3. В конфигурационном файле модуля обработки событий /opt/pangeoradar/configs/termite/conf.yaml необходимо добавить следующие записи:

    rvs:
        enabled: false                                              # включение rvs обогащения
        host: <IP-адрес-Платформы>                                  # адрес MongoDB (роль: Мастер)
        inmemory_collection_size: 60                                # размер коллекции, хранящийся в памяти
        mapping:                                                    # настройка сопоставления для обогащений
            2162-Cisco-NetFlow:                                       # название источника (event.logsource.input)
                asset_info:                                             # название коллекции
                    - enrich_from:                                          # настройка проверки совпадения полей коллекции и нормализованного события
                        collection_field: ip                                # поле в коллекции, сопоставляемое с полем в нормализованном событии
                        normalized_field: initiator.host.ip                 # поле в нормализованном событии, сопоставляемое с полем коллекции
                    -  enrich_to:                                            # настройка обогащения полей из коллекции в поля нормализации
                        collection_field: mac                               # содержимое поля в коллекции
                        normalized_field: initiator.interface.mac           # целевое поле в нормализованном событии
        no_verify: true                                             # не проверять сертификат
        port: 27017                                                 # порт MongoDB
        secure: true                                                # использование SSL
        update_interval: 60                                         # частота обновлений
    

Таким образом, обогащение производится по следующему принципу:
Если приходит событие, в котором значение поля нормализованного события initiator.host.ip равно значению поля ip одного из документов коллекции в RVS - заменять/добавлять в поле initiator.interface.mac нормализованного события, значение поля mac документа в RVS.

Пример:

В Платформу приходит событие:

"Version":9,"SysUpTimeMilisec":2549185408,"EventReceivedTime":"2022-02-17T17:31:42+03:00","MessageSourceAddress":"192.168.200.1","SourceIPv4Address":"192.168.200.3","DestIPv4Address":"172.30.254.128","inputSNMPIface":3,"outputSNMPIface":2,"InPackets":1,"InBytes":226,"postPacketDeltaCount":2,"postOctetDeltaCount":78,"FlowStart":1645108153,"FlowEnd":1645108153,"SourcePort":53,"DestPort":34420,"postNATSourceIPv4Address":"185.120.22.23","postNATDestinationIPv4Address":"192.168.150.15","postNAPTSourceTransportPort":53,"postNAPTDestinationTransportPort":61962,"privateEnterpriseNumber":2620,"natInstanceID":0,"natThresholdEvent":0,"ProtocolIdentifier":17,"TCPFlags":0

В поле initiator.host.ip значение ['192.168.200.3'], что совпадает с полем ip в одной из записей в коллекции. В результате в поле initiator.interface.mac должно записаться значение поля mac из записи в коллекции, то есть значение '00:0c:29:b9:7a:11'.

Результат обогащенного табличным списком события представлен на рисунке 6.

Обогащенное RVS событие

Рисунок 6 -- Обогащенное RVS событие

Lookup обогащение

Lookup обогащение происходит на этапе нормализации событий.

Описание Lookup представлено в разделе Специальные функции для работы с полями нормализации.