Brand impersonation: Okta

Impersonation of Okta, an identity and access management company.

Sublime rule (View on GitHub)

 1name: "Brand impersonation: Okta"
 2description: "Impersonation of Okta, an identity and access management company."
 3type: "rule"
 4severity: "medium"
 5source: |
 6  type.inbound
 7  and (
 8    regex.icontains(sender.display_name, '\bOkta\b')
 9    or strings.ilike(sender.email.domain.domain, '*Okta*')
10    or strings.ilike(subject.subject, '*Okta*')
11  )
12  and not (length(headers.references) > 0 or headers.in_reply_to is not null)
13  and not (
14    sender.email.domain.root_domain in~ (
15      'oktacdn.com',
16      'okta.com',
17      'okta-emea.com',
18      'okta-gov.com',
19      'oktapreview.com',
20      'polaris.me',
21      'examity.com', // exam service used by okta
22      'discoursemail.com' // used by okta's dev community
23    )
24    and headers.auth_summary.dmarc.pass
25  )
26  and any(ml.logo_detect(file.message_screenshot()).brands,
27          .name == "Okta" and .confidence in ("medium", "high")
28  )
29  and (
30    profile.by_sender().prevalence != "common"
31    or (
32      profile.by_sender().any_messages_malicious_or_spam
33      and not profile.by_sender().any_messages_benign
34    )
35  )
36  // negate okta relay
37  and not any(distinct(headers.domains, .domain is not null),
38              .domain == "mailrelay.okta.com"
39  )
40  // negate highly trusted sender domains unless they fail DMARC authentication
41  and not (
42    sender.email.domain.root_domain in $high_trust_sender_root_domains
43    and coalesce(headers.auth_summary.dmarc.pass, false)
44  )  
45attack_types:
46  - "Credential Phishing"
47tactics_and_techniques:
48  - "Impersonation: Brand"
49  - "Lookalike domain"
50  - "Social engineering"
51detection_methods:
52  - "Computer Vision"
53  - "Content analysis"
54  - "Header analysis"
55  - "Sender analysis"
56id: "b7a2989a-a5ef-5340-b1d0-6b7c51462855"
to-top