Okta Multiple Users Failing To Authenticate From Ip

Original Source: [splunk source]
Name:Okta Multiple Users Failing To Authenticate From Ip
id:de365ffa-42f5-46b5-b43f-fa72290b8218
version:4
date:2024-09-30
author:Michael Haag, Mauricio Velazco, Splunk
status:production
type:Anomaly
Description:The following analytic identifies instances where more than 10 unique user accounts have failed to authenticate from a single IP address within a 5-minute window in an Okta tenant. This detection uses OktaIm2 logs ingested via the Splunk Add-on for Okta Identity Cloud. Such activity is significant as it may indicate brute-force attacks or password spraying attempts. If confirmed malicious, this behavior suggests an external entity is attempting to compromise multiple user accounts, potentially leading to unauthorized access to organizational resources and data breaches.
Data_source:
  • -Okta
search:| tstats `security_content_summariesonly` count max(_time) as lastTime, min(_time) as firstTime dc(Authentication.user) as unique_accounts values(Authentication.signature) as signature values(Authentication.user) as user values(Authentication.app) as app values(Authentication.authentication_method) as authentication_method from datamodel=Authentication where Authentication.action="failure" AND Authentication.signature=user.session.start by _time span=5m Authentication.src sourcetype
| where unique_accounts > 9
| `drop_dm_object_name("Authentication")`
| `security_content_ctime(firstTime)`
| `security_content_ctime(lastTime)`
| `okta_multiple_users_failing_to_authenticate_from_ip_filter`


how_to_implement:The analytic leverages Okta OktaIm2 logs to be ingested using the Splunk Add-on for Okta Identity Cloud (https://splunkbase.splunk.com/app/6553).
known_false_positives:A source Ip failing to authenticate with multiple users in a short period of time is not common legitimate behavior.
References:
  -https://attack.mitre.org/techniques/T1110/003/
  -https://splunkbase.splunk.com/app/6553
drilldown_searches:
name:'View the detection results for - "$user$"'
search:'%original_detection_search% | search user = "$user$"'
earliest_offset:'$info_min_time$'
latest_offset:'$info_max_time$'
name:'View risk events for the last 7 days for - "$user$"'
search:'| from datamodel Risk.All_Risk | search normalized_risk_object IN ("$user$") starthoursago=168 | stats count min(_time) as firstTime max(_time) as lastTime values(search_name) as "Search Name" values(risk_message) as "Risk Message" values(analyticstories) as "Analytic Stories" values(annotations._all) as "Annotations" values(annotations.mitre_attack.mitre_tactic) as "ATT&CK Tactics" by normalized_risk_object | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`'
earliest_offset:'$info_min_time$'
latest_offset:'$info_max_time$'
tags:
  analytic_story:
    - 'Okta Account Takeover'
  asset_type:Okta Tenant
  confidence:90
  impact:60
  message:Multiple users failing to authenticate from a single source IP Address - [$src$]. Investigate further to determine if this was authorized.
  mitre_attack_id:
    - 'T1110.003'
  observable:
    name:'src'
    type:'IP Address'
    - role:
      - 'Attacker'
    name:'user'
    type:'User'
    - role:
      - 'Victim'
  product:
    - 'Splunk Enterprise'
    - 'Splunk Enterprise Security'
    - 'Splunk Cloud'
  required_fields:
    - '_time'
    - 'Authentication.user'
    - 'Authentication.signature'
    - 'Authentication.user'
    - 'Authentication.app'
    - 'Authentication.authentication_method'
    - 'Authentication.action'
    - 'Authentication.src'
  risk_score:54
  security_domain:identity

tests:
name:'True Positive Test'
 attack_data:
  data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1110.003/okta_multiple_users_from_ip/okta_multiple_users_from_ip.log
  source: Okta
  sourcetype: OktaIM2:log
manual_test:None

Related Analytic Stories


Okta Account Takeover