Skip to content

Commit

Permalink
Asset criticality advanced setting removed (#5991)
Browse files Browse the repository at this point in the history
(cherry picked from commit 2390859)

# Conflicts:
#	docs/advanced-entity-analytics/api/asset-criticality-api-overview.asciidoc
#	docs/serverless/advanced-entity-analytics/asset-criticality.mdx
#	docs/serverless/advanced-entity-analytics/entity-risk-scoring.mdx
#	docs/serverless/advanced-entity-analytics/ers-req.mdx
#	docs/serverless/explore/hosts-overview.mdx
#	docs/serverless/explore/users-page.mdx
#	docs/serverless/settings/advanced-settings.mdx
  • Loading branch information
natasha-moore-elastic authored and mergify[bot] committed Oct 30, 2024
1 parent 0ee2d99 commit 92cc945
Show file tree
Hide file tree
Showing 13 changed files with 752 additions and 33 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,14 @@
[role="xpack"]
== Asset criticality API

You can manage <<asset-criticality, asset criticality>> records through the API. To use this API, you must first turn on the `securitySolution:enableAssetCriticality` <<enable-asset-criticality, advanced setting>>.
<<<<<<< HEAD
You can manage <<asset-criticality, asset criticality>> records through the API. To use this API, you must first turn on the `securitySolution:enableAssetCriticality` <<enable-asset-criticality, advanced setting>>.
=======
.New API Reference
[sidebar]
--
For the most up-to-date API details, refer to {api-kibana}/group/endpoint-security-entity-analytics-api[Entity Analytics APIs].
--
You can manage <<asset-criticality, asset criticality>> records through the API.
>>>>>>> 2390859c (Asset criticality advanced setting removed (#5991))
7 changes: 1 addition & 6 deletions docs/advanced-entity-analytics/asset-criticality.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,7 @@
.Requirements
[sidebar]
--
To view and assign asset criticality, you must:

* Have the appropriate user role.
* Turn on the `securitySolution:enableAssetCriticality` <<enable-asset-criticality, advanced setting>>.

For more information, refer to <<ers-requirements, Entity risk scoring prerequisites>>.
To view and assign asset criticality, you must have the appropriate user role. For more information, refer to <<ers-requirements, Entity risk scoring prerequisites>>.
--

The asset criticality feature allows you to classify your organization's entities based on various operational factors that are important to your organization. Through this classification, you can improve your threat detection capabilities by focusing your alert triage, threat-hunting, and investigation activities on high-impact entities.
Expand Down
6 changes: 1 addition & 5 deletions docs/advanced-entity-analytics/entity-risk-scoring.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,7 @@ Entity risk scores are determined by the following risk inputs:

The resulting entity risk scores are stored in the `risk-score.risk-score-<space-id>` data stream alias.

[NOTE]
======
* Entities without any alerts, or with only `Closed` alerts, are not assigned a risk score.
* To use asset criticality, you must enable the `securitySolution:enableAssetCriticality` <<enable-asset-criticality, advanced setting>>.
======
NOTE: Entities without any alerts, or with only `Closed` alerts, are not assigned a risk score.

[discrete]
[[how-is-risk-score-calculated]]
Expand Down
2 changes: 0 additions & 2 deletions docs/advanced-entity-analytics/ers-req.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,6 @@ The risk scoring engine uses an internal user role to score all hosts and users,
[discrete]
== Asset criticality

To use the asset criticality feature, turn on the `securitySolution:enableAssetCriticality` <<enable-asset-criticality, advanced setting>>.

[discrete]
=== Privileges

Expand Down
5 changes: 0 additions & 5 deletions docs/getting-started/advanced-setting.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -102,11 +102,6 @@ Security *Overview* page.
* `securitySolution:newsFeedUrl`: The URL from which the security news feed content is
retrieved.

[discrete]
[[enable-asset-criticality]]
== Enable asset criticality workflows
The `securitySolution:enableAssetCriticality` setting determines whether asset criticality is included as a risk input to entity risk scoring. This setting is turned off by default. Turn it on to enable asset criticality workflows and to use asset criticality as part of entity risk scoring.

[discrete]
[[exclude-cold-frozen-tiers]]
== Exclude cold and frozen tier data from analyzer queries
Expand Down
8 changes: 1 addition & 7 deletions docs/getting-started/users-page.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ A user's details page displays all relevant information for the selected user. T

The user details page includes the following sections:

* **Asset Criticality**: If the `securitySolution:enableAssetCriticality` <<enable-asset-criticality, advanced setting>> is on, this section displays the user's current <<asset-criticality, asset criticality level>>.
* **Asset Criticality**: This section displays the user's current <<asset-criticality, asset criticality level>>.

* *Summary*: Details such as the user ID, when the user was first and last seen, the associated IP address(es), and operating system. If the user risk score feature is enabled, this section also displays user risk score data.

Expand Down Expand Up @@ -99,12 +99,6 @@ image::images/users/user-risk-inputs.png[User risk inputs]
[[user-asset-criticality-section]]
=== Asset Criticality

.Requirements
[sidebar]
--
The **Asset Criticality** section is only available if the `securitySolution:enableAssetCriticality` <<enable-asset-criticality, advanced setting>> is on.
--

The **Asset Criticality** section displays the selected user's <<asset-criticality, asset criticality level>>. Asset criticality contributes to the overall <<entity-risk-scoring, user risk score>>. The criticality level defines how impactful the user is when calculating the risk score.

[role="screenshot"]
Expand Down
8 changes: 1 addition & 7 deletions docs/management/hosts/hosts-overview.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ A host's details page displays all relevant information for the selected host. T

The host details page includes the following sections:

* **Asset Criticality**: If the `securitySolution:enableAssetCriticality` <<enable-asset-criticality, advanced setting>> is on, this section displays the host's current <<asset-criticality, asset criticality level>>.
* **Asset Criticality**: This section displays the host's current <<asset-criticality, asset criticality level>>.
* *Summary*: Details such as the host ID, when the host was first and last seen, the associated IP addresses, and associated operating system. If the host risk score feature is enabled, this section also displays host risk score data.
* *Alert metrics*: The total number of alerts by severity, rule, and status (`Open`, `Acknowledged`, or `Closed`).
* *Data tables*: The same data tables as on the main Hosts page, except with values for the selected host instead of all hosts.
Expand Down Expand Up @@ -102,12 +102,6 @@ image::images/host-risk-inputs.png[Host risk inputs]
[[host-asset-criticality-section]]
=== Asset Criticality

.Requirements
[sidebar]
--
The **Asset Criticality** section is only available if the `securitySolution:enableAssetCriticality` <<enable-asset-criticality, advanced setting>> is on.
--

The **Asset Criticality** section displays the selected host's <<asset-criticality, asset criticality level>>. Asset criticality contributes to the overall <<entity-risk-scoring, host risk score>>. The criticality level defines how impactful the host is when calculating the risk score.

[role="screenshot"]
Expand Down
111 changes: 111 additions & 0 deletions docs/serverless/advanced-entity-analytics/asset-criticality.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
---
slug: /serverless/security/asset-criticality
title: Asset criticality
description: Learn how to use asset criticality to improve your security operations.
tags: [ 'serverless', 'security', 'overview', 'analyze' ]
status: in review
---

<DocBadge template="technical preview" />

<DocCallOut title="Requirements">
To view and assign asset criticality, you must have the appropriate user role. For more information, refer to <DocLink slug="/serverless/security/ers-requirements">Entity risk scoring prerequisites</DocLink>.
</DocCallOut>

The asset criticality feature allows you to classify your organization's entities based on various operational factors that are important to your organization. Through this classification, you can improve your threat detection capabilities by focusing your alert triage, threat-hunting, and investigation activities on high-impact entities.

You can assign one of the following asset criticality levels to your entities, based on their impact:

* Low impact
* Medium impact
* High impact
* Extreme impact

For example, you can assign **Extreme impact** to business-critical entities, or **Low impact** to entities that pose minimal risk to your security posture.

## View and assign asset criticality

Entities do not have a default asset criticality level. You can either assign asset criticality to your entities individually, or <DocLink slug="/serverless/security/asset-criticality" section="bulk-assign-asset-criticality">bulk assign</DocLink> it to multiple entities by importing a text file.

When you assign, change, or unassign an individual entity's asset criticality level, that entity's risk score is immediately recalculated.

<DocCallOut title="Note">
If you assign asset criticality using the file import feature, risk scores are **not** immediately recalculated. However, you can trigger an immediate recalculation by clicking **Recalculate entity risk scores now**. Otherwise, the newly assigned or updated asset criticality levels will be factored in during the next hourly risk scoring calculation.
</DocCallOut>

You can view, assign, change, or unassign asset criticality from the following places in the ((elastic-sec)) app:

* The <DocLink slug="/serverless/security/hosts-overview" section="host-details-page">host details page</DocLink> and <DocLink slug="/serverless/security/users-page" section="user-details-page">user details page</DocLink>:

![Assign asset criticality from the host details page](../images/asset-criticality/-assign-asset-criticality-host-details.png)

* The <DocLink slug="/serverless/security/hosts-overview" section="host-details-flyout">host details flyout</DocLink> and <DocLink slug="/serverless/security/users-page" section="user-details-flyout">user details flyout</DocLink>:

![Assign asset criticality from the host details flyout](../images/asset-criticality/-assign-asset-criticality-host-flyout.png)

* The host details flyout and user details flyout in <DocLink slug="/serverless/security/timelines-ui">Timeline</DocLink>:

![Assign asset criticality from the host details flyout in Timeline](../images/asset-criticality/-assign-asset-criticality-timeline.png)

### Bulk assign asset criticality

You can bulk assign asset criticality to multiple entities by importing a CSV, TXT or TSV file from your asset management tools.

The file must contain three columns, with each entity record listed on a separate row:

1. The first column should indicate whether the entity is a `host` or a `user`.
1. The second column should specify the entity's `host.name` or `user.name`.
1. The third column should specify one of the following asset criticality levels:
* `extreme_impact`
* `high_impact`
* `medium_impact`
* `low_impact`

The maximum file size is 1 MB.

File structure example:

```
user,user-001,low_impact
user,user-002,medium_impact
host,host-001,extreme_impact
````
To import a file:
1. Go to **Project Settings** → **Stack Management** → **Entity Store**.
1. Select or drag and drop the file you want to import.
<DocCallOut title="Note">
The file validation step highlights any lines that don't follow the required file structure. The asset criticality levels for those entities won't be assigned. We recommend that you fix any invalid lines and re-upload the file.
</DocCallOut>
1. Click **Assign**.
This process overwrites any previously assigned asset criticality levels for the entities included in the imported file. The newly assigned or updated asset criticality levels are immediately visible within all asset criticality workflows.
You can trigger an immediate recalculation of entity risk scores by clicking **Recalculate entity risk scores now**. Otherwise, the newly assigned or updated asset criticality levels will be factored in during the next hourly risk scoring calculation.
## Improve your security operations
With asset criticality, you can improve your security operations by:
* <DocLink slug="/serverless/security/asset-criticality" section="prioritize-open-alerts">Prioritizing open alerts</DocLink>
* <DocLink slug="/serverless/security/asset-criticality" section="monitor-an-entitys-risk">Monitoring an entity's risk</DocLink>
### Prioritize open alerts
You can use asset criticality as a prioritization factor when triaging alerts and conducting investigations and response activities.
Once you assign a criticality level to an entity, all subsequent alerts related to that entity are enriched with its criticality level. This additional context allows you to <DocLink slug="/serverless/security/analyze-risk-score-data" section="triage-alerts-associated-with-high-risk-or-business-critical-entities">prioritize alerts associated with business-critical entities</DocLink>.
### Monitor an entity's risk
The risk scoring engine dynamically factors in an entity's asset criticality, along with `Open` and `Acknowledged` detection alerts to <DocLink slug="/serverless/security/entity-risk-scoring" section="how-is-risk-score-calculated">calculate the entity's overall risk score</DocLink>. This dynamic risk scoring allows you to monitor changes in the risk profiles of your most sensitive entities, and quickly escalate high-risk threats.
To view the impact of asset criticality on an entity's risk score, follow these steps:
1. Open the <DocLink slug="/serverless/security/hosts-overview" section="host-details-flyout">host details flyout</DocLink> or <DocLink slug="/serverless/security/users-page" section="user-details-flyout">user details flyout</DocLink>. The risk summary section shows asset criticality's contribution to the overall risk score.
1. Click **View risk contributions** to open the flyout's left panel.
1. In the **Risk contributions** section, verify the entity's criticality level from the time the alert was generated.
![View asset criticality impact on host risk score](../images/asset-criticality/-asset-criticality-impact.png)
114 changes: 114 additions & 0 deletions docs/serverless/advanced-entity-analytics/entity-risk-scoring.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
---
slug: /serverless/security/entity-risk-scoring
title: Entity risk scoring
description: Learn about the risk scoring engine and its features.
tags: [ 'serverless', 'security', 'overview', 'analyze' ]
status: in review
---

<DocBadge template="technical preview" />

Entity risk scoring is an advanced ((elastic-sec)) analytics feature that helps security analysts detect changes in an entity's risk posture, hunt for new threats, and prioritize incident response.

Entity risk scoring allows you to monitor risk score changes of hosts and users in your environment. When generating advanced scoring analytics, the risk scoring engine utilizes threats from its end-to-end XDR use cases, such as SIEM, cloud, and endpoint. It leverages the Elastic SIEM detection engine to generate host and user risk scores from the last 30 days.

It also generates risk scores on a recurring interval, and allows for easy onboarding and management. The engine is built to factor in risks from all ((elastic-sec)) use cases, and allows you to customize and control how and when risk is calculated.

## Risk scoring inputs

Entity risk scores are determined by the following risk inputs:

<DocTable columns={[
{
"title": "Risk input",
"width": "30%"
},
{
"title": "Storage location",
"width": "70%"
}
]}>
<DocRow>
<DocCell><DocLink slug="/serverless/security/alerts-manage">Alerts</DocLink></DocCell>
<DocCell>`.alerts-security.alerts-<space-id>` index alias</DocCell>
</DocRow>
<DocRow>
<DocCell><DocLink slug="/serverless/security/asset-criticality">Asset criticality level</DocLink></DocCell>
<DocCell>`.asset-criticality.asset-criticality-<space-id>` index alias</DocCell>
</DocRow>
</DocTable>

The resulting entity risk scores are stored in the `risk-score.risk-score-<space-id>` data stream alias.

<DocCallOut title="Note">

Entities without any alerts, or with only `Closed` alerts, are not assigned a risk score.

</DocCallOut>

## How is risk score calculated?

1. The risk scoring engine runs hourly to aggregate `Open` and `Acknowledged` alerts from the last 30 days. For each entity, the engine processes up to 10,000 alerts.

1. The engine groups alerts by `host.name` or `user.name`, and aggregates the individual alert risk scores (`kibana.alert.risk_score`) such that alerts with higher risk scores contribute more than alerts with lower risk scores. The resulting aggregated risk score is assigned to the **Alerts** category in the entity's <DocLink slug="/serverless/security/hosts-overview" section="host-risk-summary">risk summary</DocLink>.

1. The engine then verifies the entity's <DocLink slug="/serverless/security/asset-criticality">asset criticality level</DocLink>. If there is no asset criticality assigned, the entity risk score remains equal to the aggregated score from the **Alerts** category. If a criticality level is assigned, the engine updates the risk score based on the default risk weight for each criticality level. The asset criticality risk input is assigned to the **Asset Criticality** category in the entity's risk summary.

| Asset criticality level | Default risk weight |
|-------------------------|---------------------|
| Low impact | 0.5 |
| Medium impact | 1 |
| High impact | 1.5 |
| Extreme impact | 2 |

<DocCallOut title="Note">
Asset criticality levels and default risk weights are subject to change.
</DocCallOut>

1. Based on the two risk inputs, the risk scoring engine generates a single entity risk score of 0-100. It assigns a risk level by mapping the risk score to one of these levels:

| Risk level | Risk score |
| ------------- |---------------|
| Unknown | < 20 |
| Low | 20-40 |
| Moderate | 40-70 |
| High | 70-90 |
| Critical | > 90 |

<DocAccordion buttonContent="Click for a risk score calculation example">

This example shows how the risk scoring engine calculates the user risk score for `User_A`, whose asset criticality level is **Extreme impact**.

There are 5 open alerts associated with `User_A`:

* Alert 1 with alert risk score 21
* Alert 2 with alert risk score 45
* Alert 3 with alert risk score 21
* Alert 4 with alert risk score 70
* Alert 5 with alert risk score 21

---

To calculate the user risk score, the risk scoring engine:

1. Sorts the associated alerts in descending order of alert risk score:

* Alert 4 with alert risk score 70
* Alert 2 with alert risk score 45
* Alert 1 with alert risk score 21
* Alert 3 with alert risk score 21
* Alert 5 with alert risk score 21

1. Generates an aggregated risk score of 36.16, and assigns it to `User_A`'s **Alerts** risk category.

1. Looks up `User_A`'s asset criticality level, and identifies it as **Extreme impact**.

1. Generates a new risk input under the **Asset Criticality** risk category, with a risk contribution score of 16.95.

1. Increases the user risk score to 53.11, and assigns `User_A` a **Moderate** user risk level.

If `User_A` had no asset criticality level assigned, the user risk score would remain unchanged at 36.16.

</DocAccordion>

Learn how to <DocLink slug="/serverless/security/turn-on-risk-engine">turn on the risk scoring engine</DocLink>.
Loading

0 comments on commit 92cc945

Please sign in to comment.