Плагин reputation_list

Плагин reputation_list ищет совпадения значений полей события по базе репутационных списков. Формат списка - строки, возможны строки с комментариями (символ #).

Возможные типы списков (list-type):

autonomous_system,artifact,directory,domain_name, email_addr, file,ipv4_addr, ipv6_addr, mac_addr, mutex, port, process, software, url, user_account, windows_registry_key, x509_certificate.

При совпадении поля из lookup-fields, имя репутационного списка будет записано в массив ECS.Threat.Indicators. Имя поля, по которому совпало значение и само значение будут записаны в JSON-массив ECS.Threat.Enrichments.

Опционально записывайте флаг срабатывания списка в произвольное поле (target-flag-field) и имя поля, по которому было срабатывание (target-matched-on-field-name).

Регулярное выражение:

processors:

  - module: reputation_list
    name: alienvault_reputation
    list-type: ipv4_addr
    lookup-fields: ["Raw", "ECS.Source.IP","ECS.Destination.IP"]
    #target-flag-field: Optional.IsBlacklisted
    #target-matched-on-field-name: Optional.BlacklistedOn
    list: |
      #
      # alienvault_reputation
      #
      # ipv4 hash:ip ipset
      #
      # [AlienVault.com] (https://www.alienvault.com/) IP
      # reputation database
      #
      # Maintainer      : Alien Vault
      # Maintainer URL  : https://www.alienvault.com/
      # List source URL : https://reputation.alienvault.com/reputation.generic
      # Source File Date: Fri Nov 12 14:10:50 UTC 2021

      4.71.37.46
      14.34.157.101
      14.42.145.172
      14.111.220.134
      14.241.244.250
      18.117.69.135
      18.188.148.80
      23.247.108.44
      24.188.100.85
      27.21.147.209
      27.35.154.75
      27.38.61.75
      27.38.61.120
      27.41.36.239
      27.43.119.144
      27.43.178.112
      27.47.116.249
      27.158.79.129
      27.159.92.181
      27.194.89.189
      27.194.122.23
      27.197.24.223
      27.199.237.162
      27.203.233.132
      27.207.195.126
      27.215.53.111
      27.215.109.196
      27.215.114.223

Пример исходного события:

14.111.220.134

В результате срабатывания плагина в разделе Elastic Common Schema появятся новые поля: ECS.Threat.Enrichments и ECS.Threat.Indicators, как показано на скриншоте ниже.

Результат работы плагина

Возможные варианты использования

Плагин обладает более гибкими возможностями и его можно использовать как справочник для белых и чёрных списков. Например, ожидать в поле значение и сравнивать его со списком, а после переопределять значение другому полю (string, ip, number).

В данном примере мы ожидаем, что в событии присутствует путь в поле ECS.File.Path или ECS.File.Directory и сравниваем его со списком. Если значение совпадает, то в поле AnyField запишется true при срабатывании, а в поле AnyField2 значение.

module: reputation_list
lookup-fields: ["ECS.File.Path","ECS.File.Directory"]
list: |
  C:\Program Files\App\App.exe
  svchost.exe
target-flag-field: AnyField   # запишется true при срабатывании
target-matched-on-field-name: AnyField2   # запишется значение, которое сработало

Последнее изменение 12.05.2023