Deceptive Dropbox mention
Detects when a message mentions Dropbox but comes from non-Dropbox infrastructure, contains links to suspicious domains, shows discrepancies in sender identity, and contains language patterns associated with credential theft.
Sublime rule (View on GitHub)
1name: "Deceptive Dropbox mention"
2description: "Detects when a message mentions Dropbox but comes from non-Dropbox infrastructure, contains links to suspicious domains, shows discrepancies in sender identity, and contains language patterns associated with credential theft."
3type: "rule"
4severity: "medium"
5source: |
6 type.inbound
7 and strings.icontains(body.current_thread.text, 'dropbox')
8 and any(beta.ml_topic(coalesce(body.html.display_text, body.current_thread.text)).topics, .name == "File Sharing and Cloud Services" and .confidence != "low")
9
10 // Email address discrepancy detection - looking for matches in the domain name from the sender but not the current thread proposed sender name
11 and any(regex.iextract(body.current_thread.text,
12 '(?P<whole_email>(?P<local_part>[a-zA-Z0-9._%-]+)@(?P<domain_name>[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}))'
13 ),
14 strings.parse_email(.named_groups["whole_email"]).domain.domain == sender.email.domain.domain
15 and strings.parse_email(.named_groups["whole_email"]).local_part != sender.email.local_part
16 and not strings.parse_email(.named_groups["whole_email"]).email in~ map(filter(recipients.to, .email.domain.valid), .email.email)
17 )
18
19 // Not from legitimate Dropbox infrastructure
20 and sender.email.domain.root_domain not in~ (
21 'dropbox.com',
22 'docsend.com',
23 'box.com',
24 'wetransfer.com',
25 // tuning: exlude hellosign emails that are covered in another rule
26 'hellosign.com'
27 )
28
29 // Contains suspicious links to non-Dropbox/file-sharing domains
30 and any(body.links,
31 (.href_url.domain.root_domain in~ $free_subdomain_hosts
32 or .href_url.domain.root_domain in~ $free_file_hosts)
33 and .href_url.domain.valid
34 )
35
36 // ML indicates potential credential theft
37 and any(ml.nlu_classifier(body.current_thread.text).intents,
38 .name == "cred_theft" and .confidence != "low"
39 )
40
41attack_types:
42 - "Credential Phishing"
43tactics_and_techniques:
44 - "Impersonation: Brand"
45 - "Free file host"
46 - "Free subdomain host"
47 - "Social engineering"
48detection_methods:
49 - "Header analysis"
50 - "Content analysis"
51 - "Natural Language Understanding"
52 - "Sender analysis"
53 - "URL analysis"
54id: "58a107bc-dd68-5fdd-9813-4a05411aafd9"