Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
93 changes: 93 additions & 0 deletions docs/detections/value-list-exceptions.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
[[value-lists-exceptions]]
== Create and manage value lists

Value lists hold multiple values of the same Elasticsearch data type, such as IP addresses, which are used to determine when an exception prevents an alert from being generated. You can use value lists to define exceptions for detection rules; however, you cannot use value lists to define endpoint rule exceptions.

Value lists are lists of items with the same {es} {ref}/mapping-types.html[data type]. You can create value lists with these types:

* `Keywords` (many {ecs-ref}/ecs-field-reference.html[ECS fields] are keywords)
* `IP Addresses`
* `IP Ranges`
* `Text`

After creating value lists, you can use `is in list` and `is not in list` operators to <<add-exceptions,define exceptions>>.

TIP: You can also use a value list as the <<indicator-value-lists,indicator match index>> when creating an indicator match rule.

[float]
[[create-value-lists]]
=== Create value lists
When you create a value list for a rule exception, be mindful of the list's size and data type. All rule types support value list exceptions, but extremely large lists or certain data types have limitations.

Custom query, machine learning, and indicator match rules support the following value list types and sizes:

* **Keywords** or **IP addresses** list types with more than 65,536 values
* **IP ranges** list type with over 200 dash notation values (for example, `127.0.0.1-127.0.0.4` is one value) or more than 65,536 CIDR notation values

To create a value list:

. Prepare a `txt` or `csv` file with all the values you want to use for
determining exceptions from a single list. If you use a `txt` file, new lines
act as delimiters.
+
[IMPORTANT]
=========================
* All values in the file must be of the same {es} type.

* Wildcards are not supported in value lists. Values must be literal values.

* The maximum accepted file size is 9 million bytes.
=========================

. Go to *Rules* -> *Detection rules (SIEM)*.
. Click *Manage value lists*. The *Manage value lists* window opens.
+
[role="screenshot"]
image::images/upload-lists-ui.png[Manage value lists flyout,75%]

. Select the list type (*Keywords*, *IP addresses*, *IP ranges*, or *Text*) from the *Type of value list* drop-down.
. Drag or select the `csv` or `txt` file that contains the values.
. Click *Import value list*.

NOTE: If you import a file with a name that already exists, a new list is not created. The imported values are added to the existing list instead.

[[manage-value-lists]]
[discrete]
=== Manage value lists

You can edit, remove, or export existing value lists.

[[edit-value-lists]]
[discrete]
==== Edit value lists

. Go to **Rules** → **Detection rules (SIEM)**.
. Click **Manage value lists**. The **Manage value lists** window opens.
. In the **Value lists** table, click the value list you want to edit.
. Do any of the following:

** **Filter items in the list**: Use the KQL search bar to find values in the list. Depending on your list's type, you can filter by the `keyword`, `ip_range`, `ip`, or `text` fields. For example, to filter by Gmail addresses in a value list of the `keyword` type, enter `keyword:*gmail.com` into the search bar.
+
You can also filter by the `updated_by` field (for example, `updated_by:testuser`), or the `updated at` field (for example, `updated_at < now`).
** **Add individual items to the list**: Click **Create list item**, enter a value, then click **Add list item**.
** **Bulk upload list items**: Drag or select the `csv` or `txt` file that contains the values that you want to add, then click **Upload**.
** **Edit a value**: In the Value column, go to the value you want to edit and click the **Edit** button (image:images/edit-value-list-item.png[Edit button from Manage value lists window,15,15]). When you're done editing, click the **Save** button (image:images/save-value-list-item-changes.png[Save button from Manage value lists window,18,18]) to save your changes. Click the **Cancel** button (image:images/cancel-value-list-item-changes.png[Cancel button from Manage value lists window,18,18]) to revert your changes.
** **Remove a value**: Click the **Remove value** button (image:images/remove-value-list-item.png[Remove value list button from Manage value lists window,15,15]) to delete a value from the list.

[role="screenshot"]
image::images/edit-value-lists.png[Manage items in a value lists,75%]

TIP: You can also edit value lists while creating and managing exceptions that use value lists.

[[export-remove-value-lists]]
[discrete]
==== Export or remove value lists

. Go to *Rules* -> *Detection rules (SIEM)*.
. Click *Manage value lists*. The *Manage value lists* window opens.
. From the *Value lists* table, you can:
.. Click the **Export value list** button (image:images/export-value-list.png[Export button from Manage value lists window,15,15]) to export the value list.
.. Click the **Remove value list** button (image:images/remove-value-list.png[Remove button from Manage value lists window,15,15]) to delete the value list.
+
[role="screenshot"]
image::images/manage-value-list.png[Import value list flyout with action buttons highlighted,75%]