VIP impersonation with invoicing request
This rule detects emails attempting to impersonate a VIP, it leverages NLU to determine if there is invoicing verbiage in the current thread, and requires request language.
Sublime rule (View on GitHub)
1name: "VIP impersonation with invoicing request"
2description: "This rule detects emails attempting to impersonate a VIP, it leverages NLU to determine if there is invoicing verbiage in the current thread, and requires request language."
3type: "rule"
4severity: "high"
5source: |
6 type.inbound
7 and any($org_vips, strings.contains(sender.display_name, .display_name))
8 and (
9 (
10 sender.email.domain.domain in $org_domains
11 // X-headers indicate external sender
12 and headers.x_authenticated_sender.email != sender.email.email
13 and headers.x_authenticated_domain.domain not in $org_domains
14 )
15 or sender.email.domain.domain not in $org_domains
16 )
17
18 // Invoice Language with a request
19 and any(ml.nlu_classifier(body.current_thread.text).tags,
20 .name == "invoice" and .confidence in ("medium", "high")
21 )
22 and any(ml.nlu_classifier(body.current_thread.text).entities,
23 .name == "request"
24 )
25
26 // and the reply to email address has never been contacted
27 and any(headers.reply_to, .email.email not in $recipient_emails)
28
29 // negate highly trusted sender domains unless they fail DMARC authentication
30 and (
31 (
32 sender.email.domain.root_domain in $high_trust_sender_root_domains
33 and not headers.auth_summary.dmarc.pass
34 )
35 or sender.email.domain.root_domain not in $high_trust_sender_root_domains
36 )
37
38attack_types:
39 - "BEC/Fraud"
40tactics_and_techniques:
41 - "Impersonation: VIP"
42detection_methods:
43 - "Content analysis"
44 - "Header analysis"
45 - "Natural Language Understanding"
46
47id: "a60f89a0-6cd0-5c2d-96de-8800380df407"