This is an optional step of the Installation Wizard. On the Enrichment tab of the Installation Wizard, you can select or create a enrichment rules and indicate which data from which sources you want to add to correlation events that the correlator creates. There can be more than one enrichment rule. You can add them by clicking the Add button and can remove them by clicking the button.
To add an existing enrichment rule to a set of resources:
This opens the enrichment rule settings block.
The enrichment rule is added to the set of resources for the correlator.
To create a new enrichment rule in a set of resources:
This opens the enrichment rule settings block.
This type of enrichment is used when a constant needs to be added to an event field. Available enrichment type settings are listed in the table below.
Available enrichment type settings
Setting |
Description |
---|---|
Constant |
The value to be added to the event field. Maximum length of the value: 255 Unicode characters. If you leave this field blank, the existing event field value is removed. |
Target field |
The KUMA event field that you want to populate with the data. |
If you are using the event enrichment functions for extended schema fields of "String", "Number", or "Float" type with a constant, the constant is added to the field.
If you are using the event enrichment functions for extended schema fields of "Array of strings", "Array of numbers", or "Array of floats" type with a constant, the constant is added to the elements of the array.
This type of enrichment is used if you need to add a value from the dictionary of the Dictionary type. Available enrichment type settings are listed in the table below.
Available enrichment type settings
Setting |
Description |
---|---|
Dictionary name |
The dictionary from which the values are to be taken. |
Key fields |
Event fields whose values are to be used for selecting a dictionary entry. To add an event field, click Add field. You can add multiple event fields. |
If you are using event enrichment with the dictionary type selected as the Source kind setting, and an array field is specified in the Key enrichment fields setting, when an array is passed as the dictionary key, the array is serialized into a string in accordance with the rules of serializing a single value in the TSV format.
Example: The Key fields setting of the enrichment uses the SA.StringArrayOne
extended schema field. The SA.StringArrayOne
extended schema field contains the values "a"
, "b"
, "c"
. The following values are passed to the dictionary as the key: ['a','b','c']
.
If the Key enrichment fields setting uses an array extended schema field and a regular event schema field, the field values are separated by the "|
" character when the dictionary is queried.
Example: The Key enrichment fields setting uses the SA.StringArrayOne
extended schema field and the Code
string field. The SA.StringArrayOne
extended schema field contains the values "a"
, "b"
, "c"
, and the Code
string field contains the myCode
sequence of characters. The following values are passed to the dictionary as the key: ['a','b','c']|myCode
.
This type of enrichment is used when you need to write a value from another event field to the current event field. Settings of this type of enrichment:
Conversions are modifications that are applied to a value before it is written to the event field. You can select one of the following conversion types from the drop-down list:
Micromon
value is applied to Microsoft-Windows-Sysmon
, the new value is soft-Windows-Sys
.When converting a corrupted string or if conversion error occur, corrupted data may be written to the event field.
During event enrichment, if the length of the encoded string exceeds the size of the field of the normalized event, the string is truncated and is not decoded.
If the length of the decoded string exceeds the size of the event field into which the decoded value is to be written, such a string is truncated to fit the size of the event field.
Conversions when using the extended event schema
Whether or not a conversion can be used depends on the type of extended event schema field being used:
This type of enrichment is used when you need to write the result of processing Go templates into the event field. We recommend matching the value and the size of the field. Available enrichment type settings are listed in the table below.
Available enrichment type settings
Setting |
Description |
---|---|
Template |
The Go template. Event field names are passed in the |
Target field |
The KUMA event field that you want to populate with the data. |
If you are using enrichment of events that have template selected as the Source kind, and in which the target field has the "String" type, and the source field is an extended event schema field containing an array of strings, you can use one of the following examples for the template:
{{.SA.StringArrayOne}}
{{- range $index, $element := . SA.StringArrayOne -}}
{{- if $index}}, {{end}}"{{$element}}"{{- end -}}
To convert the data in an array field in a template into the TSV format, use the toString
function, for example:
template {{toString.SA.StringArray}}
This type of enrichment is used to send requests to a private network DNS server to convert IP addresses into domain names or vice versa. IP addresses are converted to DNS names only for private addresses: 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, 100.64.0.0/10.
Available settings:
1,000
.1
.60
.This type of enrichment is deprecated, we recommend using cybertrace-http instead.
This type of enrichment is used to add information from CyberTrace data streams to event fields.
Available settings:
1,000
.30
.Available types of CyberTrace indicators:
In the mapping table, you must provide at least one string. You can use the Add row button to add a string, and can use the button to remove a string.
This is a new streaming event enrichment type in CyberTrace that allows you to send a large number of events with a single request to the CyberTrace API. Recommended for systems with a lot of events. Cybertrace-http outperforms the previous 'cybertrace' type, which is still available in KUMA for backward compatibility.
Limitations:
Available settings:
30
.This type of enrichment is used in collectors and correlators to assign a specific timezone to an event. Timezone information may be useful when searching for events that occurred at unusual times, such as nighttime.
When this type of enrichment is selected, the required timezone must be selected from the Timezone drop-down list.
Make sure that the required time zone is set on the server hosting the enrichment-utilizing service. For example, you can do this by using the timedatectl list-timezones
command, which shows all time zones that are set on the server. For more details on setting time zones, please refer to your operating system documentation.
When an event is enriched, the time offset of the selected timezone relative to Coordinated Universal Time (UTC) is written to the DeviceTimeZone event field in the +-hh:mm
format. For example, if you select the Asia/Yekaterinburg timezone, the value +05:00
will be written to the DeviceTimeZone field. If the enriched event already has a value in the DeviceTimeZone field, it will be overwritten.
By default, if the timezone is not specified in the event being processed and enrichment rules by timezone are not configured, the event is assigned the timezone of the server hosting the service (collector or correlator) that processes the event. If the server time is changed, the service must be restarted.
Permissible time formats when enriching the DeviceTimeZone field
When processing incoming raw events in the collector, the following time formats can be automatically converted to the +-hh:mm format:
Time format in a processed event |
Example |
+-hh:mm |
-07:00 |
+-hhmm |
-0700 |
+-hh |
-07 |
If the date format in the DeviceTimeZone
field differs from the formats listed above, the collector server timezone is written to the field when an event is enriched with timezone information. You can create custom normalization rules for non-standard time formats.
Creating a filter in resources
To create a filter:
The value to be checked is converted to binary and processed right to left. Chars are checked whose index is specified as a constant or a list.
If the value being checked is a string, then an attempt is made to convert it to integer and process it in the way described above. If the string cannot be converted to a number, the filter returns False
.
If you do not specify the ID and severity of the vulnerability, the filter is triggered if the asset in the event being checked has any vulnerability.
You can add multiple conditions or a group of conditions.
The new enrichment rule was added to the set of resources for the correlator.
Proceed to the next step of the Installation Wizard.
Page top