Constant Contact link infrastructure abuse
Email contains a Constant Contact (mass mailing platform) tracking link but does not originate from Constant Contact sending infrastructure. The rs6.net domain has been abused by threat actors to attempt credential phishing.
Sublime rule (View on GitHub)
1name: "Constant Contact link infrastructure abuse"
2description: "Email contains a Constant Contact (mass mailing platform) tracking link but does not originate from Constant Contact sending infrastructure. The rs6.net domain has been abused by threat actors to attempt credential phishing."
3type: "rule"
4severity: "high"
5source: |
6 type.inbound
7 and (
8 (
9 length(body.links) < 15
10 and any(body.links,
11 .href_url.domain.root_domain in (
12 "rs6.net",
13 "constantcontactpages.com"
14 )
15 )
16 )
17 or (
18 length(attachments) <= 3
19 and (
20 any(attachments,
21 (.file_type in $file_types_images or .file_type == "pdf")
22 //
23 // This rule makes use of a beta feature and is subject to change without notice
24 // using the beta feature in custom rules is not suggested until it has been formally released
25 //
26 and any(beta.scan_qr(.).items,
27 .type is not null
28 and .url.domain.root_domain in (
29 "rs6.net",
30 "constantcontactpages.com"
31 )
32 )
33 //
34 // This rule makes use of a beta feature and is subject to change without notice
35 // using the beta feature in custom rules is not suggested until it has been formally released
36 //
37 // exclude images taken with mobile cameras and screenshots from android
38 and not any(beta.parse_exif(.).fields,
39 .key == "Model"
40 or (
41 .key == "Software"
42 and strings.starts_with(.value, "Android")
43 )
44 )
45 // exclude images taken with mobile cameras and screenshots from Apple
46 and not any(beta.parse_exif(.).fields,
47 .key == "DeviceManufacturer"
48 and .value == "Apple Computer Inc."
49 )
50 )
51 or (
52 length(attachments) == 0
53 and (
54 //
55 // This rule makes use of a beta feature and is subject to change without notice
56 // using the beta feature in custom rules is not suggested until it has been formally released
57 //
58 beta.parse_exif(file.message_screenshot()).image_height < 2000
59 and beta.parse_exif(file.message_screenshot()).image_width < 2000
60 and beta.scan_qr(file.message_screenshot()).found
61 and any(beta.scan_qr(file.message_screenshot()).items,
62 .type is not null and .url.domain.root_domain == "rs6.net"
63 )
64 )
65 )
66 )
67 )
68 )
69 and not (
70 any(headers.hops,
71 strings.icontains(.authentication_results.spf_details.designator,
72 "constantcontact.com"
73 )
74 )
75 or any(headers.hops,
76 strings.icontains(.received_spf.designator, "constantcontact.com")
77 )
78 or (
79 (
80 any(headers.hops,
81 any(.authentication_results.dkim_details,
82 .domain == "auth.ccsend.com"
83 )
84 )
85 )
86 and headers.auth_summary.dmarc.pass
87 )
88 or any(headers.references, strings.iends_with(., "ccsend.com"))
89 )
90 // negating legit replies
91 and not (
92 (
93 strings.istarts_with(subject.subject, "RE:")
94 or strings.istarts_with(subject.subject, "FW:")
95 or strings.istarts_with(subject.subject, "FWD:")
96 or strings.istarts_with(subject.subject, "Automatic reply:")
97 or regex.imatch(subject.subject,
98 '(\[[^\]]+\]\s?){0,3}(re|fwd?|automat.*)\s?:.*'
99 )
100 )
101 and (
102 length(headers.references) > 0
103 or any(headers.hops, any(.fields, strings.ilike(.name, "In-Reply-To")))
104 )
105 )
106 // negate highly trusted sender domains unless they fail DMARC authentication
107 and (
108 (
109 sender.email.domain.root_domain in $high_trust_sender_root_domains
110 and not headers.auth_summary.dmarc.pass
111 )
112 or sender.email.domain.root_domain not in $high_trust_sender_root_domains
113 )
114 and profile.by_sender().prevalence in ("new", "outlier", "rare")
115
116attack_types:
117 - "Credential Phishing"
118tactics_and_techniques:
119 - "Free email provider"
120 - "Open redirect"
121 - "Social engineering"
122detection_methods:
123 - "Content analysis"
124 - "Header analysis"
125 - "QR code analysis"
126 - "Sender analysis"
127id: "8c5e8e4c-c610-5ece-b82a-214c637cba09"