Suspicious newly registered reply-to domain with engaging financial or urgent language

Detects messages from a mismatched newly registered Reply-to domain that contain a financial or urgent request, or a request and an NLU tag with medium to high confidence, from an untrusted sender. This technique is typically observed in Vendor impersonation.

Sublime rule (View on GitHub)

 1name: "Suspicious newly registered reply-to domain with engaging financial or urgent language"
 2description: |
 3  Detects messages from a mismatched newly registered Reply-to domain that contain a financial or urgent request, or a request and 
 4  an NLU tag with medium to high confidence, from an untrusted sender. This technique is typically observed in Vendor impersonation.  
 5type: "rule"
 6severity: "medium"
 7source: |
 8  type.inbound
 9  and length(body.current_thread.text) < 5000
10  and any(headers.reply_to,
11          // mismatched reply-to and sender domain
12          .email.domain.root_domain != sender.email.domain.root_domain
13          // newly registered reply-to domain
14          and network.whois(.email.domain).days_old <= 30
15  )
16  // request is being made
17  and any(ml.nlu_classifier(body.current_thread.text).entities,
18          .name == "request"
19  )
20  // there's financial/urgency OR a tag of medium/high confidence
21  and (
22    any(ml.nlu_classifier(body.current_thread.text).entities,
23        .name in ("financial", "urgency")
24    )
25    or any(ml.nlu_classifier(body.current_thread.text).tags,
26           .name is not null and .confidence in ("medium", "high")
27    )
28  )
29  and (
30    not profile.by_sender().solicited
31    or (
32      length(headers.reply_to) > 0
33      // reply-to email address as never been sent an email by the org
34      and all(headers.reply_to, .email.email not in $recipient_emails)
35    )
36    or (
37      profile.by_sender().any_messages_malicious_or_spam
38      and not profile.by_sender().any_false_positives
39    )
40  )
41  // negate highly trusted sender domains unless they fail DMARC authentication
42  and (
43    (
44      sender.email.domain.root_domain in $high_trust_sender_root_domains
45      and not headers.auth_summary.dmarc.pass
46    )
47    or sender.email.domain.root_domain not in $high_trust_sender_root_domains
48  )  
49
50attack_types:
51  - "BEC/Fraud"
52tactics_and_techniques:
53  - "Social engineering"
54detection_methods:
55  - "Content analysis"
56  - "Header analysis"
57  - "Natural Language Understanding"
58  - "Sender analysis"
59  - "URL analysis"
60  - "Whois"
61id: "db4d9bb3-0eca-5525-9a99-7c1c773b580f"
to-top