Operational correlation rules are used for working with active lists.
The correlation rule window contains the following tabs:
General—used to specify the main settings of the correlation rule. On this tab, you can select the type of correlation rule.
Selectors—used to define the conditions that the processed events must fulfill to trigger the correlation rule. Available settings vary based on the selected rule type.
Actions—used to set the triggers that will activate when the conditions configured in the Selectors settings block are fulfilled. A correlation rule must have at least one trigger. Available settings vary based on the selected rule type.
Correlators—used for linking correlators. Available only for created correlation rules that are open for editing.
General tab
Name (required)—a unique name for this type of resource. Must contain 1 to 128 Unicode characters.
Tenant (required)—the tenant that owns the correlation rule.
Type (required)—a drop-down list for selecting the type of correlation rule. Select operational if you want to create an operational correlation rule.
Rate limit—maximum number of times a correlation rule can be triggered per second. The default value is 100.
If correlation rules employing complex logic for pattern detection are not triggered, this may be due to the specific method used to count rule triggers in KUMA. In this case, try to increase the value of Rate limit to 1000000, for example.
Description—the description of a resource. Up to 4,000 Unicode characters.
Selectors tab
A rule of the operational kind can have only one selector for which the Settings and Local variables tabs are available.
The Settings tab contains settings with the Filter group of settings:
Filter (required)—used to set the criteria for determining events that should trigger the selector. You can select an existing filter from the drop-down list or create a new filter.
If you want to keep the filter as a separate resource, select the Save filter check box.
In this case, you will be able to use the created filter in various services.
This check box is cleared by default.
If you selected the Save filter check box, enter a name for the created filter resource in the Name field. The name must contain 1 to 128 Unicode characters.
In the Conditions settings block, specify the conditions that the events must meet:
Click the Add condition button.
In the Left operand and Right operand drop-down lists, specify the search parameters.
Depending on the data source selected in the Right operand field, you may see fields of additional parameters that you need to use to define the value that will be passed to the filter. For example, when choosing active list you will need to specify the name of the active list, the entry key, and the entry key field.
In the operator drop-down list, select the relevant operator.
<—the left operand is less than the right operand.
<=—the left operand is less than or equal to the right operand.
>—the left operand is greater than the right operand.
>=—the left operand is greater than or equal to the right operand.
inSubnet—the left operand (IP address) is in the subnet of the right operand (subnet).
contains—the left operand contains values of the right operand.
startsWith—the left operand starts with one of the values of the right operand.
endsWith—the left operand ends with one of the values of the right operand.
match—the left operand matches the regular expression of the right operand. The RE2 regular expressions are used.
hasBit—checks whether the left operand (string or number) contains bits whose positions are listed in the right operand (in a constant or in a list).
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.
hasVulnerability—checks whether the left operand contains an asset with the vulnerability and vulnerability severity specified in the right operand.
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.
inActiveList—this operator has only one operand. Its values are selected in the Key fields field and are compared with the entries in the active list selected from the Active List drop-down list.
inDictionary—checks whether the specified dictionary contains an entry defined by the key composed with the concatenated values of the selected event fields.
inCategory—the asset in the left operand is assigned at least one of the asset categories of the right operand.
inActiveDirectoryGroup—the Active Directory account in the left operand belongs to one of the Active Directory groups in the right operand.
TIDetect—this operator is used to find events using CyberTrace Threat Intelligence (TI) data. This operator can be used only on events that have completed enrichment with data from CyberTrace Threat Intelligence. In other words, it can only be used in collectors at the destination selection stage and in correlators.
inContextTable—presence of the entry in the specified context table.
intersect—presence in the left operand of the list items specified in the right operand.
If necessary, select the do not match case check box. When this check box is selected, the operator ignores the case of the values.
The selection of this check box does not apply to the InSubnet, InActiveList, InCategory or InActiveDirectoryGroup operators.
This check box is cleared by default.
If you want to add a negative condition, select If not from the If drop-down list.
You can add multiple conditions or a group of conditions.
If you have added multiple conditions or groups of conditions, choose a search condition (and, or, not) by clicking the AND button.
If you want to add existing filters that are selected from the Select filter drop-down list, click the Add filter button.
You can view the nested filter settings by clicking the button.
Conditions for filters based on data from the Extra event field:
Condition—If.
Left operand—event field.
In this event field, you can specify one of the following values:
Extra field.
Value from the Extra field in the following format:
Extra.<field name>
For example, Extra.app.
A value of this type is specified manually.
Value from the array written to the Extra field in the following format:
Extra.<field name>.<array element>
For example, Extra.array.0.
The values in the array are numbered starting from 0.
A value of this type is specified manually.
To work with a value from the Extra field at depth 3 and below, use backquotes ``. For example, `Extra.lev1.lev2.lev3`.
Operator – =.
Right operand—constant.
Value—the value by which you need to filter events.
On the Local variables tab, click Add variable to declare variables that you want to use within the limits of this correlation rule.
Actions tab
A rule of the operational kind can have only one trigger: On every event. It is activated every time the selector triggers.
Available parameters of the trigger:
Active lists update settings group—used to assign the trigger for one or more operations with active lists. You can use the Add active list action and Delete active list action buttons to add or delete operations with active lists, respectively.
Available settings:
Name (required)—this drop-down list is used to select the active list.
Operation (required)—this drop-down list is used to select the operation that must be performed:
Sum—add a constant, the value of a correlation event field, or the value of a local variable to the value of the active list.
Set—write the values of the selected fields of the correlation event into the Active list by creating a new or updating an existing Active list entry. When the Active list entry is updated, the data is merged and only the specified fields are overwritten.
Delete—delete the Active list entry.
Key fields (required)—this is the list of event fields used to create the Active list entry. It is also used as the Active list entry key.
The active list entry key depends on the available fields and does not depend on the order in which they are displayed in the KUMA web interface.
Mapping (required for Set operation)—used to map active list fields with event fields. More than one mapping rule can be set.
The left field is used to specify the Active list field.
The field must not contain special characters or numbers only.
The middle drop-down list is used to select event fields.
The right field can be used to assign a constant to the Active list field is the Set operation was selected.
Under Context table update, you can assign the trigger for one or more operations with context tables. You can click Add context table action or Delete context table action to add or delete operations with context tables, respectively.
Available settings:
Name (required)—this drop-down list is used to select context table resources.
Operation (required)—this drop-down list is used to select the operation that must be performed.
Sum—add a constant, the value of a correlation event field, or the value of a local variable to the value of the context table. This operation is used only for fields of number and float types.
Set—write the values of the selected fields of the correlation event into the context table by creating a new or updating an existing context table entry. When the context table entry is updated, the data is merged and only the specified fields are overwritten.
Merge—append the value of a correlation event field, local variable, or constant to the current value of a field of the context table.
Delete—delete the context table entry.
Key fields (required)—this is the list of event fields used to create the context table entry. It is also used as the key of the context table entry. As a key field, you can specify an event field or a local variable declared on theSelectors tab.
The composite key of the context table entry depends only on the values of fields and does not depend on the order in which they are displayed in the KUMA web interface.
Mapping (required for all operations except Delete)—used to map context table fields to event fields or variables. More than one mapping rule can be set. You can specify the same context table field multiple times.
The left field is used to specify the context table field.
The field must not contain a field name that is already used in the mapping, tab characters, special characters, or only numerals. The maximum number of characters is 128. The name cannot begin with an underscore.
The middle drop-down list is used to select event fields or a local variable.
You can use the right field to assign a constant to the context table field. The maximum number of characters is 1024.
Correlators tab
Add—Used when editing the created correlation rule. You can click Add to open the Correlators window and select a correlator from the list. After you click OK, the rule is linked to the selected correlator. You can select multiple correlators at the same time. The rule is added to the end of the execution queue. If you want to move the rule up in the execution queue, go to Resources - Correlator - <selected correlator> - Edit correlator - Correlation, select the check box next to the relevant rule and use the Move up or Move down buttons to reorder the rules as necessary.
Delete—Used to unlink the correlation rule from the correlator.