-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[SEC-1639] Add impossible travel detection methods #13204
Conversation
Adds documentation for the new "impossible travel" detection method for log detection rules.
|
||
#### Location attribute | ||
|
||
The `location attribute` specifies which field holds the geographic information for a log. It cannot currently be changed and defaults to `@network.client.geoip`, which is the output of the [GeoIP parser][2] logs processor which enriches a log with location information based on the client's IP address. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It cannot currently be changed and defaults to
How about something like "The only supported value is @network.client.geoip
which is enriched by the [GeoIP parser][2]`?
|
||
### Time windows | ||
|
||
An `evaluation window` is specified to match when at least one of the cases matches true. This is a sliding window and evaluates in real-time. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I know this is the same phrasing as for the other rule types but matches true
seems off to me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Editorial review completed for docs
|
||
#### Location attribute | ||
|
||
The `location attribute` specifies which field holds the geographic information for a log. It cannot currently be changed and defaults to `@network.client.geoip`, which is the output of the [GeoIP parser][2] logs processor which enriches a log with location information based on the client's IP address. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The `location attribute` specifies which field holds the geographic information for a log. It cannot currently be changed and defaults to `@network.client.geoip`, which is the output of the [GeoIP parser][2] logs processor which enriches a log with location information based on the client's IP address. | |
The `location attribute` specifies which field holds the geographic information for a log. The only supported value is `@network.client.geoip`, which is enriched by the [GeoIP parser][2] to give a log location information based on the client's IP address. |
|
||
#### Baseline user locations | ||
|
||
Tick this checkbox if you'd like Datadog to learn regular access locations before triggering a signal. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tick this checkbox if you'd like Datadog to learn regular access locations before triggering a signal. | |
Click the checkbox if you'd like Datadog to learn regular access locations before triggering a signal. |
|
||
#### Baseline user locations | ||
|
||
Tick this checkbox if you'd like Datadog to learn regular access locations before triggering a signal. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tick this checkbox if you'd like Datadog to learn regular access locations before triggering a signal. | |
Click the checkbox if you'd like Datadog to learn regular access locations before triggering a signal. |
|
||
If selected, no signal will be triggered in the first 24 hours. In that time, Datadog learns the user's regular access locations. This can be helpful to reduce noise and infer VPN usage or credentialed API access. | ||
|
||
Leave the checkbox unticked to detect all impossible travel behavior. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Leave the checkbox unticked to detect all impossible travel behavior. | |
Do not click the checkbox if you want Datadog to detect all impossible travel behavior. |
|
||
### Time windows | ||
|
||
An `evaluation window` is specified to match when at least one of the cases matches true. This is a sliding window and evaluates in real-time. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
An `evaluation window` is specified to match when at least one of the cases matches true. This is a sliding window and evaluates in real-time. | |
An `evaluation window` is specified to match when at least one of the cases is true. This is a sliding window and evaluates in real-time. |
|
||
An `evaluation window` is specified to match when at least one of the cases matches true. This is a sliding window and evaluates in real-time. | ||
|
||
Once a signal is generated, the signal will remain “open” if a case is matched at least once within this `keep alive` window. Each time a new event matches any of the cases, the *last updated* timestamp is updated for the signal. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Once a signal is generated, the signal will remain “open” if a case is matched at least once within this `keep alive` window. Each time a new event matches any of the cases, the *last updated* timestamp is updated for the signal. | |
Once a signal is generated, the signal remains “open” if a case is matched at least once within the `keep alive` window. Each time a new event matches any of the cases, the *last updated* timestamp is updated for the signal. |
|
||
Once a signal is generated, the signal will remain “open” if a case is matched at least once within this `keep alive` window. Each time a new event matches any of the cases, the *last updated* timestamp is updated for the signal. | ||
|
||
A signal will “close” regardless of the query being matched once the time exceeds the `maximum signal duration`. This time is calculated from the first seen timestamp. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A signal will “close” regardless of the query being matched once the time exceeds the `maximum signal duration`. This time is calculated from the first seen timestamp. | |
A signal closes regardless of the query being matched once the time exceeds the `maximum signal duration`. This time is calculated from the first seen timestamp. |
Co-authored-by: Alexandre Trufanow <alexandre.trufanow@datadoghq.com>
Updates the provider for security monitoring rules to accept rules with the new detection method `impossible_travel`. See also: - DataDog/documentation#13204 - DataDog/datadog-api-client-go#1357
…od impossible travel (#1402) * Update provider for detection method impossible travel Updates the provider for security monitoring rules to accept rules with the new detection method `impossible_travel`. See also: - DataDog/documentation#13204 - DataDog/datadog-api-client-go#1357
What does this PR do?
Adds documentation for the new "impossible travel" detection method for
log detection rules.
Motivation
Preview
https://docs-staging.datadoghq.com/bjorn.marschollek/SEC-1639/security_platform/cloud_siem/log_detection_rules?tab=impossibletravel
Additional Notes
Reviewer checklist