Contents
- Working with alerts
- About alerts
- Alert data model
- Viewing the alert table
- Viewing alert details
- Assigning alerts to analysts
- Changing an alert status
- Creating alerts manually
- Linking alerts to incidents
- Unlinking alerts from incidents
- Linking events to alerts
- Unlinking events from alerts
- Editing alerts by using playbooks
- Working with alerts on the investigation graph
- Aggregation rules
Working with alerts
This section contains general information about alerts, their properties, typical life cycle, and connection with incidents. The instructions that are provided will help you analyze the alert table, change alert properties according to the current state in the life cycle, and combine alerts into incidents by linking or unlinking the alerts.
The Alerts section is displayed in the main menu if the following conditions are met:
- You have a license key for Kaspersky Next XDR Expert.
- You are connected to the root Administration Server in OSMP Console.
- You have one of the following XDR roles: Main administrator, Tenant administrator, Junior analyst, Tier 1 analyst, Tier 2 analyst, SOC manager, Interaction with NCIRCC, Approver, Observer.
About alerts
An alert is an event in the organization's IT infrastructure that was marked by Open Single Management Platform as unusual or suspicious, and that may pose a threat to the security of the organization's IT infrastructure.
Open Single Management Platform generates an alert when an EPP application (for example, Kaspersky Endpoint Security for Windows) detects certain activity in the infrastructure that corresponds to conditions defined in the detection rules.
The alert is created within 30 seconds after the KUMA correlation event has occurred.
You can also create an alert manually from a set of events.
After detection, Open Single Management Platform adds alerts to the alert table as work items that are to be processed by analysts. You cannot delete alerts—you can only close them.
Alerts can be assigned only to analysts who have the access right to read and modify alerts and incidents.
You can manage alerts as work items by using the following alert properties:
You can combine and link alerts to bigger work items called incidents. You can link alerts to incidents manually, or enable the rules to create incidents and link alerts automatically. By using incidents, analysts can investigate multiple alerts as a single issue. When you link a currently unlinked alert to an incident, the alert loses its current status and gains the status In incident. You can link a currently linked alert to another incident. In this case, the In incident status of the alert is kept. You can link a maximum of 200 alerts to an incident.
Each alert has alert details that provide all of the information related to the alert. You can use this information to investigate the alert, track the events that preceded the alert, view detection artifacts, affected assets, or link the alert to an incident.
Alert data model
The structure of an alert is represented by fields that contain values (see the table below). Some fields are objects or arrays of objects with their own set of fields (for example, the Assignee
and Assets
fields).
Alert
Field |
Value type |
Is required |
Description |
|
String |
Yes |
Internal alert ID, in the UUID format. The field value may match the |
|
Integer |
Yes |
Short internal alert ID. |
|
String |
Yes |
ID of the tenant that the alert is associated with, in the UUID format. |
|
String |
Yes |
Date and time of the alert generation, in the RFC 3339 format. |
|
String |
Yes |
Date and time of the last alert change, in the RFC 3339 format. |
|
String |
No |
Date and time of the last alert status change, in the RFC 3339 format. |
|
String |
Yes |
Severity of the alert. Possible values:
|
|
String |
Yes |
ID of the Kaspersky application management plug-in that is integrated in OSMP. |
|
String |
Yes |
Version of the Kaspersky application management plug-in that is integrated in OSMP. |
|
String |
No |
Unique alert identifier in the integrated component. |
|
String |
No |
Date and time of the alert generation in the integrated component, in the RFC 3339 format. |
|
String |
Yes |
Date and time of the first telemetry event related to the alert, in the RFC 3339 format. |
|
String |
Yes |
Date and time of the last telemetry event related to the alert, in the RFC 3339 format. |
|
String |
No |
Component that detects and generates the alert. |
|
Array of strings |
No |
Triggered detection technology. |
|
String |
Yes |
Alert status. Possible values:
|
|
String |
No |
Resolution of the alert status. Possible values:
|
|
String |
No |
Internal ID of the incident associated with the alert. |
|
String |
No |
Way to add an alert to an incident. Possible values:
|
|
|
No |
Operator to whom the alert is assigned. |
|
Array of |
No |
MITRE tactics related to all triggered IOA rules in the alert. |
|
Array of |
No |
MITRE techniques related to all triggered IOA rules in the alert. |
|
Array of |
No |
Observables related to the alert. |
|
Array of |
No |
Assets affected by the alert. |
|
Array of |
No |
Triggered correlation rules, on the basis of which the alert is generated. |
|
Array of objects |
No |
Events, on the basis of which the alert is generated. |
|
String |
Yes |
Link to an entity in an external system (for example, a link to a Jira ticket). |
|
Object |
No |
Data related to the alert, in the JSON format. This data is obtained from managed Kaspersky applications when events are transformed into alerts. This field is not used in the interface. |
|
Object |
No |
Additional information about the alert, in the JSON format. This information can be filled in by a user or a playbook. |
|
String |
Yes |
Alert name. |
|
Array of |
No |
Attachments related to the incident. |
Assignee
Field |
Value type |
Is required |
Description |
|
String |
Yes |
User account ID of the operator to whom the alert is assigned. |
|
String |
Yes |
Name of the operator to whom the alert is assigned. |
MITRETactic
Field |
Value type |
Is required |
Description |
|
String |
Yes |
ID of the MITRE tactic related to all triggered IOA rules in the alert. |
|
String |
Yes |
Name of the MITRE tactic related to all triggered IOA rules in the alert. |
MITRETechnique
Field |
Value type |
Is required |
Description |
|
String |
Yes |
ID of the MITRE technique related to all triggered IOA rules in the alert. |
|
String |
Yes |
Name of the MITRE technique related to all triggered IOA rules in the alert. |
Observable
Field |
Value type |
Is required |
Description |
|
String |
Yes |
Type of the observable object. Possible values:
|
|
String |
Yes |
Value of the observable object. |
|
String |
No |
Additional information about the observable object. |
Rule
Field |
Value type |
Is required |
Description |
|
String |
Yes |
ID of the triggered rule. |
|
String |
No |
Name of the triggered rule. |
|
String |
No |
Severity of the triggered rule. Possible values:
|
|
String |
No |
Confidence level of the triggered rule. Possible values:
|
|
Boolean |
No |
Indicator that the alert is based on custom rules. |
Asset
Field |
Value type |
Is required |
Description |
|
String |
Yes |
Type of the affected asset (a device or an account). Possible values:
|
|
String |
Yes |
ID of the affected asset (a device or an account). |
|
String |
No |
The name of the affected device that the alert is associated with (if The user name of the affected user account associated with events, on the basis of which the alert is generated (if |
|
Boolean |
No |
Indicator that the affected asset (a device or an account) is an attacker. |
|
Boolean |
No |
Indicator that the affected asset (a device or an account) is a victim. |
UnkeyedAttachment
Field |
Value type |
Is required |
Description |
|
String |
Yes |
Attachment ID, in the UUID format. |
|
String |
Yes |
Attachment name. |
|
String |
Yes |
Date and time of the attachment creation, in the UTC format. |
|
String |
Yes |
Date and time of the last attachment change, in the UTC format. |
|
String |
Yes |
Indicator that the affected asset (a device or an account) is a victim. |
|
Integer |
Yes |
Attachment size, specified in bytes. |
|
String |
Yes |
Attachment status that indicates whether the attachment upload is in progress, completed, or aborted with an error. Possible values:
|
|
String |
No |
Attachment description. |
|
String |
No |
Text of the status that is displayed to a user (for example, an error message that is displayed when the attachment upload fails). |
Viewing the alert table
The alert table provides you with an overview of all alerts registered by Open Single Management Platform.
To view the alert table:
- In the main menu, go to Monitoring & reporting → Alerts.
- If necessary, apply the tenant filter. By default, the tenant filter is disabled and the alert table displays the alerts related to all of the tenants to which you have access rights. To apply the tenant filter:
- Click the link next to the Tenant filter setting.
The tenant filter opens.
- Select the check boxes next to the required tenants.
The alert table displays only the alerts detected on the selected tenants.
- Click the link next to the Tenant filter setting.
The alert table is displayed.
The alert table has the following columns:
- Alert ID. The unique identifier of an alert.
- Registered. The date and time when the alert was added to the alert table.
- Updated. The date and time of the last change from the alert history.
- Status. The current status of the alert.
- Analyst. The current assignee of the alert.
- Tenant. The name of the tenant in which the alert was detected.
- Technology. The technology that detected the alert.
- Rules. The IOC or IOA rules that were triggered to detect the alert.
- Affected assets. The devices and users that were affected by the alert.
- Observables. Detection artifacts, for example IP addresses or MD5 hashes of files.
- Incident link type. Way to add an alert to an incident.
- Severity. Severity of the alert.
- Status changed. The date and time of the last alert status change.
Viewing alert details
Alert details are a page in the interface that contains all of the information related to the alert, including the alert properties.
To view alert details:
- In the main menu, go to Monitoring & reporting → Alerts.
- In the alert table, click the ID of the required alert.
The alert details are displayed.
If necessary, you can refresh the information in the alert details by clicking the refresh () icon next to the alert name.
The toolbar in the upper part of the alert details allows you to perform the following actions:
- Edit the External reference field value
- Assign the alert to an analyst
- Change the alert status
- Link the alert to an incident
- Unlink the alert from the incident
- Select a playbook
- Create a new incident and link the alert to it
Alert details contain the following sections:
Assigning alerts to analysts
As a work item, an alert can be assigned to an SOC analyst for inspection and possible investigation. You can change the assignee of an active alert at any time. You cannot change an assignee of a closed alert.
Alerts can be assigned only to analysts who have the access right to read and modify alerts and incidents.
To assign one or several alerts to an analyst:
- In the main menu, go to Monitoring & reporting → Alerts.
- Select the check boxes next to the alerts that you want to assign to an analyst.
You must select only the alerts detected in the same tenant. Otherwise, the Assign to button will be disabled.
Alternatively, you can assign an alert to an analyst from the alert details. To open the alert details, click the link with the alert ID you need.
- Click the Assign to button.
- In the Assign to analyst window that opens, start typing the analyst's name or email address, and then select the analyst from the list.
You can also select the Not assigned option for all alerts, except alerts with the Closed status.
- Click the Assign button.
The alerts are assigned to the analyst.
You also can assign an alert to an analyst by using playbooks.
Changing an alert status
As a work item, an alert has a status that shows the current state of the alert in its life cycle.
You can change alert statuses for your own alerts or the alerts of other analysts only if you have the access right to read and modify alerts and incidents.
If the alert status is changed manually, playbooks will not launch automatically. You can launch a playbook for such an alert manually.
An alert can have one of the following statuses:
To change the status of one or several alerts:
- In the main menu, go to Monitoring & reporting → Alerts.
- Do one of the following:
- Select the check boxes next to the alerts whose status you want to change.
- Click the link with the ID of the alert whose status you want to change.
The Alert details window opens.
- Click the Change status button.
- In the Change status pane, select the status to set.
If you select the Closed status, you must select a resolution.
If you change the alert status to Closed and this alert contains uncompleted playbooks or response actions, all related playbooks and response actions will be terminated.
- Click the Save button.
The status of the selected alerts is changed.
If an alert is added to the investigation graph, you can also change the alert status through the graph.
You also can change the alert status by using playbooks.
Creating alerts manually
You can create an alert manually from a set of events. You can use this functionality to examine a hypothetical incident that has not been detected automatically.
If the alert is created manually, playbooks will not launch automatically. You can launch a playbook for such an alert manually.
To create an alert manually:
- In the main menu, go to Monitoring & reporting → Threat hunting.
- Select the events for which you want to create an alert. The events should belong to the same tenant.
- Click the Create alert button.
A window shows up that displays the created alert. The Severity field value corresponds to the maximum severity among the selected events.
Manually created alerts have a blank Rules value in the Monitoring & reporting → Alerts table.
Page topLinking alerts to incidents
You can link one or multiple alerts to an incident for the following reasons:
- Multiple alerts may be interpreted as indicators of the same issue in an organization's IT infrastructure. If this is the case, the alerts in the incident can be investigated as a single issue. You can link up to 200 alerts to an incident.
- A single alert may be linked to an incident if the alert is defined as true positive.
You can link an alert to an incident if the alert has any status other than Closed. When linked to an incident, an alert loses its current status and gains the special status In incident. If you link alerts that are currently linked to other incidents, the alerts are unlinked from the current incidents, because an alert can be linked to only one incident.
Alerts can only be linked to an incident that belongs to the same tenant.
Alerts can be linked to an incident manually or automatically.
Linking alerts manually
To link alerts to an existing or new incident:
- In the main menu, go to Monitoring & reporting → Alerts.
- Select the check boxes next to the alerts that you want to link to an incident.
- If you want to link alerts to an existing incident:
- Click the Link to incident button.
- Select an incident to link the alerts to.
Alternatively, click an alert to display its details and click the Link to incident button in the toolbar at the top.
- If you want to link alerts to a new incident:
- Click the Create incident button.
- Fill in the properties of the new incident: name, assignee, priority, and description.
Alternatively, click an alert to display its details and click the Create incident button in the toolbar at the top.
- Click the Save button.
The selected alerts are linked to an existing or new incident.
Linking alerts automatically
If you want alerts to automatically link to an incident, you have to configure segmentation rules.
Unlinking alerts from incidents
You might need to unlink an alert from an incident, for example, if the alert analysis and investigation showed that the alert is not connected to other alerts in the incident. When you unlink an alert from an incident, Open Single Management Platform performs the following actions:
- Refreshes all of the data related to the incident, to reflect that the alert no longer belongs to the incident. For example, you can view the changes in the incident details.
- Resets the status of the unlinked alerts to New.
To unlink an alert from an incident:
- Open the alert details.
- Click the Unlink from incident button in the toolbar at the top.
The Unlink alerts window opens.
- If you want to change the assignee, select Assign the alerts to, and then specify the new assignee.
- If you want to add a comment, specify it in the Comment section. The comment you specify will be displayed in the Details column in the History section.
The selected alerts are unlinked from the incident.
Linking events to alerts
If during the investigation you found an event that is related to the alert being investigated, you can link this event to the alert manually.
You can link an event to an alert that has any status other than Closed.
To link an event to an alert:
- In the main menu, go to Monitoring & reporting → Alerts.
- In the list of alerts, click the link with the ID of the alert to which you want to link the event.
The Alert details window opens.
- Go to the Details section, and then click the Find in Threat hunting button.
The Threat hunting section opens. By default, the event table contains events related to the selected alert.
The event table contains only events related to tenants that you have access to.
- In the upper part of the window, open the first drop-down list, and then select Storage.
- Open the third drop-down list, and then specify the time range.
You can select predefined ranges relative to the current date and time, specify a custom range by using the Range start and Range end fields, or by selecting dates in the calendar.
- Click the Run query button.
- In the updated list of events, select an event that you want to link to the alert, and then click Link to alert.
The selected events are linked to the alert.
Page topUnlinking events from alerts
You might need to unlink an event from an alert, for example, if the alert analysis and investigation showed that the event is not connected to the alert.
To unlink an event from an alert:
- In the main menu, go to Monitoring & reporting → Alerts.
- In the list of alerts, click the link with the ID of the alert from which you want to unlink the event.
The Alert details window opens.
- In the Details section, select the events that you want to unlink, and then click the Unlink from alert button.
The selected event are unlinked from the alert.
Page topEditing alerts by using playbooks
Kaspersky Next XDR Expert allows you to edit incidents manually or by using playbooks. When creating a playbook, you can configure the playbook algorithm to edit the alert properties.
To edit an alert by using a playbook, you must have one of the following XDR roles: Main administrator, SOC administrator, Tier 1 analyst, Tier 2 analyst, or Tenant administrator.
You cannot edit alerts that have the Closed status.
You can edit the following alerts properties by using the playbook:
- Assignee
- Alert status
- Comment
- ExternalReference attribute
- Additional data attribute
Examples of the expressions that you can use in the playbook algorithm to edit the alert properties:
- Assigning an alert to a user
- Unassigning an alert from a user
- Changing the alert status
- Adding a comment to an alert
- Editing the ExternalReference attribute
- Editing the Additional data attribute
Working with alerts on the investigation graph
On the investigation graph, you can perform the following actions with alerts:
- Add an alert to the graph.
- Hide an alert from the graph.
- View an alert details by selecting the corresponding item from the context menu of the alert node.
- Change an alert status.
- View events related to an alert.
- View assets related to an alert.
- View observables related to an alert.
Adding alerts to the investigation graph
You can add an alert to the investigation graph in one of the of the following ways:
- From the general table of alerts that opens when you click the Add alert button on the investigation graph. You have to select the check boxes next to the alerts that you want to be displayed on the investigation graph, and then click the Show on graph button.
- From the table of similar alerts.
To add an alert to the investigation graph from the table of similar alerts:
- Do one of the following:
- If on the investigation graph you have an asset, observable, or segmentation rule, click its node, and then in the context menu, click Find similar alerts.
- If on the investigation graph you have an event, click its node, and then in the context menu, click View details. In the window that opens, click the Show on graph button.
- If on the investigation graph you have an alert, click its node, and in the context menu, click Events. In the table of events, click the event whose details you want to open. If the event details contain an observable, asset, or segmentation rule, click the link in the corresponding field, and then in the context menu, click Find similar alerts.
- On the investigation graph, click the Threat hunting button, and then in the general table of events, click the event whose details you want to open. If the event details contain an observable, asset, or segmentation rule, click the link in the corresponding field, and then in the context menu, click Find similar alerts.
The table of similar alerts is displayed.
- Select the check boxes next to the alerts that you want to be displayed on the investigation graph, and then click the Show on graph button.
The selected alerts are added to the investigation graph.
Hiding alerts from the investigation graph
You can hide an alert from the investigation graph in one of the following ways:
- By clicking the alert node and selecting Hide in the context menu.
- Through the table of alerts.
To hide an alert from the graph through the table of alerts:
- Do one of the following:
- In the toolbar at the top of the investigation graph, click the Add alert button.
- If you have observables, assets, or events nodes displayed on the graph, click the node for which you want to add an alert, and then in the context menu, select Find similar alerts.
The table of alerts is displayed.
- Select the check boxes next to the alerts that you want to hide from the investigation graph, and then click the Show on graph button.
The selected alerts and their links will be hidden from the investigation graph. The related nodes remain on the investigation graph.
Changing an alert status
To change an alert status:
- Click the alert node, and in the context menu, select Change status.
- In the Change status pane that opens, select the status, and then click Save.
If you select the Closed status, you must select a resolution.
The status of the selected alerts is changed.
Viewing the events related to an alert
To view events related to an alert, do one of the following:
- Click the digit next to the alert node for which you want to display the events. The digit shows the number of events related to the alert.
- Click the alert node for which you want to display the events, and then in the context menu, click Events.
If you want to add the events from the table to the investigation graph, select the check boxes next to the events, and then click the Show on graph button.
If you want to hide the events from the investigation graph, select the check boxes next to the events, and then click the Hide on graph button.
Viewing assets related to an alert
To view assets related to an alert, click the alert node.
In the context menu, the digits next to the Devices and Users items show the number of devices and users related to the alert.
If you want to add devices or users to the investigation graph, click the corresponding menu item.
Viewing observables related to an alert
To view observables related to an alert, click the alert node, and in the context menu, click Events.
In the menu that opens, the digits next to the items show the number of observables relate related to the alert.
If you want to add an observable (for example, Hash, Domain, IP address) to the investigation graph, click the corresponding menu item.
Page topAggregation rules
You can use aggregation rules to combine correlation events into alerts. We recommend that you use segmentation rules together with aggregation rules to define more precise rules for creating incidents.
The default Kaspersky Next XDR Expert behavior is to combine events that have the same rule identifier with the following limitations:
- By time, within 30 seconds
- By the number of events, 100
- By the number of assets, 100
- By the number of observables, 200
- By total size of events, 4 MB
You can use REST API to customize aggregation rules.
Aggregation rules. Example
The table below illustrates how to perform penetration testing with predetermined IP and user accounts.
Rule 1. Penetration testing by IP
Attribute |
Value |
Description |
Priority |
0 |
Highest priority. |
Trigger |
any(.Observables[]? | select(.Type == "ip") | .Value; . == "10.10.10.10" or . == "10.20.20.20") |
Triggers if an alert includes an IP observable with any of the following values:
|
Aggregation ID |
"Pentest" |
Specifies the identifier by which to combine events in an alert. |
Alert Name |
"[Pentest] " + ([.Rules[]?.Name] | join(",")) |
Adds the "[Pentest]" tag and the rule name to the alert name. The rule name is from the first aggregated alert, subsequent alerts do not affect the resulting alert name even if they were created by a different rule. |
Aggregation Interval |
30 seconds |
|
Rule 2. Penetration testing by user account
Attribute |
Value |
Description |
Priority |
1 |
|
Trigger |
any(.Observables[]? | select(.Type | ascii_downcase == "username") | .Value; . == "Pentester-1" or . == "Pentester-2") |
Triggers if an alert includes a username observable with any of the following values:
|
Aggregation ID |
"Pentest" |
Specifies the identifier by which to combine events in an alert. |
Alert Name |
"[Pentest] " + ([.Rules[]?.Name] | join(",")) |
Adds the "[Pentest]" tag and the rule name to the alert name. The rule name is from the first aggregated event, subsequently aggregated events do not affect the resulting alert name. |
Aggregation Interval |
30 seconds |
|
Rule 3. Aggregation rule
Attribute |
Value |
Description |
Priority |
2 |
|
Trigger |
.Rules | length > 0 |
Triggers if the rule list is not empty. |
Aggregation ID |
([.Rules[].ID // empty] | sort | join(";")) |
Combines rule identifiers. |
Alert Name |
([.Rules[]?.Name // empty] | sort | join(",")) + " " + (.SourceCreatedAt) |
Combines rule names and adds the alert creation date. |
Aggregation Interval |
30 seconds |
|
Aggregation and segmentation rules. Example
The table below illustrates how to combine alerts that have the same rule id in two incidents based on the user name prefix.
Aggregation rule
Attribute |
Value |
Description |
Trigger |
any(.Rules[]?; .ID == "123") |
Searches alerts with the rule id set to "123". |
Aggregation ID |
if any(.OriginalEvents[]?.BaseEvents[]?.DestinationUserName // empty; startswith("adm_")) then "rule123_DestinationUserName_adm" else "rule123_DestinationUserName_not_adm" end |
Searches for user names with the "adm_" prefix. |
Alert Name |
if any(.OriginalEvents[]?.BaseEvents[]?.DestinationUserName // empty; startswith("adm_")) then "Rule123 admin" else "Rule123 not admin" end |
Sets the alert name depending on the user name prefix. |
Segmentation rule
Attribute |
Value |
Trigger |
.AggregationID | startswith("rule123_DestinationUserName") |
Groups |
[.AggregationID] |
Incident Name |
.Name |