使用相同设备令牌哈希的多个Okta用户身份验证事件
编辑使用相同设备令牌哈希的多个Okta用户身份验证事件
编辑检测在短时间内为多个用户报告大量Okta用户身份验证事件的情况。攻击者可能会尝试通过使用已知的用户名和密码列表来发起来自同一设备的凭据填充或密码喷洒攻击,以未经授权访问用户帐户。
规则类型: esql
规则索引: 无
严重性: 低
风险评分: 21
每: 5分钟运行一次
搜索索引自: now-9m (日期数学格式,另请参见 额外回溯时间
)
每次执行的最大告警数: 100
参考:
- https://support.okta.com/help/s/article/How-does-the-Device-Token-work?language=en_US
- https://developer.okta.com/docs/reference/api/event-types/
- https://elastic.ac.cn/security-labs/testing-okta-visibility-and-detection-dorothy
- https://sec.okta.com/articles/2023/08/cross-tenant-impersonation-prevention-and-detection
- https://www.okta.com/resources/whitepaper-how-adaptive-mfa-can-help-in-mitigating-brute-force-attacks/
- https://elastic.ac.cn/security-labs/monitoring-okta-threats-with-elastic-security
- https://elastic.ac.cn/security-labs/starter-guide-to-understanding-okta
标签:
- 用例:身份和访问审计
- 数据源:Okta
- 策略:凭据访问
版本: 3
规则作者:
- Elastic
规则许可证: Elastic License v2
调查指南
编辑分类和分析
调查使用相同设备令牌哈希的多个Okta用户身份验证事件
此规则检测在短时间内为多个用户报告大量Okta用户身份验证事件的情况。攻击者可能会尝试使用已知的用户名和密码列表从同一设备发起凭据填充攻击,以未经授权访问用户帐户。请注意,Okta不会记录身份验证尝试期间提供的未识别用户名,因此此规则可能无法检测所有凭据填充尝试,或者可能表明这是一次有针对性的攻击。
可能的调查步骤
- 由于这是一个ES|QL规则,因此可以使用
okta.actor.alternate_id
和okta.debug_context.debug_data.dt_hash
值来转向与此活动相关的原始身份验证事件。 - 通过检查
okta.actor.id
、okta.actor.type
、okta.actor.alternate_id
和okta.actor.display_name
字段来识别参与此操作的用户。 - 通过分析
okta.client.ip
、okta.client.user_agent.raw_user_agent
、okta.client.zone
、okta.client.device
和okta.client.id
字段来确定用于这些操作的设备客户端。 - 查看
okta.security_context.is_proxy
字段以确定该设备是否为代理。 - 如果该设备是代理,这可能表明用户正在使用代理来访问多个帐户以进行密码喷洒。
- 使用
okta.actor.alternate_id
值的列表,查看event.outcome
结果以确定身份验证是否成功。 - 如果任何用户的身份验证成功,则转向这些用户的
event.action
值可能会提供更多上下文。 - 确定Okta最终用户后,查看
okta.debug_context.debug_data.dt_hash
字段。 - 历史分析应该表明此设备令牌哈希是否通常与用户关联。
- 查看
okta.event_type
字段以确定发生的认证事件类型。 - 如果事件类型为
user.authentication.sso
,则用户可能出于安全或隐私原因通过代理合法地启动了会话。 - 如果事件类型为
user.authentication.password
,则用户可能正在使用代理来访问多个帐户以进行密码喷洒。 - 检查
okta.outcome.result
字段以确定身份验证是否成功。 - 通过检查其之前的操作来查看参与此操作的执行者(们)的过去活动。
- 评估
okta.event_type
字段中此事件之前和之后发生的事件,以帮助理解活动的完整上下文。 - 这可能有助于确定用户、Okta和应用程序之间发生的认证和授权操作。
误报分析
- 用户可能出于安全或隐私原因通过代理合法地启动了会话。
- 用户可能会共享与工作或个人用途相关的端点,其中使用单独的Okta帐户。
- 从架构上讲,此共享端点可能出于安全或隐私原因而利用代理。
- 多个用户可能会使用共享系统,例如自助服务终端和会议室计算机。
- 共享工作区可能只有一个端点供多个用户使用。
响应和补救措施
- 查看参与此操作的用户的个人资料,以确定是否可以预期代理的使用。
- 如果用户是合法的,并且基于设备分析身份验证行为并不可疑,则无需采取任何措施。
- 如果用户是合法的,但身份验证行为可疑,请考虑重置相关用户的密码并启用多因素身份验证 (MFA)。
- 如果已启用MFA,请考虑重置用户的MFA。
- 如果任何用户不是合法的,请考虑停用用户的帐户。
- 对Okta策略进行审查,并确保它们符合安全最佳实践。
- 与内部IT团队联系,以确定所涉及的帐户是否最近应用户的请求重置了MFA。
- 如果是这样,请与用户确认这是一个合法的请求。
- 如果确实如此,但这不是合法的请求,请考虑暂时停用用户的帐户。
- 重置密码并重置用户的MFA。
- 如果这是一个误报,请考虑将
okta.debug_context.debug_data.dt_hash
字段添加到规则中的exceptions
列表中。 - 这将防止此设备的此类事件将来触发规则。
设置
编辑需要Okta Fleet集成、Filebeat模块或类似结构的数据才能与该规则兼容。
规则查询
编辑FROM logs-okta* | WHERE event.dataset == "okta.system" AND (event.action RLIKE "user\\.authentication(.*)" OR event.action == "user.session.start") AND okta.debug_context.debug_data.dt_hash != "-" AND okta.outcome.reason == "INVALID_CREDENTIALS" | KEEP event.action, okta.debug_context.debug_data.dt_hash, okta.actor.id, okta.actor.alternate_id, okta.outcome.reason | STATS target_auth_count = COUNT_DISTINCT(okta.actor.id) BY okta.debug_context.debug_data.dt_hash, okta.actor.alternate_id | WHERE target_auth_count > 20 | SORT target_auth_count DESC
框架: MITRE ATT&CKTM
-
策略
- 名称:凭据访问
- ID:TA0006
- 参考URL:https://attack.mitre.org/tactics/TA0006/
-
技术
- 名称:暴力破解
- ID:T1110
- 参考URL:https://attack.mitre.org/techniques/T1110/
-
子技术
- 名称:密码喷洒
- ID:T1110.003
- 参考URL:https://attack.mitre.org/techniques/T1110/003/
-
技术
- 名称:暴力破解
- ID:T1110
- 参考URL:https://attack.mitre.org/techniques/T1110/
-
子技术
- 名称:凭据填充
- ID:T1110.004
- 参考URL:https://attack.mitre.org/techniques/T1110/004/