Skip to content

Commit 30fe68a

Browse files
[New Rule] Okta Multiple OS Names Detected for a Single DT Hash
Fixes #5240
1 parent b9b8e24 commit 30fe68a

File tree

1 file changed

+105
-0
lines changed

1 file changed

+105
-0
lines changed
Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
[metadata]
2+
creation_date = "2025/10/22"
3+
maturity = "production"
4+
updated_date = "2025/10/22"
5+
6+
[rule]
7+
author = ["Elastic"]
8+
description = """
9+
Identifies when a single Okta device trust hash (dt_hash) is associated with multiple operating system types. This is
10+
highly anomalous because a device trust token is tied to a specific device and its operating system. This alert strongly
11+
indicates that an attacker has stolen a device trust token and is using it to impersonate a legitimate user from a
12+
different machine.
13+
"""
14+
false_positives = [
15+
"""
16+
Applications will tag the operating system as null when the device is not recognized as a managed device. In
17+
environments where users frequently switch between managed and unmanaged devices, this may lead to false positives.
18+
""",
19+
]
20+
from = "now-60m"
21+
index = ["logs-okta.system-*"]
22+
interval = "5m"
23+
language = "kuery"
24+
name = "Okta Multiple OS Names Detected for a Single DT Hash"
25+
note = """## Triage and analysis
26+
27+
### Investigating Okta Multiple OS Names Detected for a Single DT Hash
28+
29+
This rule detects when a single Okta device trust hash (dt_hash) is associated with multiple operating system types. This is highly anomalous because a device trust token is tied to a specific device and its operating system. This alert strongly indicates that an attacker has stolen a device trust token and is using it to impersonate a legitimate user from a different machine.
30+
31+
### Possible investigation steps
32+
- Review the `okta.debug_context.debug_data.dt_hash` field to identify the specific device
33+
trust hash associated with multiple operating systems.
34+
- Examine the `user.email` field to determine which user account is associated with the suspicious activity
35+
- Analyze the `source.ip` field to identify the IP addresses from which the different operating systems were reported. Look for any unusual or unexpected locations.
36+
- Review the `user_agent.os.name` field to see the different operating systems reported for the
37+
same dt_hash. This will help identify the nature of the anomaly.
38+
- Check the `event.action` field to understand the context of the authentication events (e.g., MFA verification, standard authentication).
39+
- Investigate the timeline of events to see when the different operating systems were reported for the same dt_hash. Look for patterns or sequences that may indicate malicious activity.
40+
- Correlate this activity with other security events in your environment, such as failed login attempts, unusual access patterns, or alerts from endpoint security solutions.
41+
42+
### False positive analysis
43+
- Applications will tag the operating system as null when the device is not recognized as a managed device
44+
- In environments where users frequently switch between managed and unmanaged devices, this may lead to false positives.
45+
46+
### Response and remediation
47+
- Immediately investigate the user account associated with the suspicious activity to determine if it has been compromised.
48+
- If compromise is confirmed, reset the user's credentials and enforce multi-factor authentication (MFA)
49+
- Revoke any active sessions associated with the compromised account to prevent further unauthorized access.
50+
- Review and monitor the affected dt_hash for any further suspicious activity.
51+
- Educate users about the importance of device security and the risks associated with device trust tokens.
52+
- Implement additional monitoring for device trust tokens and consider using conditional access policies to restrict access based on device compliance status.
53+
"""
54+
risk_score = 73
55+
rule_id = "fb3ca230-af4e-11f0-900d-f661ea17fbcc"
56+
severity = "high"
57+
tags = [
58+
"Domain: Identity",
59+
"Data Source: Okta",
60+
"Data Source: Okta System Logs",
61+
"Use Case: Threat Detection",
62+
"Tactic: Credential Access",
63+
]
64+
timestamp_override = "event.ingested"
65+
type = "threshold"
66+
67+
query = '''
68+
data_stream.dataset: "okta.system" and
69+
okta.debug_context.debug_data.dt_hash: * and
70+
okta.device.os_platform: * and
71+
event.action: ("user.authentication.verify" or "user.authentication.auth_via_mfa")
72+
'''
73+
74+
75+
[[rule.threat]]
76+
framework = "MITRE ATT&CK"
77+
[[rule.threat.technique]]
78+
id = "T1539"
79+
name = "Steal Web Session Cookie"
80+
reference = "https://attack.mitre.org/techniques/T1539/"
81+
82+
83+
[rule.threat.tactic]
84+
id = "TA0006"
85+
name = "Credential Access"
86+
reference = "https://attack.mitre.org/tactics/TA0006/"
87+
88+
[rule.investigation_fields]
89+
field_names = [
90+
"@timestamp",
91+
"okta.debug_context.debug_data.dt_hash",
92+
"user.email",
93+
"source.ip",
94+
"user_agent.os.name",
95+
"event.action",
96+
]
97+
98+
[rule.threshold]
99+
field = ["okta.debug_context.debug_data.dt_hash"]
100+
value = 1
101+
[[rule.threshold.cardinality]]
102+
field = "user_agent.os.name"
103+
value = 2
104+
105+

0 commit comments

Comments
 (0)