Detection rules › Sublime MQL
ClickFunnels link infrastructure abuse
Email contains a ClickFunnels (mass mailing platform) tracking link but does not originate from ClickFunnels sending infrastructure. The myclickfunnels.com domain has been abused by threat actors to attempt credential phishing.
Threat classification
Sublime's own taxonomy (not MITRE ATT&CK).
| Category | Values |
|---|---|
| Attack types | Credential Phishing |
| Tactics and techniques | Free email provider, Free subdomain host, Social engineering |
Event coverage
Rule body MQL
type.inbound
and (
(
length(body.links) < 15
and any(body.links, .href_url.domain.root_domain == "myclickfunnels.com")
)
or (
length(attachments) <= 3
and (
any(attachments,
(.file_type in $file_types_images or .file_type == "pdf")
and any(file.explode(.),
.scan.qr.type is not null
and .scan.qr.url.domain.root_domain == "myclickfunnels.com"
// exclude images taken with mobile cameras and screenshots from android
and not any(.scan.exiftool.fields,
.key == "Model"
or (
.key == "Software"
and strings.starts_with(.value, "Android")
)
)
// exclude images taken with mobile cameras and screenshots from Apple
and not any(.scan.exiftool.fields,
.key == "DeviceManufacturer"
and .value == "Apple Computer Inc."
)
)
)
or (
length(attachments) == 0
//
// This rule makes use of a beta feature and is subject to change without notice
// using the beta feature in custom rules is not suggested until it has been formally released
//
and beta.parse_exif(file.message_screenshot()).image_height < 2000
and beta.parse_exif(file.message_screenshot()).image_width < 2000
and any(beta.scan_qr(file.message_screenshot()).items,
.type is not null
and .url.domain.root_domain == "myclickfunnels.com"
)
)
)
)
or (
length(attachments) <= 3
and (
any(attachments,
(
.file_type in ("pdf")
or .file_extension in ("pdf", "eml")
or .file_extension in $file_extensions_macros
or (
.content_type in ("message/rfc822") or .file_extension in ('eml')
)
)
and any(file.explode(.),
any(.scan.url.urls,
.domain.root_domain == "myclickfunnels.com"
)
)
)
)
)
)
and not (
any(headers.domains, strings.ends_with(.domain, "mailer.myclickfunnels.com"))
or (
(
any(headers.hops,
.index == 0
and any(.authentication_results.dkim_details,
.domain == "mailer.myclickfunnels.com"
)
)
)
and any(distinct(headers.hops, .authentication_results.dmarc is not null),
.index == 0
and strings.ilike(.authentication_results.dmarc, "*pass")
)
)
)
// negating legit replies
and not (
(
strings.istarts_with(subject.subject, "RE:")
or strings.istarts_with(subject.subject, "FW:")
or strings.istarts_with(subject.subject, "FWD:")
or strings.istarts_with(subject.subject, "Automatic reply:")
)
and (length(headers.references) > 0 and headers.in_reply_to is not null)
)
// negate highly trusted sender domains unless they fail DMARC authentication
and (
(
sender.email.domain.root_domain in $high_trust_sender_root_domains
and (
any(distinct(headers.hops, .authentication_results.dmarc is not null),
strings.ilike(.authentication_results.dmarc, "*fail")
)
)
)
or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)
Detection logic
Scope: inbound message.
Email contains a ClickFunnels (mass mailing platform) tracking link but does not originate from ClickFunnels sending infrastructure. The myclickfunnels.com domain has been abused by threat actors to attempt credential phishing.
- inbound message
any of:
all of:
- length(body.links) < 15
any of
body.linkswhere:- .href_url.domain.root_domain is 'myclickfunnels.com'
all of:
- length(attachments) ≤ 3
any of:
any of
attachmentswhere all hold:any of:
- .file_type in $file_types_images
- .file_type is 'pdf'
any of
file.explode(.)where all hold:- .scan.qr.type is set
- .scan.qr.url.domain.root_domain is 'myclickfunnels.com'
not:
any of
.scan.exiftool.fieldswhere any holds:- .key is 'Model'
all of:
- .key is 'Software'
- .value starts with 'Android'
not:
any of
.scan.exiftool.fieldswhere all hold:- .key is 'DeviceManufacturer'
- .value is 'Apple Computer Inc.'
all of:
- length(attachments) is 0
- beta.parse_exif(file.message_screenshot()).image_height < 2000
- beta.parse_exif(file.message_screenshot()).image_width < 2000
any of
beta.scan_qr(file.message_screenshot()).itemswhere all hold:- .type is set
- .url.domain.root_domain is 'myclickfunnels.com'
all of:
- length(attachments) ≤ 3
any of
attachmentswhere all hold:any of:
- .file_type in ('pdf')
- .file_extension in ('pdf', 'eml')
- .file_extension in $file_extensions_macros
any of:
- .content_type in ('message/rfc822')
- .file_extension in ('eml')
any of
file.explode(.)where:any of
.scan.url.urlswhere:- .domain.root_domain is 'myclickfunnels.com'
none of:
any of
headers.domainswhere:- .domain ends with 'mailer.myclickfunnels.com'
all of:
any of
headers.hopswhere all hold:- .index is 0
any of
.authentication_results.dkim_detailswhere:- .domain is 'mailer.myclickfunnels.com'
any of
distinct(headers.hops)where all hold:- .index is 0
- .authentication_results.dmarc matches '*pass'
not:
all of:
subject.subject starts with any of 4 patterns
RE:FW:FWD:Automatic reply:
all of:
- length(headers.references) > 0
- headers.in_reply_to is set
any of:
all of:
- sender.email.domain.root_domain in $high_trust_sender_root_domains
any of
distinct(headers.hops)where:- .authentication_results.dmarc matches '*fail'
- sender.email.domain.root_domain not in $high_trust_sender_root_domains
Inspects: attachments[].content_type, attachments[].file_extension, attachments[].file_type, body.links, body.links[].href_url.domain.root_domain, headers.domains, headers.domains[].domain, headers.hops, headers.hops[].authentication_results.dkim_details, headers.hops[].authentication_results.dkim_details[].domain, headers.hops[].authentication_results.dmarc, headers.hops[].index, headers.in_reply_to, headers.references, sender.email.domain.root_domain, subject.subject, type.inbound. Sensors: beta.parse_exif, beta.scan_qr, file.explode, file.message_screenshot, strings.ends_with, strings.ilike, strings.istarts_with, strings.starts_with. Reference lists: $file_extensions_macros, $file_types_images, $high_trust_sender_root_domains.
Indicators matched (22)
| Field | Match | Value |
|---|---|---|
body.links[].href_url.domain.root_domain | equals | myclickfunnels.com |
attachments[].file_type | equals | pdf |
file.explode(attachments[])[].scan.qr.url.domain.root_domain | equals | myclickfunnels.com |
file.explode(attachments[])[].scan.exiftool.fields[].key | equals | Model |
file.explode(attachments[])[].scan.exiftool.fields[].key | equals | Software |
strings.starts_with | prefix | Android |
file.explode(attachments[])[].scan.exiftool.fields[].key | equals | DeviceManufacturer |
file.explode(attachments[])[].scan.exiftool.fields[].value | equals | Apple Computer Inc. |
beta.scan_qr(file.message_screenshot()).items[].url.domain.root_domain | equals | myclickfunnels.com |
attachments[].file_type | member | pdf |
attachments[].file_extension | member | pdf |
attachments[].file_extension | member | eml |
10 more
attachments[].content_type | member | message/rfc822 |
file.explode(attachments[])[].scan.url.urls[].domain.root_domain | equals | myclickfunnels.com |
strings.ends_with | suffix | mailer.myclickfunnels.com |
headers.hops[].authentication_results.dkim_details[].domain | equals | mailer.myclickfunnels.com |
strings.ilike | substring | *pass |
strings.istarts_with | prefix | RE: |
strings.istarts_with | prefix | FW: |
strings.istarts_with | prefix | FWD: |
strings.istarts_with | prefix | Automatic reply: |
strings.ilike | substring | *fail |