Detection rules › Sublime MQL

Sublime MQL rules: open

RuleSeverity
Open redirect: adnxs.commedium
Open redirect: agena-smile.commedium
Open redirect: amaterasu-for-website-5.commedium
Open redirect: api.spently.commedium
Open redirect: Artisteermedium
Open redirect: artkadernemedium
Open Redirect: asemailmgmteu.commedium
Open redirect: astroarts.co.jpmedium
Open redirect: Atdmtmedium
Open redirect: Avastmedium
Open redirect: bananaguide.commedium
Open redirect: bangkoksync.commedium
Open redirect: bestdeals.todaymedium
Open redirect: Bitrix24 URL Pathmedium
Open redirect: BMW USAmedium
Open redirect: bubblelife.commedium
Open redirect: buildingengines.commedium
Open redirect: business.google.com website_shared URL Parammedium
Open redirect: Cartoon Networkmedium
Open redirect: chkc.com.hkmedium
Open redirect: City of Calgarymedium
Open redirect: Club-OSmedium
Open redirect: convertcart.commedium
Open redirect: Dellmedium
Open redirect: designsori.commedium
Open redirect: Diesel.azmedium
Open redirect: documentmailbox.commedium
Open redirect: Doubleclick.netmedium
Open redirect: eaoko.orgmedium
Open redirect: easycamp.commedium
Open redirect: embluemail.commedium
Open redirect: emlakarsamedium
Open redirect: emp.eduyield.commedium
Open redirect: eodcnetworkdirect.commedium
Open redirect: events.csiro.aumedium
Open redirect: ExacTagmedium
Open redirect: fenc.commedium
Open redirect: g7.frmedium
Open redirect: giving.lluh.orgmedium
Open redirect: Google Ad Servicesmedium
Open redirect: Hakumonkai.orghigh
Open redirect: HHSmedium
Open redirect: ijf.orgmedium
Open redirect: Indeedmedium
Open redirect: IndiaTimesmedium
Open redirect: isadatalab.commedium
Open redirect: JustPaste.itmedium
Open redirect: k-mil.netmedium
Open redirect: Klaviyomedium
Open redirect: labcluster.commedium
Open redirect: LearningAppsmedium
Open redirect: Linkedinmedium
Open redirect: LinkedIn Redirectmedium
Open redirect: listing.camedium
Open redirect: magic4media.commedium
Open redirect: magiccity.ne.jpmedium
Open redirect: magneticmarketing.commedium
Open redirect: mail.spiceworks.commedium
Open redirect: Mailtrack Koreamedium
Open redirect: marketing.edinburghairport.commedium
Open redirect: McGill Universitylow
Open redirect: Mediummedium
Open redirect: Meta --> YouTube Redirection Chainmedium
Open redirect: mindmixer.commedium
Open redirect: MSNmedium
Open redirect: museepicassoparis.frmedium
Open redirect: Nested Doubleclick.nethigh
Open redirect: Neweggmedium
Open redirect: next2.iomedium
Open redirect: nowlifestyle.commedium
Open redirect: obunsha.co.jpmedium
Open redirect: Panera Breadmedium
Open redirect: people.anuneo.commedium
Open redirect: phoenixartstudio.netmedium
Open redirect: PIRL San Diegomedium
Open redirect: plasticsurgery.or.krmedium
Open redirect: pmifunds.commedium
Open redirect: predictiveresponse.netmedium
Open redirect: PremierBetmedium
Open redirect: qrxtech.commedium
Open redirect: queue.swytchbike.commedium
Open redirect: radiopublic.commedium
Open redirect: Recipient address embedded in redirect URL pointing to newly registered domainmedium
Open redirect: retailrocket.netmedium
Open redirect: ringaraja.netmedium
Open redirect: Samsungmedium
Open redirect: sciencebuddies.orgmedium
Open redirect: secondstreetapp.commedium
Open redirect: Shibboleth SSO Logout Return Parameterhigh
Open redirect: shoppermeet.netmedium
Open redirect: shoppingwebapi.didatravel.commedium
Open redirect: Signature Travel Networkmedium
Open redirect: Slacklow
Open redirect: slubnaglowie.plmedium
Open redirect: smartadserver.commedium
Open redirect: smore.commedium
Open redirect: Snapchatmedium
Open redirect: social.bigpress.netmedium
Open redirect: ssg-financial.commedium
Open redirect: stats.lib.pdx.edumedium
Open redirect: storematch.jpmedium
Open redirect: Ticketmasterlow
Open redirect: TikTokmedium
Open redirect: tkqlhce.commedium
Open redirect: tuttocauzioni.itmedium
Open redirect: typedrawers.commedium
Open redirect: U.S. Antarctic Program Data Center (USAP-DC)medium
Open redirect: unitedwaynwvt.orgmedium
Open redirect: ust.hkmedium
Open redirect: vconfex.commedium
Open redirect: VKmedium
Open redirect: weblinkconnect.commedium
Open redirect: whitefox.plmedium
Open redirect: Xfinity CMP Redirection to Google AMPmedium
Open redirect: xfinity.commedium
Open redirect: YouTubemedium
Open redirect: YouTube --> Google Redirection Chainmedium

Open redirect: adnxs.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the adnxs.com redirect with getuid parameter. This has been exploited in phishing campaigns to redirect users to malicious sites.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        (
          .href_url.domain.domain == "ib.adnxs.com"
          and strings.icontains(.href_url.path, '/getuid')
          // Make sure the redirect is not going back to adnxs.com
          and not regex.icontains(.href_url.query_params,
                                  'getuid\?(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*adnxs\.com(?:\&|\/|$|%2f)'
          )
        )
        // second form of an open redirect
        or (
          .href_url.domain.domain == "secure.adnxs.com"
          and strings.icontains(.href_url.query_params, 'redir=')
          // Make sure the redirect is not going back to adnxs.com
          and not regex.icontains(.href_url.query_params,
                                  'redir=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*adnxs\.com(?:\&|\/|$|%2f)'
          )
        )
)
and not sender.email.domain.root_domain == "adnxs.com"
and not sender.email.domain.root_domain == "appnexus.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the adnxs.com redirect with getuid parameter. This has been exploited in phishing campaigns to redirect users to malicious sites.

  1. inbound message
  2. any of body.links where any holds:
    • all of:
      • .href_url.domain.domain is 'ib.adnxs.com'
      • .href_url.path contains '/getuid'
      • not:
        • .href_url.query_params matches 'getuid\\?(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*adnxs\\.com(?:\\&|\\/|$|%2f)'
    • all of:
      • .href_url.domain.domain is 'secure.adnxs.com'
      • .href_url.query_params contains 'redir='
      • not:
        • .href_url.query_params matches 'redir=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*adnxs\\.com(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'adnxs.com'
  4. not:
    • sender.email.domain.root_domain is 'appnexus.com'
  5. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (4)

FieldMatchValue
body.links[].href_url.domain.domainequalsib.adnxs.com
strings.icontainssubstring/getuid
body.links[].href_url.domain.domainequalssecure.adnxs.com
strings.icontainssubstringredir=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    or
      and
        not
          body.links.href_url.query_params regex_match "getuid\\?(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*adnxs\\.com(?:\\&|\\/|$|%2f)"
        body.links.href_url.domain.domain eq "ib.adnxs.com"
        body.links.href_url.path contains "/getuid"
      and
        not
          body.links.href_url.query_params regex_match "redir=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*adnxs\\.com(?:\\&|\\/|$|%2f)"
        body.links.href_url.domain.domain eq "secure.adnxs.com"
        body.links.href_url.query_params contains "redir="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "adnxs.com"
  not
    sender.email.domain.root_domain eq "appnexus.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: agena-smile.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the agena-smile.com redirect with wptouch_switch parameter. This has been exploited in the wild for phishing.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "agena-smile.com"
        and strings.icontains(.href_url.query_params, 'wptouch_switch=')
        and strings.icontains(.href_url.query_params, 'redirect=')
        and not regex.icontains(.href_url.query_params,
                                'redirect=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*agena-smile\.com(?:\&|\/|$|%2f)'
        )
)
and not sender.email.domain.root_domain == "agena-smile.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the agena-smile.com redirect with wptouch_switch parameter. This has been exploited in the wild for phishing.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'agena-smile.com'
    • .href_url.query_params contains 'wptouch_switch='
    • .href_url.query_params contains 'redirect='
    • not:
      • .href_url.query_params matches 'redirect=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*agena-smile\\.com(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'agena-smile.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsagena-smile.com
strings.icontainssubstringwptouch_switch=
strings.icontainssubstringredirect=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "redirect=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*agena-smile\\.com(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.root_domain eq "agena-smile.com"
      body.links.href_url.query_params contains "redirect="
      body.links.href_url.query_params contains "wptouch_switch="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "agena-smile.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqagena-smile.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"agena-smile.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: amaterasu-for-website-5.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Detects messages containing amaterasu-for-website-5.com redirect links that use the url parameter to redirect users to malicious sites. This has been observed in phishing campaigns.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        // Look for website-5 URLs
        .href_url.domain.domain == "api.amaterasu-for-website-5.com"
        and strings.icontains(.href_url.query_params, 'url=')
        // Make sure it's not redirecting back to website-5.com domains
        and not regex.icontains(.href_url.query_params,
                                'url=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*website-5\.com(?:\&|\/|$|%2f)'
        )
)
// Exclude legitimate website-5 domains as senders
and not sender.email.domain.root_domain == "website-5.com"
and not sender.email.domain.root_domain == "amaterasu-for-website-5.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Detects messages containing amaterasu-for-website-5.com redirect links that use the url parameter to redirect users to malicious sites. This has been observed in phishing campaigns.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'api.amaterasu-for-website-5.com'
    • .href_url.query_params contains 'url='
    • not:
      • .href_url.query_params matches 'url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*website-5\\.com(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'website-5.com'
  4. not:
    • sender.email.domain.root_domain is 'amaterasu-for-website-5.com'
  5. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.domainequalsapi.amaterasu-for-website-5.com
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*website-5\\.com(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.domain eq "api.amaterasu-for-website-5.com"
      body.links.href_url.query_params contains "url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "amaterasu-for-website-5.com"
  not
    sender.email.domain.root_domain eq "website-5.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: api.spently.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the api.spently.com redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
// there are less than 10 unique links for api.spently.com within the body.links
and length(distinct(filter(body.links,
                           .href_url.domain.domain == "api.spently.com"
                    ),
                    .href_url.url
           )
) < 10
and any(body.links,
        .href_url.domain.domain == "api.spently.com"
        and strings.istarts_with(.href_url.path, '/api/spently/click')
        and strings.icontains(.href_url.query_params, 'url=')
        and strings.icontains(.href_url.query_params, 'type=')
        and not regex.icontains(.href_url.query_params,
                                'url=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*spently\.com(?:\&|\/|$|%2f)'
        )
)
and not sender.email.domain.root_domain == "spently.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the api.spently.com redirect. This has been exploited in the wild.

  1. inbound message
  2. length(distinct(filter(body.links, .href_url.domain.domain == 'api.spently.com'), .href_url.url)) < 10
  3. any of body.links where all hold:
    • .href_url.domain.domain is 'api.spently.com'
    • .href_url.path starts with '/api/spently/click'
    • .href_url.query_params contains 'url='
    • .href_url.query_params contains 'type='
    • not:
      • .href_url.query_params matches 'url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*spently\\.com(?:\\&|\\/|$|%2f)'
  4. not:
    • sender.email.domain.root_domain is 'spently.com'
  5. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains, strings.istarts_with. Reference lists: $high_trust_sender_root_domains.

Indicators matched (4)

FieldMatchValue
body.links[].href_url.domain.domainequalsapi.spently.com
strings.istarts_withprefix/api/spently/click
strings.icontainssubstringurl=
strings.icontainssubstringtype=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*spently\\.com(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.domain eq "api.spently.com"
      body.links.href_url.path starts_with "/api/spently/click"
      body.links.href_url.query_params contains "type="
      body.links.href_url.query_params contains "url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "spently.com"
  distinct(filter(body.links, .href_url.domain.domain == 'api.spently.com'), .href_url.url) length_compare "10"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqspently.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"spently.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Artisteer

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the Artisteer open redirect, but the sender is not Artisteer. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == 'artisteer.com'
        and strings.icontains(.href_url.query_params, 'redirect_url=')
        and strings.icontains(.href_url.query_params, 'p=affr')
)
and sender.email.domain.root_domain != 'artisteer.com'

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the Artisteer open redirect, but the sender is not Artisteer. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'artisteer.com'
    • .href_url.query_params contains 'redirect_url='
    • .href_url.query_params contains 'p=affr'
  3. sender.email.domain.root_domain is not 'artisteer.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsartisteer.com
strings.icontainssubstringredirect_url=
strings.icontainssubstringp=affr

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "artisteer.com"
      body.links.href_url.query_params contains "p=affr"
      body.links.href_url.query_params contains "redirect_url="
  sender.email.domain.root_domain ne "artisteer.com"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: artkaderne

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of an open redirect on artkaderne.dk. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "artkaderne.dk"
        and strings.icontains(.href_url.query_params, "refurl=")
)
and not sender.email.domain.root_domain == "artkaderne.dk"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of an open redirect on artkaderne.dk. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'artkaderne.dk'
    • .href_url.query_params contains 'refurl='
  3. not:
    • sender.email.domain.root_domain is 'artkaderne.dk'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsartkaderne.dk
strings.icontainssubstringrefurl=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "artkaderne.dk"
      body.links.href_url.query_params contains "refurl="
  not
    sender.email.domain.root_domain eq "artkaderne.dk"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqartkaderne.dkexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"artkaderne.dk"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open Redirect: asemailmgmteu.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the asemailmgmteu.com open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and 0 < length(body.links) < 10
and any(body.links,
        .href_url.domain.root_domain == "asemailmgmteu.com"
        and strings.icontains(.href_url.query_params, 'redirect=')
        and .display_text != "unsubscribe"
        // negate use of the redirect by asemailmgmteu.com
        and not any(.href_url.query_params_decoded["redirect"],
                    strings.parse_url(.).domain.root_domain == sender.email.domain.root_domain
                    or strings.parse_url(.).domain.root_domain == "asemailmgmteu.com"
        )
)
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the asemailmgmteu.com open redirect. This has been exploited in the wild.

  1. inbound message
  2. all of:
    • length(body.links) > 0
    • length(body.links) < 10
  3. any of body.links where all hold:
    • .href_url.domain.root_domain is 'asemailmgmteu.com'
    • .href_url.query_params contains 'redirect='
    • .display_text is not 'unsubscribe'
    • not:
      • any of .href_url.query_params_decoded['redirect'] where any holds:
        • strings.parse_url(.).domain.root_domain is sender.email.domain.root_domain
        • strings.parse_url(.).domain.root_domain is 'asemailmgmteu.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].display_text, body.links[].href_url.domain.root_domain, body.links[].href_url.query_params, body.links[].href_url.query_params_decoded['redirect'], headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains, strings.parse_url. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsasemailmgmteu.com
strings.icontainssubstringredirect=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        any(body.links.href_url.query_params_decoded['redirect'])
          or
            strings.parse_url func_call "strings.parse_url(body.links[].href_url.query_params_decoded['redirect'][]).domain.root_domain == asemailmgmteu.com"
            strings.parse_url func_call "strings.parse_url(body.links[].href_url.query_params_decoded['redirect'][]).domain.root_domain == sender.email.domain.root_domain"
      body.links.display_text ne "unsubscribe"
      body.links.href_url.domain.root_domain eq "asemailmgmteu.com"
      body.links.href_url.query_params contains "redirect="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  body.links length_compare "0"
  body.links length_compare "10"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: astroarts.co.jp

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the astroarts.co.jp redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "astroarts.co.jp"
        and strings.istarts_with(.href_url.path, '/oauth/')
        and strings.icontains(.href_url.query_params, 'redirect_uri=')
        and not regex.icontains(.href_url.query_params,
                                'redirect_uri=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*astroarts\.co\.jp(?:\&|\/|$|%2f)'
        )
)
and not sender.email.domain.root_domain == "astroarts.co.jp"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the astroarts.co.jp redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'astroarts.co.jp'
    • .href_url.path starts with '/oauth/'
    • .href_url.query_params contains 'redirect_uri='
    • not:
      • .href_url.query_params matches 'redirect_uri=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*astroarts\\.co\\.jp(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'astroarts.co.jp'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains, strings.istarts_with. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsastroarts.co.jp
strings.istarts_withprefix/oauth/
strings.icontainssubstringredirect_uri=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "redirect_uri=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*astroarts\\.co\\.jp(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.root_domain eq "astroarts.co.jp"
      body.links.href_url.path starts_with "/oauth/"
      body.links.href_url.query_params contains "redirect_uri="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "astroarts.co.jp"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqastroarts.co.jpexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"astroarts.co.jp"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Atdmt

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the Atdmt (Facebook) open redirect.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == 'ad.atdmt.com'
        and strings.ilike(.href_url.path, '*/c*')
)

Detection logic

Scope: inbound message.

Message contains use of the Atdmt (Facebook) open redirect.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'ad.atdmt.com'
    • .href_url.path matches '*/c*'

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, type.inbound. Sensors: strings.ilike.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.domainequalsad.atdmt.com
strings.ilikesubstring*/c*

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      body.links.href_url.domain.domain eq "ad.atdmt.com"
      body.links.href_url.path match "/c"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Avast

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Detects emails containing links to avast.com leveraging an open redirect

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "avast.com"
        and strings.contains(.href_url.query_params,
                             "DisplayRedirectCustomPage"
        )
)
and sender.email.domain.root_domain != "avast.com"
and (
  not profile.by_sender().solicited
  or (
    profile.by_sender().any_messages_malicious_or_spam
    and not profile.by_sender().any_messages_benign
  )
)

Detection logic

Scope: inbound message.

Detects emails containing links to avast.com leveraging an open redirect

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'avast.com'
    • .href_url.query_params contains 'DisplayRedirectCustomPage'
  3. sender.email.domain.root_domain is not 'avast.com'
  4. any of:
    • not:
      • profile.by_sender().solicited
    • all of:
      • profile.by_sender().any_messages_malicious_or_spam
      • not:
        • profile.by_sender().any_messages_benign

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.query_params, sender.email.domain.root_domain, type.inbound. Sensors: profile.by_sender, strings.contains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsavast.com
strings.containssubstringDisplayRedirectCustomPage

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        profile.by_sender func_call "profile.by_sender().any_messages_benign"
      profile.by_sender func_call "profile.by_sender().any_messages_malicious_or_spam"
    not
      profile.by_sender func_call "profile.by_sender().solicited"
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "avast.com"
      body.links.href_url.query_params contains "DisplayRedirectCustomPage"
  sender.email.domain.root_domain ne "avast.com"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: bananaguide.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the bananaguide.com redirect with url parameter. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "bananaguide.com"
        and .href_url.path == "/thru.php"
        and length(.href_url.query_params_decoded["url"]) > 0
        // Make sure the redirect is not going back to bananaguide.com
        and not any(.href_url.query_params_decoded["url"],
                    strings.parse_url(.).domain.root_domain == "bananaguide.com"
        )
)
and not sender.email.domain.root_domain == "bananaguide.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the bananaguide.com redirect with url parameter. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'bananaguide.com'
    • .href_url.path is '/thru.php'
    • length(.href_url.query_params_decoded['url']) > 0
    • not:
      • any of .href_url.query_params_decoded['url'] where:
        • strings.parse_url(.).domain.root_domain is 'bananaguide.com'
  3. not:
    • sender.email.domain.root_domain is 'bananaguide.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params_decoded['url'], headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.parse_url. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.domainequalsbananaguide.com
body.links[].href_url.pathequals/thru.php

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        any(body.links.href_url.query_params_decoded['url'])
          strings.parse_url func_call "strings.parse_url(body.links[].href_url.query_params_decoded['url'][]).domain.root_domain == bananaguide.com"
      body.links.href_url.domain.domain eq "bananaguide.com"
      body.links.href_url.path eq "/thru.php"
      body.links.href_url.query_params_decoded['url'] length_compare "0"
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "bananaguide.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqbananaguide.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"bananaguide.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: bangkoksync.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the bangkoksync.com open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "bangkoksync.com"
        and strings.icontains(.href_url.path, '/goto.php')
        and regex.icontains(.href_url.query_params,
                            'url=(?:https?|(?:\/|%2f)(?:\/|%2f))'
        )
        and any(.href_url.query_params_decoded["url"],
                strings.parse_url(.).domain.root_domain != "bangkoksync.com"
        )
)
and not sender.email.domain.root_domain == "bangkoksync.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the bangkoksync.com open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'bangkoksync.com'
    • .href_url.path contains '/goto.php'
    • .href_url.query_params matches 'url=(?:https?|(?:\\/|%2f)(?:\\/|%2f))'
    • any of .href_url.query_params_decoded['url'] where:
      • strings.parse_url(.).domain.root_domain is not 'bangkoksync.com'
  3. not:
    • sender.email.domain.root_domain is 'bangkoksync.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, body.links[].href_url.query_params_decoded['url'], headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains, strings.parse_url. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsbangkoksync.com
strings.icontainssubstring/goto.php
regex.icontainsregexurl=(?:https?|(?:\/|%2f)(?:\/|%2f))

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      any(body.links.href_url.query_params_decoded['url'])
        strings.parse_url func_call "strings.parse_url(body.links[].href_url.query_params_decoded['url'][]).domain.root_domain != bangkoksync.com"
      body.links.href_url.domain.root_domain eq "bangkoksync.com"
      body.links.href_url.path contains "/goto.php"
      body.links.href_url.query_params regex_match "url=(?:https?|(?:\\/|%2f)(?:\\/|%2f))"
  not
    sender.email.domain.root_domain eq "bangkoksync.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqbangkoksync.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"bangkoksync.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: bestdeals.today

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the bestdeals.today open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • headers.return_path
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "bestdeals.today"
        and strings.icontains(.href_url.path, '/redirect')
        and regex.icontains(.href_url.query_params, '(?:^|&)url=')
)
and sender.email.domain.root_domain != 'bestdeals.today'
and headers.return_path.domain.root_domain != "bestdeals.today"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the bestdeals.today open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'bestdeals.today'
    • .href_url.path contains '/redirect'
    • .href_url.query_params matches '(?:^|&)url='
  3. sender.email.domain.root_domain is not 'bestdeals.today'
  4. headers.return_path.domain.root_domain is not 'bestdeals.today'
  5. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, headers.return_path.domain.root_domain, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsbestdeals.today
strings.icontainssubstring/redirect
regex.icontainsregex(?:^|&)url=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "bestdeals.today"
      body.links.href_url.path contains "/redirect"
      body.links.href_url.query_params regex_match "(?:^|&)url="
  headers.return_path.domain.root_domain ne "bestdeals.today"
  sender.email.domain.root_domain ne "bestdeals.today"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: Bitrix24 URL Path

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the Bitrix24 redirect. This has been exploited in the wild for phishing.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        strings.istarts_with(.href_url.path, '/bitrix/')
        and strings.iends_with(.href_url.path, '.php')
        and strings.icontains(.href_url.query_params, 'goto=')
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the Bitrix24 redirect. This has been exploited in the wild for phishing.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.path starts with '/bitrix/'
    • .href_url.path ends with '.php'
    • .href_url.query_params contains 'goto='
  3. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains, strings.iends_with, strings.istarts_with. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
strings.istarts_withprefix/bitrix/
strings.iends_withsuffix.php
strings.icontainssubstringgoto=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.path ends_with ".php"
      body.links.href_url.path starts_with "/bitrix/"
      body.links.href_url.query_params contains "goto="
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: BMW USA

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of BMW USA's open redirect but the sender is not BMW.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • sender.email
  • type

Rule body

type.inbound
and sender.email.domain.root_domain not in~ ('bmw.com', 'bmwusa.com')
and any(body.links,
        .href_url.domain.domain == 't.msg.bmwusa.com'
        and .href_url.path =~ '/r/'
)

Detection logic

Scope: inbound message.

Message contains use of BMW USA's open redirect but the sender is not BMW.

  1. inbound message
  2. sender.email.domain.root_domain not in ('bmw.com', 'bmwusa.com')
  3. any of body.links where all hold:
    • .href_url.domain.domain is 't.msg.bmwusa.com'
    • .href_url.path is '/r/'

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, sender.email.domain.root_domain, type.inbound.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.domainequalst.msg.bmwusa.com
body.links[].href_url.pathequals/r/

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      body.links.href_url.domain.domain eq "t.msg.bmwusa.com"
      body.links.href_url.path eq "/r/"
  not
    sender.email.domain.root_domain in ["bmw.com", "bmwusa.com"]
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: bubblelife.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the bubblelife.com redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • headers.domains
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "bubblelife.com"
        and strings.istarts_with(.href_url.path, '/click/')
        and strings.icontains(.href_url.query_params, 'url=')
        and not regex.icontains(.href_url.query_params,
                                'url=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*bubblelife\.com(?:\&|\/|$|%2f)'
        )
)
// remove uses that originate from bubblelife.com
and not any(headers.domains, .root_domain == "bubblelife.com")
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the bubblelife.com redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'bubblelife.com'
    • .href_url.path starts with '/click/'
    • .href_url.query_params contains 'url='
    • not:
      • .href_url.query_params matches 'url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*bubblelife\\.com(?:\\&|\\/|$|%2f)'
  3. not:
    • any of headers.domains where:
      • .root_domain is 'bubblelife.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, headers.domains, headers.domains[].root_domain, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains, strings.istarts_with. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsbubblelife.com
strings.istarts_withprefix/click/
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*bubblelife\\.com(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.root_domain eq "bubblelife.com"
      body.links.href_url.path starts_with "/click/"
      body.links.href_url.query_params contains "url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    any(headers.domains)
      headers.domains.root_domain eq "bubblelife.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
headers.domainsarray_any(no value, null check)excludes:headers.domains

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: buildingengines.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Detects messages containing buildingengines.com redirect links that use the _redirectTo parameter to redirect users to malicious sites. This has been observed in phishing campaigns.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        // Look for buildingengines URLs
        .href_url.domain.domain == "app.buildingengines.com"
        and strings.icontains(.href_url.query_params, '_redirectTo=')
        // Make sure it's not redirecting back to buildingengines.com
        and not regex.icontains(.href_url.query_params,
                                '_redirectTo=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*buildingengines\.com(?:\&|\/|$|%2f)'
        )
)
// Exclude legitimate Building Engines domains as senders
and not sender.email.domain.root_domain == "buildingengines.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Detects messages containing buildingengines.com redirect links that use the _redirectTo parameter to redirect users to malicious sites. This has been observed in phishing campaigns.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'app.buildingengines.com'
    • .href_url.query_params contains '_redirectTo='
    • not:
      • .href_url.query_params matches '_redirectTo=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*buildingengines\\.com(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'buildingengines.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.domainequalsapp.buildingengines.com
strings.icontainssubstring_redirectTo=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "_redirectTo=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*buildingengines\\.com(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.domain eq "app.buildingengines.com"
      body.links.href_url.query_params contains "_redirectTo="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "buildingengines.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqbuildingengines.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"buildingengines.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: business.google.com website_shared URL Param

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Detects messages containing an open redirect in business.google.com's website_shared/launch_bw.html endpoint with the 'f' parameter. This has been exploited in phishing campaigns to redirect users to malicious sites.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "business.google.com"
        and strings.icontains(.href_url.path, '/website_shared/launch_bw.html')
        and strings.icontains(.href_url.query_params, 'f=')
        // Make sure the redirect is not going back to google.com
        and not regex.icontains(.href_url.query_params,
                                'f=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*google\.com(?:\&|\/|$|%2f)'
        )
)
// Exclude legitimate Google domains as senders
and not regex.icontains(sender.email.domain.root_domain, '^google')

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Detects messages containing an open redirect in business.google.com's website_shared/launch_bw.html endpoint with the 'f' parameter. This has been exploited in phishing campaigns to redirect users to malicious sites.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'business.google.com'
    • .href_url.path contains '/website_shared/launch_bw.html'
    • .href_url.query_params contains 'f='
    • not:
      • .href_url.query_params matches 'f=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*google\\.com(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain matches '^google'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalsbusiness.google.com
strings.icontainssubstring/website_shared/launch_bw.html
strings.icontainssubstringf=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "f=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*google\\.com(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.domain eq "business.google.com"
      body.links.href_url.path contains "/website_shared/launch_bw.html"
      body.links.href_url.query_params contains "f="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain regex_match "^google"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domainregex_match^googleexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"^google"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Cartoon Network

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

This rule detects the use of Cartoon Network's Denmark domain as an open redirect.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Spam
Tactics and techniquesOpen redirect, Evasion

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.sld == 'cartoonnetwork'
        // it has to be www. - not hitting the www doesn't work
        and .href_url.domain.subdomain == 'www'
        // the path startswith a double //
        and strings.starts_with(.href_url.path, '//')
        // the path has to end in a trailing /
        and strings.ends_with(.href_url.path, '/')
)

Detection logic

Scope: inbound message.

This rule detects the use of Cartoon Network's Denmark domain as an open redirect.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.sld is 'cartoonnetwork'
    • .href_url.domain.subdomain is 'www'
    • .href_url.path starts with '//'
    • .href_url.path ends with '/'

Inspects: body.links, body.links[].href_url.domain.sld, body.links[].href_url.domain.subdomain, body.links[].href_url.path, type.inbound. Sensors: strings.ends_with, strings.starts_with.

Indicators matched (4)

FieldMatchValue
body.links[].href_url.domain.sldequalscartoonnetwork
body.links[].href_url.domain.subdomainequalswww
strings.starts_withprefix//
strings.ends_withsuffix/

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      body.links.href_url.domain.sld eq "cartoonnetwork"
      body.links.href_url.domain.subdomain eq "www"
      body.links.href_url.path ends_with "/"
      body.links.href_url.path starts_with "//"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: chkc.com.hk

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the chkc.com.hk open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == 'chkc.com.hk'
        and strings.icontains(.href_url.path, 'ViewSwitcher/SwitchView')
        and strings.icontains(.href_url.query_params, 'returnUrl=')
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the chkc.com.hk open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'chkc.com.hk'
    • .href_url.path contains 'ViewSwitcher/SwitchView'
    • .href_url.query_params contains 'returnUrl='
  3. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalschkc.com.hk
strings.icontainssubstringViewSwitcher/SwitchView
strings.icontainssubstringreturnUrl=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "chkc.com.hk"
      body.links.href_url.path contains "ViewSwitcher/SwitchView"
      body.links.href_url.query_params contains "returnUrl="
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: City of Calgary

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of calgary.ca's open redirect but the sender is not the City of Calgary.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesExploit, Open redirect, Social engineering

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == 'calgary.ca'
        and .href_url.path =~ '/_layouts/cocis/DirectDownload.aspx'
        and strings.icontains(.href_url.query_params, "redirect")
)
and sender.email.domain.root_domain != 'calgary.ca'

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of calgary.ca's open redirect but the sender is not the City of Calgary.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'calgary.ca'
    • .href_url.path is '/_layouts/cocis/DirectDownload.aspx'
    • .href_url.query_params contains 'redirect'
  3. sender.email.domain.root_domain is not 'calgary.ca'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalscalgary.ca
body.links[].href_url.pathequals/_layouts/cocis/DirectDownload.aspx
strings.icontainssubstringredirect

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "calgary.ca"
      body.links.href_url.path eq "/_layouts/cocis/DirectDownload.aspx"
      body.links.href_url.query_params contains "redirect"
  sender.email.domain.root_domain ne "calgary.ca"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: Club-OS

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the Club-OS open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "club-os.com"
        and strings.icontains(.href_url.path, 'click')
        and strings.icontains(.href_url.query_params, 'target=')
        // negate hash lookup targets (not actor controlled)
        and not (
          regex.icontains(.href_url.query_params, 'target=[a-f0-9]{40}(?:$|&)')
          and strings.icontains(.href_url.query_params, '&hashLookup=true')
        )
        // negate urls that go back to club-os
        and not regex.icontains(.href_url.query_params,
                                'target=[^\&]*club-os.com/'
        )
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the Club-OS open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'club-os.com'
    • .href_url.path contains 'click'
    • .href_url.query_params contains 'target='
    • not:
      • all of:
        • .href_url.query_params matches 'target=[a-f0-9]{40}(?:$|&)'
        • .href_url.query_params contains '&hashLookup=true'
    • not:
      • .href_url.query_params matches 'target=[^\\&]*club-os.com/'
  3. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsclub-os.com
strings.icontainssubstringclick
strings.icontainssubstringtarget=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        and
          body.links.href_url.query_params contains "&hashLookup=true"
          body.links.href_url.query_params regex_match "target=[a-f0-9]{40}(?:$|&)"
      not
        body.links.href_url.query_params regex_match "target=[^\\&]*club-os.com/"
      body.links.href_url.domain.root_domain eq "club-os.com"
      body.links.href_url.path contains "click"
      body.links.href_url.query_params contains "target="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: convertcart.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the convertcart.com redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • headers.domains
  • sender.email
  • type

Rule body

type.inbound
// convertcart is used in benign messages, however, they commonly have many links
// ensure messages contain less than 10 links convertcart.com to ensure higher fidelity matching of malicious messages
and length(filter(body.links, .href_url.domain.root_domain == "convertcart.com")
) < 10
and any(body.links,
        .href_url.domain.root_domain == "convertcart.com"
        and strings.iends_with(.href_url.path, '/click')
        and strings.icontains(.href_url.query_params, 'url=')
        and not regex.icontains(.href_url.query_params,
                                'url=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*convertcart\.com(?:\&|\/|$|%2f)'
        )
        and not strings.icontains(.href_url.query_params,
                                  sender.email.domain.root_domain
        )
)
// remove uses that originate from convertcart.com
and not any(headers.domains,
            .root_domain in ("convertcart.com", "convertc.com")
)
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the convertcart.com redirect. This has been exploited in the wild.

  1. inbound message
  2. length(filter(body.links, .href_url.domain.root_domain == 'convertcart.com')) < 10
  3. any of body.links where all hold:
    • .href_url.domain.root_domain is 'convertcart.com'
    • .href_url.path ends with '/click'
    • .href_url.query_params contains 'url='
    • not:
      • .href_url.query_params matches 'url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*convertcart\\.com(?:\\&|\\/|$|%2f)'
    • not:
      • strings.icontains(.href_url.query_params)
  4. not:
    • any of headers.domains where:
      • .root_domain in ('convertcart.com', 'convertc.com')
  5. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, headers.domains, headers.domains[].root_domain, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains, strings.iends_with. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsconvertcart.com
strings.iends_withsuffix/click
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*convertcart\\.com(?:\\&|\\/|$|%2f)"
      not
        strings.icontains func_call "strings.icontains(body.links[].href_url.query_params)"
      body.links.href_url.domain.root_domain eq "convertcart.com"
      body.links.href_url.path ends_with "/click"
      body.links.href_url.query_params contains "url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    any(headers.domains)
      headers.domains.root_domain in ["convertc.com", "convertcart.com"]
  filter(body.links, .href_url.domain.root_domain == 'convertcart.com') length_compare "10"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
headers.domainsarray_any(no value, null check)excludes:headers.domains

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Dell

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the Dell open redirect, but the sender is not Dell.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == 't.em.home.dell.com'
        and .href_url.path =~ '/r/'
)
and sender.email.domain.root_domain not in ('dell.com', 'dell.ca')

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the Dell open redirect, but the sender is not Dell.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 't.em.home.dell.com'
    • .href_url.path is '/r/'
  3. sender.email.domain.root_domain not in ('dell.com', 'dell.ca')
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.domainequalst.em.home.dell.com
body.links[].href_url.pathequals/r/

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.domain eq "t.em.home.dell.com"
      body.links.href_url.path eq "/r/"
  not
    sender.email.domain.root_domain in ["dell.ca", "dell.com"]
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: designsori.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the designsori.com open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "designsori.com"
        and strings.icontains(.href_url.path, 'redirect.php')
        and regex.icontains(.href_url.query_params,
                            'url=(?:https?(?:%3a|:))?(?:%2f|\/){2}'
        )
        and not regex.icontains(.href_url.query_params,
                                'url=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*designsori\.com(?:\&|\/|$)'
        )
)
and not sender.email.domain.root_domain == "designsori.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the designsori.com open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'designsori.com'
    • .href_url.path contains 'redirect.php'
    • .href_url.query_params matches 'url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}'
    • not:
      • .href_url.query_params matches 'url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*designsori\\.com(?:\\&|\\/|$)'
  3. not:
    • sender.email.domain.root_domain is 'designsori.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsdesignsori.com
strings.icontainssubstringredirect.php
regex.icontainsregexurl=(?:https?(?:%3a|:))?(?:%2f|\/){2}

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*designsori\\.com(?:\\&|\\/|$)"
      body.links.href_url.domain.root_domain eq "designsori.com"
      body.links.href_url.path contains "redirect.php"
      body.links.href_url.query_params regex_match "url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}"
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "designsori.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqdesignsori.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"designsori.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Diesel.az

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Detects inbound messages containing links that abuse Diesel.az's open redirect functionality at '/az/redirect', where the 'url' query parameter points to an external domain. The rule flags messages where the sender is not from diesel.az and the redirect destination leads outside of the diesel.az domain.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesOpen redirect, Impersonation: Brand

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "diesel.az"
        and strings.istarts_with(.href_url.path, '/az/redirect')
        and length(.href_url.query_params_decoded["url"]) > 0
        // redirect is not going back to diesel.az
        and not any(.href_url.query_params_decoded["url"],
                    strings.parse_url(.).domain.root_domain == "diesel.az"
        )
)
and not (
  sender.email.domain.root_domain == "diesel.az"
  and coalesce(headers.auth_summary.dmarc.pass, false)
)

Detection logic

Scope: inbound message.

Detects inbound messages containing links that abuse Diesel.az's open redirect functionality at '/az/redirect', where the 'url' query parameter points to an external domain. The rule flags messages where the sender is not from diesel.az and the redirect destination leads outside of the diesel.az domain.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'diesel.az'
    • .href_url.path starts with '/az/redirect'
    • length(.href_url.query_params_decoded['url']) > 0
    • not:
      • any of .href_url.query_params_decoded['url'] where:
        • strings.parse_url(.).domain.root_domain is 'diesel.az'
  3. not:
    • all of:
      • sender.email.domain.root_domain is 'diesel.az'
      • coalesce(headers.auth_summary.dmarc.pass)

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params_decoded['url'], headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.istarts_with, strings.parse_url.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsdiesel.az
strings.istarts_withprefix/az/redirect

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        any(body.links.href_url.query_params_decoded['url'])
          strings.parse_url func_call "strings.parse_url(body.links[].href_url.query_params_decoded['url'][]).domain.root_domain == diesel.az"
      body.links.href_url.domain.root_domain eq "diesel.az"
      body.links.href_url.path starts_with "/az/redirect"
      body.links.href_url.query_params_decoded['url'] length_compare "0"
  not
    and
      coalesce func_call "coalesce(headers.auth_summary.dmarc.pass)"
      sender.email.domain.root_domain eq "diesel.az"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqdiesel.azexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"diesel.az"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: documentmailbox.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the documentmailbox.com open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "documentmailbox.com"
        and strings.icontains(.href_url.path, 'RedirectTarget.aspx')
        and strings.icontains(.href_url.query_params, 'TargetUrl=')
)
and length(filter(body.links,
                  .href_url.domain.root_domain == "documentmailbox.com"
                  and strings.icontains(.href_url.path, 'RedirectTarget.aspx')
                  and strings.icontains(.href_url.query_params, 'TargetUrl=')
           )
) == 1

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the documentmailbox.com open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'documentmailbox.com'
    • .href_url.path contains 'RedirectTarget.aspx'
    • .href_url.query_params contains 'TargetUrl='
  3. length(filter(body.links, .href_url.domain.root_domain == 'documentmailbox.com' and strings.icontains(.href_url.path, 'RedirectTarget.aspx') and strings.icontains(.href_url.query_params, 'TargetUrl='))) is 1
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsdocumentmailbox.com
strings.icontainssubstringRedirectTarget.aspx
strings.icontainssubstringTargetUrl=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "documentmailbox.com"
      body.links.href_url.path contains "RedirectTarget.aspx"
      body.links.href_url.query_params contains "TargetUrl="
  filter(body.links, .href_url.domain.root_domain == 'documentmailbox.com' and strings.icontains(.href_url.path, 'RedirectTarget.aspx') and strings.icontains(.href_url.query_params, 'TargetUrl=')) length_compare "1"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Doubleclick.net

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Doubleclick.net link leveraging an open redirect from a new or outlier sender.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • type

Rule body

type.inbound
and length(body.links) < 10
and any(body.links,
        .href_url.domain.root_domain == "doubleclick.net"
        and (
          strings.icontains(.href_url.path, "/aclk")
          or strings.icontains(.href_url.path, "/pcs/click")
          or strings.icontains(.href_url.path, "/searchads/link/click")
        )
        and regex.icontains(.href_url.query_params,
                            '&(?:adurl|ds_dest_url)=(?:[a-z]+(?:\:|%3a))?(?:\/|%2f)(?:\/|%2f)'
        )
)

Detection logic

Scope: inbound message.

Doubleclick.net link leveraging an open redirect from a new or outlier sender.

  1. inbound message
  2. length(body.links) < 10
  3. any of body.links where all hold:
    • .href_url.domain.root_domain is 'doubleclick.net'
    • any of:
      • .href_url.path contains '/aclk'
      • .href_url.path contains '/pcs/click'
      • .href_url.path contains '/searchads/link/click'
    • .href_url.query_params matches '&(?:adurl|ds_dest_url)=(?:[a-z]+(?:\\:|%3a))?(?:\\/|%2f)(?:\\/|%2f)'

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, type.inbound. Sensors: regex.icontains, strings.icontains.

Indicators matched (5)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsdoubleclick.net
strings.icontainssubstring/aclk
strings.icontainssubstring/pcs/click
strings.icontainssubstring/searchads/link/click
regex.icontainsregex&(?:adurl|ds_dest_url)=(?:[a-z]+(?:\:|%3a))?(?:\/|%2f)(?:\/|%2f)

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      or
        body.links.href_url.path contains "/aclk"
        body.links.href_url.path contains "/pcs/click"
        body.links.href_url.path contains "/searchads/link/click"
      body.links.href_url.domain.root_domain eq "doubleclick.net"
      body.links.href_url.query_params regex_match "&(?:adurl|ds_dest_url)=(?:[a-z]+(?:\\:|%3a))?(?:\\/|%2f)(?:\\/|%2f)"
  body.links length_compare "10"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: eaoko.org

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the eaoko.org redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "eaoko.org"
        and strings.icontains(.href_url.query_params, 'goto=')
        and not regex.icontains(.href_url.query_params,
                                'url=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*eaoko\.org(?:\&|\/|$|%2f)'
        )
)
and not sender.email.domain.root_domain == "eaoko.org"
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the eaoko.org redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'eaoko.org'
    • .href_url.query_params contains 'goto='
    • not:
      • .href_url.query_params matches 'url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*eaoko\\.org(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'eaoko.org'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.domainequalseaoko.org
strings.icontainssubstringgoto=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*eaoko\\.org(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.domain eq "eaoko.org"
      body.links.href_url.query_params contains "goto="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "eaoko.org"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqeaoko.orgexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"eaoko.org"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: easycamp.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the easycamp.com open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "easycamp.com"
        and regex.icontains(.href_url.query_params,
                            'redirect=(?:https?|(?:\/|%2f)(?:\/|%2f))'
        )
        and not regex.icontains(.href_url.query_params,
                                'redirect=[^\&]*easycamp\.com'
        )
)
and not sender.email.domain.root_domain == "easycamp.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the easycamp.com open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'easycamp.com'
    • .href_url.query_params matches 'redirect=(?:https?|(?:\\/|%2f)(?:\\/|%2f))'
    • not:
      • .href_url.query_params matches 'redirect=[^\\&]*easycamp\\.com'
  3. not:
    • sender.email.domain.root_domain is 'easycamp.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.root_domainequalseasycamp.com
regex.icontainsregexredirect=(?:https?|(?:\/|%2f)(?:\/|%2f))

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "redirect=[^\\&]*easycamp\\.com"
      body.links.href_url.domain.root_domain eq "easycamp.com"
      body.links.href_url.query_params regex_match "redirect=(?:https?|(?:\\/|%2f)(?:\\/|%2f))"
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "easycamp.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqeasycamp.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"easycamp.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: embluemail.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the embluemail.com redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "nts.embluemail.com"
        and strings.istarts_with(.href_url.path, '/p/cl')
        and strings.icontains(.href_url.query_params, '!')
        and regex.icontains(.href_url.query_params,
                            '\!(?:((?:%68|h)(?:%74|t){2}(?:%70|p)(?:%73|s)?)?(?:%3a|:))?(?:%2f|\/){2}'
        )
)
and not sender.email.domain.domain == "nts.embluemail.com"
and not strings.iends_with(headers.message_id, '@embluemail.com>')

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the embluemail.com redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'nts.embluemail.com'
    • .href_url.path starts with '/p/cl'
    • .href_url.query_params contains '!'
    • .href_url.query_params matches '\\!(?:((?:%68|h)(?:%74|t){2}(?:%70|p)(?:%73|s)?)?(?:%3a|:))?(?:%2f|\\/){2}'
  3. not:
    • sender.email.domain.domain is 'nts.embluemail.com'
  4. not:
    • headers.message_id ends with '@embluemail.com>'
  5. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, headers.message_id, sender.email.domain.domain, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains, strings.iends_with, strings.istarts_with. Reference lists: $high_trust_sender_root_domains.

Indicators matched (4)

FieldMatchValue
body.links[].href_url.domain.domainequalsnts.embluemail.com
strings.istarts_withprefix/p/cl
strings.icontainssubstring!
regex.icontainsregex\!(?:((?:%68|h)(?:%74|t){2}(?:%70|p)(?:%73|s)?)?(?:%3a|:))?(?:%2f|\/){2}

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.domain eq "nts.embluemail.com"
      body.links.href_url.path starts_with "/p/cl"
      body.links.href_url.query_params contains "!"
      body.links.href_url.query_params regex_match "\\!(?:((?:%68|h)(?:%74|t){2}(?:%70|p)(?:%73|s)?)?(?:%3a|:))?(?:%2f|\\/){2}"
  not
    headers.message_id ends_with "@embluemail.com>"
  not
    sender.email.domain.domain eq "nts.embluemail.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
headers.message_idends_with@embluemail.com>excludes:headers.message_id field:"headers.message_id" value:"@embluemail.com>"
sender.email.domain.domaineqnts.embluemail.comexcludes:sender.email.domain.domain field:"sender.email.domain.domain" value:"nts.embluemail.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: emlakarsa

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the emlakarsa open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "emlakarsa.net"
        and strings.icontains(.href_url.query_params, "_setLang")
        and strings.icontains(.href_url.query_params, "redirect=")
)
and sender.email.domain.root_domain != 'emlakarsa.net'
and (
  not profile.by_sender().solicited
  or (
    profile.by_sender().any_messages_malicious_or_spam
    and not profile.by_sender().any_messages_benign
  )
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the emlakarsa open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'emlakarsa.net'
    • .href_url.query_params contains '_setLang'
    • .href_url.query_params contains 'redirect='
  3. sender.email.domain.root_domain is not 'emlakarsa.net'
  4. any of:
    • not:
      • profile.by_sender().solicited
    • all of:
      • profile.by_sender().any_messages_malicious_or_spam
      • not:
        • profile.by_sender().any_messages_benign
  5. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: profile.by_sender, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsemlakarsa.net
strings.icontainssubstring_setLang
strings.icontainssubstringredirect=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  or
    and
      not
        profile.by_sender func_call "profile.by_sender().any_messages_benign"
      profile.by_sender func_call "profile.by_sender().any_messages_malicious_or_spam"
    not
      profile.by_sender func_call "profile.by_sender().solicited"
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "emlakarsa.net"
      body.links.href_url.query_params contains "_setLang"
      body.links.href_url.query_params contains "redirect="
  sender.email.domain.root_domain ne "emlakarsa.net"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: emp.eduyield.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the eduyield redirect which chains google amp. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "emp.eduyield.com"
        // the redirect field
        and strings.icontains(.href_url.query_params, "&dest=")
        and regex.icontains(.href_url.query_params,
                            '&dest=(?:https?)?(?:(?:%3a|\:)?(?:\/|%2f){2})?google\.com[^\&]*\/+amp\/+(s\/+)?'
        )
)
and (
  not profile.by_sender().solicited
  or (
    profile.by_sender().any_messages_malicious_or_spam
    and not profile.by_sender().any_messages_benign
  )
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the eduyield redirect which chains google amp. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'emp.eduyield.com'
    • .href_url.query_params contains '&dest='
    • .href_url.query_params matches '&dest=(?:https?)?(?:(?:%3a|\\:)?(?:\\/|%2f){2})?google\\.com[^\\&]*\\/+amp\\/+(s\\/+)?'
  3. any of:
    • not:
      • profile.by_sender().solicited
    • all of:
      • profile.by_sender().any_messages_malicious_or_spam
      • not:
        • profile.by_sender().any_messages_benign
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: profile.by_sender, regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalsemp.eduyield.com
strings.icontainssubstring&dest=
regex.icontainsregex&dest=(?:https?)?(?:(?:%3a|\:)?(?:\/|%2f){2})?google\.com[^\&]*\/+amp\/+(s\/+)?

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  or
    and
      not
        profile.by_sender func_call "profile.by_sender().any_messages_benign"
      profile.by_sender func_call "profile.by_sender().any_messages_malicious_or_spam"
    not
      profile.by_sender func_call "profile.by_sender().solicited"
  any(body.links)
    and
      body.links.href_url.domain.domain eq "emp.eduyield.com"
      body.links.href_url.query_params contains "&dest="
      body.links.href_url.query_params regex_match "&dest=(?:https?)?(?:(?:%3a|\\:)?(?:\\/|%2f){2})?google\\.com[^\\&]*\\/+amp\\/+(s\\/+)?"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: eodcnetworkdirect.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the eodcnetworkdirect.com redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "in.eodcnetworkdirect.com"
        and strings.icontains(.href_url.query_params, '&url=')
        and not regex.icontains(.href_url.domain.domain,
                                '&url=[^\&]*eodcnetwork(?:direct\.com|\.org)(?:\&|\/|$)'
        )
)
and not sender.email.domain.root_domain in (
  "eodcnetworkdirect.com",
  "eodcnetwork.org"
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the eodcnetworkdirect.com redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'in.eodcnetworkdirect.com'
    • .href_url.query_params contains '&url='
    • not:
      • .href_url.domain.domain matches '&url=[^\\&]*eodcnetwork(?:direct\\.com|\\.org)(?:\\&|\\/|$)'
  3. not:
    • sender.email.domain.root_domain in ('eodcnetworkdirect.com', 'eodcnetwork.org')
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.domainequalsin.eodcnetworkdirect.com
strings.icontainssubstring&url=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.domain.domain regex_match "&url=[^\\&]*eodcnetwork(?:direct\\.com|\\.org)(?:\\&|\\/|$)"
      body.links.href_url.domain.domain eq "in.eodcnetworkdirect.com"
      body.links.href_url.query_params contains "&url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain in ["eodcnetwork.org", "eodcnetworkdirect.com"]
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: events.csiro.au

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the events.csiro.au redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "events.csiro.au"
        and strings.icontains(.href_url.query_params, '&ec_url=')
        and not regex.icontains(.href_url.query_params,
                                '&ec_url=[^\&]*csiro\.au(?:\&|\/|$)'
        )
)
and not sender.email.domain.root_domain in ("csiro.au")

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the events.csiro.au redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'events.csiro.au'
    • .href_url.query_params contains '&ec_url='
    • not:
      • .href_url.query_params matches '&ec_url=[^\\&]*csiro\\.au(?:\\&|\\/|$)'
  3. not:
    • sender.email.domain.root_domain in ('csiro.au')
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.domainequalsevents.csiro.au
strings.icontainssubstring&ec_url=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "&ec_url=[^\\&]*csiro\\.au(?:\\&|\\/|$)"
      body.links.href_url.domain.domain eq "events.csiro.au"
      body.links.href_url.query_params contains "&ec_url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "csiro.au"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqcsiro.auexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"csiro.au"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: ExacTag

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the ExacTag open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "exactag.com"
        and strings.icontains(.href_url.path, 'ai.aspx')
        and strings.icontains(.href_url.query_params, 'url=')
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the ExacTag open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'exactag.com'
    • .href_url.path contains 'ai.aspx'
    • .href_url.query_params contains 'url='
  3. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsexactag.com
strings.icontainssubstringai.aspx
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "exactag.com"
      body.links.href_url.path contains "ai.aspx"
      body.links.href_url.query_params contains "url="
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: fenc.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the fenc.com open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "fenc.com"
        and .href_url.path =~ "/redirector.aspx"
        and regex.icontains(.href_url.query_params,
                            'y=(?:https?|(?:\/|%2f)(?:\/|%2f))'
        )
        and not regex.icontains(.href_url.query_params, 'y=[^\&]*fenc\.com')
)
and not sender.email.domain.root_domain == "fenc.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the fenc.com open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'fenc.com'
    • .href_url.path is '/redirector.aspx'
    • .href_url.query_params matches 'y=(?:https?|(?:\\/|%2f)(?:\\/|%2f))'
    • not:
      • .href_url.query_params matches 'y=[^\\&]*fenc\\.com'
  3. not:
    • sender.email.domain.root_domain is 'fenc.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsfenc.com
body.links[].href_url.pathequals/redirector.aspx
regex.icontainsregexy=(?:https?|(?:\/|%2f)(?:\/|%2f))

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "y=[^\\&]*fenc\\.com"
      body.links.href_url.domain.root_domain eq "fenc.com"
      body.links.href_url.path eq "/redirector.aspx"
      body.links.href_url.query_params regex_match "y=(?:https?|(?:\\/|%2f)(?:\\/|%2f))"
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "fenc.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqfenc.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"fenc.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: g7.fr

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the g7.fr open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "g7.fr"
        and strings.starts_with(.href_url.path, '//')
        and strings.ends_with(.href_url.path, '/')
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the g7.fr open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'g7.fr'
    • .href_url.path starts with '//'
    • .href_url.path ends with '/'
  3. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.ends_with, strings.starts_with. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsg7.fr
strings.starts_withprefix//
strings.ends_withsuffix/

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "g7.fr"
      body.links.href_url.path ends_with "/"
      body.links.href_url.path starts_with "//"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: giving.lluh.org

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the giving.lluh.org redirect. This redirection has been abused by threat actors in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesEvasion, Open redirect, Social engineering

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "giving.lluh.org"
        and .href_url.path =~ "/site/UserLogin"
        and strings.icontains(.href_url.query_params, 'nexturl=')
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the giving.lluh.org redirect. This redirection has been abused by threat actors in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'giving.lluh.org'
    • .href_url.path is '/site/UserLogin'
    • .href_url.query_params contains 'nexturl='
  3. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalsgiving.lluh.org
body.links[].href_url.pathequals/site/UserLogin
strings.icontainssubstringnexturl=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.domain eq "giving.lluh.org"
      body.links.href_url.path eq "/site/UserLogin"
      body.links.href_url.query_params contains "nexturl="
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Google Ad Services

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the Google Ad Services open redirect, but the sender is not Google. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == 'googleadservices.com'
        and .href_url.path =~ '/pagead/aclk'
        and strings.icontains(.href_url.query_params, "adurl=")
)
and sender.email.domain.root_domain != 'google.com'

Detection logic

Scope: inbound message.

Message contains use of the Google Ad Services open redirect, but the sender is not Google. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'googleadservices.com'
    • .href_url.path is '/pagead/aclk'
    • .href_url.query_params contains 'adurl='
  3. sender.email.domain.root_domain is not 'google.com'

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsgoogleadservices.com
body.links[].href_url.pathequals/pagead/aclk
strings.icontainssubstringadurl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "googleadservices.com"
      body.links.href_url.path eq "/pagead/aclk"
      body.links.href_url.query_params contains "adurl="
  sender.email.domain.root_domain ne "google.com"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: Hakumonkai.org

#
Severity
high
Type
rule
Source
github.com/sublime-security/sublime-rules

Detects inbound messages containing links or attachments with URLs that utilize the hakumonkai.org domain's redirect functionality (/fukkou/ref.php) to redirect users to external domains through the 'url' parameter.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • attachments
  • body
  • body.links
  • type

Rule body

type.inbound
and (
  any(body.links,
      (
        .href_url.domain.root_domain == "hakumonkai.org"
        and .href_url.path == "/fukkou/ref.php"
        and any(.href_url.query_params_decoded["url"],
                strings.parse_url(.).domain.valid
        )
      )
  )
  or any(filter(attachments, .file_type == "pdf"),
         any(file.explode(.),
             any(.scan.url.urls,
                 (
                   .domain.root_domain == "hakumonkai.org"
                   and .path == "/fukkou/ref.php"
                   and any(.query_params_decoded["url"],
                           strings.parse_url(.).domain.valid
                   )
                 )
             )
         )
  )
)

Detection logic

Scope: inbound message.

Detects inbound messages containing links or attachments with URLs that utilize the hakumonkai.org domain's redirect functionality (/fukkou/ref.php) to redirect users to external domains through the 'url' parameter.

  1. inbound message
  2. any of:
    • any of body.links where all hold:
      • .href_url.domain.root_domain is 'hakumonkai.org'
      • .href_url.path is '/fukkou/ref.php'
      • any of .href_url.query_params_decoded['url'] where:
        • strings.parse_url(.).domain.valid
    • any of filter(attachments) where:
      • any of file.explode(.) where:
        • any of .scan.url.urls where all hold:
          • .domain.root_domain is 'hakumonkai.org'
          • .path is '/fukkou/ref.php'
          • any of .query_params_decoded['url'] where:
            • strings.parse_url(.).domain.valid

Inspects: attachments[].file_type, body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params_decoded['url'], type.inbound. Sensors: file.explode, strings.parse_url.

Indicators matched (5)

FieldMatchValue
body.links[].href_url.domain.root_domainequalshakumonkai.org
body.links[].href_url.pathequals/fukkou/ref.php
attachments[].file_typeequalspdf
file.explode(filter(attachments)[])[].scan.url.urls[].domain.root_domainequalshakumonkai.org
file.explode(filter(attachments)[])[].scan.url.urls[].pathequals/fukkou/ref.php

Stages and Predicates

Stage 1: mql_rule

and
  or
    any(filter(attachments))
      any(file.explode(filter(attachments)))
        any(file.explode(filter(attachments)).scan.url.urls)
          and
            any(file.explode(filter(attachments)).scan.url.urls.query_params_decoded['url'])
              strings.parse_url func_call "strings.parse_url(file.explode(filter(attachments)[])[].scan.url.urls[].query_params_decoded['url'][]).domain.valid"
            file.explode(filter(attachments)[])[].scan.url.urls[].domain.root_domain eq "hakumonkai.org"
            file.explode(filter(attachments)[])[].scan.url.urls[].path eq "/fukkou/ref.php"
    any(body.links)
      and
        any(body.links.href_url.query_params_decoded['url'])
          strings.parse_url func_call "strings.parse_url(body.links[].href_url.query_params_decoded['url'][]).domain.valid"
        body.links.href_url.domain.root_domain eq "hakumonkai.org"
        body.links.href_url.path eq "/fukkou/ref.php"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: HHS

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Looks for use of the HHS open redirect.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == 'dcis.hhs.gov'
        and strings.ilike(.href_url.query_params, '*service*')
)

Detection logic

Scope: inbound message.

Looks for use of the HHS open redirect.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'dcis.hhs.gov'
    • .href_url.query_params matches '*service*'

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.query_params, type.inbound. Sensors: strings.ilike.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.domainequalsdcis.hhs.gov
strings.ilikesubstring*service*

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      body.links.href_url.domain.domain eq "dcis.hhs.gov"
      body.links.href_url.query_params match "service"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: ijf.org

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the ijf.org redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "ijf.org"
        and strings.istarts_with(.href_url.path, '/cookies_agree')
        and strings.icontains(.href_url.query_params, 'backTo=')
        and not regex.icontains(.href_url.query_params,
                                'backTo=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*ijf\.org(?:\&|\/|$|%2f)'
        )
)
and not sender.email.domain.root_domain == "ijf.org"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the ijf.org redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'ijf.org'
    • .href_url.path starts with '/cookies_agree'
    • .href_url.query_params contains 'backTo='
    • not:
      • .href_url.query_params matches 'backTo=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*ijf\\.org(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'ijf.org'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains, strings.istarts_with. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsijf.org
strings.istarts_withprefix/cookies_agree
strings.icontainssubstringbackTo=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "backTo=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*ijf\\.org(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.root_domain eq "ijf.org"
      body.links.href_url.path starts_with "/cookies_agree"
      body.links.href_url.query_params contains "backTo="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "ijf.org"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqijf.orgexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"ijf.org"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Indeed

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Detects emails containing links using Indeed '/r?target=xxxxxx' open redirect where the email has not come from indeed.com

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • attachments
  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and (
  (
    sender.email.domain.root_domain != "indeed.com"
    and any(body.links, "indeed_open_redirect" in .href_url.rewrite.encoders)
  )
  or any(attachments,
         .file_type == "pdf"
         and any(file.explode(.),
                 any(.scan.url.urls,
                     "indeed_open_redirect" in .rewrite.encoders
                 )
         )
  )
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Detects emails containing links using Indeed '/r?target=xxxxxx' open redirect where the email has not come from indeed.com

  1. inbound message
  2. any of:
    • all of:
      • sender.email.domain.root_domain is not 'indeed.com'
      • any of body.links where:
        • .href_url.rewrite.encoders contains 'indeed_open_redirect'
    • any of attachments where all hold:
      • .file_type is 'pdf'
      • any of file.explode(.) where:
        • any of .scan.url.urls where:
          • .rewrite.encoders contains 'indeed_open_redirect'
  3. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: attachments[].file_type, body.links, body.links[].href_url.rewrite.encoders, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: file.explode. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.rewrite.encoderscontainsindeed_open_redirect
attachments[].file_typeequalspdf
file.explode(attachments[])[].scan.url.urls[].rewrite.encoderscontainsindeed_open_redirect

Stages and Predicates

Stage 1: mql_rule

and
  or
    any(attachments)
      and
        any(file.explode(attachments))
          any(file.explode(attachments).scan.url.urls)
            file.explode(attachments).scan.url.urls.rewrite.encoders contains "indeed_open_redirect"
        attachments.file_type eq "pdf"
    and
      any(body.links)
        body.links.href_url.rewrite.encoders contains "indeed_open_redirect"
      sender.email.domain.root_domain ne "indeed.com"
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: IndiaTimes

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the IndiaTimes open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "indiatimes.com"
        and strings.icontains(.href_url.path, '/etl.php')
        and strings.icontains(.href_url.query_params, 'url=')
        // don't match on redirects to indiatimes.com
        and not regex.icontains(.href_url.query_params,
                                'url=[^\&]+\.indiatimes\.com\b'
        )
)
and (
  not profile.by_sender().solicited
  or (
    profile.by_sender().any_messages_malicious_or_spam
    and not profile.by_sender().any_messages_benign
  )
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the IndiaTimes open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'indiatimes.com'
    • .href_url.path contains '/etl.php'
    • .href_url.query_params contains 'url='
    • not:
      • .href_url.query_params matches 'url=[^\\&]+\\.indiatimes\\.com\\b'
  3. any of:
    • not:
      • profile.by_sender().solicited
    • all of:
      • profile.by_sender().any_messages_malicious_or_spam
      • not:
        • profile.by_sender().any_messages_benign
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: profile.by_sender, regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsindiatimes.com
strings.icontainssubstring/etl.php
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=[^\\&]+\\.indiatimes\\.com\\b"
      body.links.href_url.domain.root_domain eq "indiatimes.com"
      body.links.href_url.path contains "/etl.php"
      body.links.href_url.query_params contains "url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  or
    and
      not
        profile.by_sender func_call "profile.by_sender().any_messages_benign"
      profile.by_sender func_call "profile.by_sender().any_messages_malicious_or_spam"
    not
      profile.by_sender func_call "profile.by_sender().solicited"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: isadatalab.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the isadatalab.com open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • headers.return_path
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "isadatalab.com"
        and strings.icontains(.href_url.path, '/redirect')
        and regex.icontains(.href_url.query_params, '(?:^|&)url=')
)
and sender.email.domain.root_domain != 'bestdeals.today'
and headers.return_path.domain.root_domain != "bestdeals.today"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the isadatalab.com open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'isadatalab.com'
    • .href_url.path contains '/redirect'
    • .href_url.query_params matches '(?:^|&)url='
  3. sender.email.domain.root_domain is not 'bestdeals.today'
  4. headers.return_path.domain.root_domain is not 'bestdeals.today'
  5. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, headers.return_path.domain.root_domain, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsisadatalab.com
strings.icontainssubstring/redirect
regex.icontainsregex(?:^|&)url=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "isadatalab.com"
      body.links.href_url.path contains "/redirect"
      body.links.href_url.query_params regex_match "(?:^|&)url="
  headers.return_path.domain.root_domain ne "bestdeals.today"
  sender.email.domain.root_domain ne "bestdeals.today"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: JustPaste.it

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Detects inbound messages containing JustPaste.it redirect links that forward to external destinations outside of JustPaste.it. This technique abuses JustPaste.it's redirect functionality to obscure the true destination URL, bypassing link reputation checks. The rule excludes legitimate senders from JustPaste.it itself.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect, Free file host, Evasion

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "justpaste.it"
        and strings.istarts_with(.href_url.path, '/redirect/')
        // wrapped destination is not back to justpaste.it
        and not strings.icontains(.href_url.path, 'justpaste.it')
)
and not sender.email.domain.root_domain == "justpaste.it"   

Detection logic

Scope: inbound message.

Detects inbound messages containing JustPaste.it redirect links that forward to external destinations outside of JustPaste.it. This technique abuses JustPaste.it's redirect functionality to obscure the true destination URL, bypassing link reputation checks. The rule excludes legitimate senders from JustPaste.it itself.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'justpaste.it'
    • .href_url.path starts with '/redirect/'
    • not:
      • .href_url.path contains 'justpaste.it'
  3. not:
    • sender.email.domain.root_domain is 'justpaste.it'

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains, strings.istarts_with.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.domainequalsjustpaste.it
strings.istarts_withprefix/redirect/

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.path contains "justpaste.it"
      body.links.href_url.domain.domain eq "justpaste.it"
      body.links.href_url.path starts_with "/redirect/"
  not
    sender.email.domain.root_domain eq "justpaste.it"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqjustpaste.itexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"justpaste.it"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: k-mil.net

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the k-mil.net open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "k-mil.net"
        and strings.iends_with(.href_url.path, 'official_url')
        and strings.icontains(.href_url.query_params, 'u=')
        and not regex.icontains(.href_url.query_params,
                                'u=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*k-mil\.net(?:\&|\/|$)'
        )
)
and not sender.email.domain.root_domain == "k-mil.net"
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the k-mil.net open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'k-mil.net'
    • .href_url.path ends with 'official_url'
    • .href_url.query_params contains 'u='
    • not:
      • .href_url.query_params matches 'u=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*k-mil\\.net(?:\\&|\\/|$)'
  3. not:
    • sender.email.domain.root_domain is 'k-mil.net'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains, strings.iends_with. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsk-mil.net
strings.iends_withsuffixofficial_url
strings.icontainssubstringu=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "u=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*k-mil\\.net(?:\\&|\\/|$)"
      body.links.href_url.domain.root_domain eq "k-mil.net"
      body.links.href_url.path ends_with "official_url"
      body.links.href_url.query_params contains "u="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "k-mil.net"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqk-mil.netexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"k-mil.net"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Klaviyo

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the Klaviyo (kmail-lists.com) open redirect, but the link display text does not match known permutations. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Spam
Tactics and techniquesEvasion, Impersonation: Brand, Open redirect, Social engineering

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == 'manage.kmail-lists.com'
        and .href_url.path =~ '/subscriptions/subscribe/update'
        and strings.icontains(.href_url.query_params, 'r=')
        and not strings.ilike(.display_text, "*subscribe*", "*manage*")
)

Detection logic

Scope: inbound message.

Message contains use of the Klaviyo (kmail-lists.com) open redirect, but the link display text does not match known permutations. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'manage.kmail-lists.com'
    • .href_url.path is '/subscriptions/subscribe/update'
    • .href_url.query_params contains 'r='
    • not:
      • .display_text matches any of 2 patterns
        • *subscribe*
        • *manage*

Inspects: body.links, body.links[].display_text, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, type.inbound. Sensors: strings.icontains, strings.ilike.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalsmanage.kmail-lists.com
body.links[].href_url.pathequals/subscriptions/subscribe/update
strings.icontainssubstringr=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        or
          body.links.display_text match "manage"
          body.links.display_text match "subscribe"
      body.links.href_url.domain.domain eq "manage.kmail-lists.com"
      body.links.href_url.path eq "/subscriptions/subscribe/update"
      body.links.href_url.query_params contains "r="
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: labcluster.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the cm.labcluster.com/go.aspx redirect. This has been exploited in the wild for phishing.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "cm.labcluster.com"
        and strings.icontains(.href_url.path, '/go.aspx')
        and strings.icontains(.href_url.query_params, 'url=')
        and not regex.icontains(.href_url.query_params,
                                'url=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*labcluster\.com(?:\&|\/|$|%2f)'
        )
)
and not sender.email.domain.root_domain == "labcluster.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the cm.labcluster.com/go.aspx redirect. This has been exploited in the wild for phishing.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'cm.labcluster.com'
    • .href_url.path contains '/go.aspx'
    • .href_url.query_params contains 'url='
    • not:
      • .href_url.query_params matches 'url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*labcluster\\.com(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'labcluster.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalscm.labcluster.com
strings.icontainssubstring/go.aspx
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*labcluster\\.com(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.domain eq "cm.labcluster.com"
      body.links.href_url.path contains "/go.aspx"
      body.links.href_url.query_params contains "url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "labcluster.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqlabcluster.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"labcluster.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: LearningApps

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the LearningApps open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == 'learningapps.org'
        and strings.icontains(.href_url.path, 'setLanguage.php')
        and strings.icontains(.href_url.query_params, 'return=')
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the LearningApps open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'learningapps.org'
    • .href_url.path contains 'setLanguage.php'
    • .href_url.query_params contains 'return='
  3. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalslearningapps.org
strings.icontainssubstringsetLanguage.php
strings.icontainssubstringreturn=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "learningapps.org"
      body.links.href_url.path contains "setLanguage.php"
      body.links.href_url.query_params contains "return="
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Linkedin

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Detects emails containing links using Linkedin '/slink?code=xxxxx' open redirect where the email has not come from Linkedin.com

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • attachments
  • body
  • body.links
  • sender.email
  • type

Rule body

type.inbound
and (
  (
    sender.email.domain.root_domain != "linkedin.com"
    and (
      (
        any(body.links,
            .href_url.domain.root_domain == 'linkedin.com'
            and .href_url.path == '/slink'
        )
        and any(body.links, strings.ilike(.href_url.query_params, 'code=*'))
      )
      or any(body.links,
             .href_url.domain.root_domain == 'linkedin.com'
             and strings.icontains(.href_url.query_params, 'redirect_uri')
      )
    )
  )
  or any(attachments,
         .file_type == "pdf"
         and any(file.explode(.),
                 (
                   any(.scan.url.urls,
                       .domain.root_domain == 'linkedin.com'
                       and .path == '/slink'
                   )
                   and any(.scan.url.urls,
                           strings.ilike(.query_params, 'code=*')
                   )
                 )
                 or any(.scan.url.urls,
                        .domain.root_domain == 'linkedin.com'
                        and strings.icontains(.query_params, 'redirect_uri')
                 )
         )
  )
)

Detection logic

Scope: inbound message.

Detects emails containing links using Linkedin '/slink?code=xxxxx' open redirect where the email has not come from Linkedin.com

  1. inbound message
  2. any of:
    • all of:
      • sender.email.domain.root_domain is not 'linkedin.com'
      • any of:
        • all of:
          • any of body.links where all hold:
            • .href_url.domain.root_domain is 'linkedin.com'
            • .href_url.path is '/slink'
          • any of body.links where:
            • .href_url.query_params matches 'code=*'
        • any of body.links where all hold:
          • .href_url.domain.root_domain is 'linkedin.com'
          • .href_url.query_params contains 'redirect_uri'
    • any of attachments where all hold:
      • .file_type is 'pdf'
      • any of file.explode(.) where any holds:
        • all of:
          • any of .scan.url.urls where all hold:
            • .domain.root_domain is 'linkedin.com'
            • .path is '/slink'
          • any of .scan.url.urls where:
            • .query_params matches 'code=*'
        • any of .scan.url.urls where all hold:
          • .domain.root_domain is 'linkedin.com'
          • .query_params contains 'redirect_uri'

Inspects: attachments[].file_type, body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, sender.email.domain.root_domain, type.inbound. Sensors: file.explode, strings.icontains, strings.ilike.

Indicators matched (7)

FieldMatchValue
body.links[].href_url.domain.root_domainequalslinkedin.com
body.links[].href_url.pathequals/slink
strings.ilikesubstringcode=*
strings.icontainssubstringredirect_uri
attachments[].file_typeequalspdf
file.explode(attachments[])[].scan.url.urls[].domain.root_domainequalslinkedin.com
file.explode(attachments[])[].scan.url.urls[].pathequals/slink

Stages and Predicates

Stage 1: mql_rule

and
  or
    any(attachments)
      and
        any(file.explode(attachments))
          or
            and
              any(file.explode(attachments).scan.url.urls)
                and
                  file.explode(attachments[])[].scan.url.urls[].domain.root_domain eq "linkedin.com"
                  file.explode(attachments[])[].scan.url.urls[].path eq "/slink"
              any(file.explode(attachments).scan.url.urls)
                file.explode(attachments).scan.url.urls.query_params starts_with "code="
            any(file.explode(attachments).scan.url.urls)
              and
                file.explode(attachments[])[].scan.url.urls[].domain.root_domain eq "linkedin.com"
                file.explode(attachments[])[].scan.url.urls[].query_params contains "redirect_uri"
        attachments.file_type eq "pdf"
    and
      or
        and
          any(body.links)
            and
              body.links.href_url.domain.root_domain eq "linkedin.com"
              body.links.href_url.path eq "/slink"
          any(body.links)
            body.links.href_url.query_params starts_with "code="
        any(body.links)
          and
            body.links.href_url.domain.root_domain eq "linkedin.com"
            body.links.href_url.query_params contains "redirect_uri"
      sender.email.domain.root_domain ne "linkedin.com"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: LinkedIn Redirect

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of a LinkedIn Redirect. The redirect contains a 3 second delay before redirecting the browser. This redirection has been abused by threat actors in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "linkedin.com"
        and .href_url.path =~ "/redir/redirect"
        and strings.icontains(.href_url.query_params, 'url=')
        and not any(.href_url.query_params_decoded["url"],
                    strings.parse_url(.).domain.root_domain in (
                      "lnkd.in",
                      'linkedin.com'
                    )
        )
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of a LinkedIn Redirect. The redirect contains a 3 second delay before redirecting the browser. This redirection has been abused by threat actors in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'linkedin.com'
    • .href_url.path is '/redir/redirect'
    • .href_url.query_params contains 'url='
    • not:
      • any of .href_url.query_params_decoded['url'] where:
        • strings.parse_url(.).domain.root_domain in ('lnkd.in', 'linkedin.com')
  3. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, body.links[].href_url.query_params_decoded['url'], headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains, strings.parse_url. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalslinkedin.com
body.links[].href_url.pathequals/redir/redirect
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        any(body.links.href_url.query_params_decoded['url'])
          strings.parse_url func_call "strings.parse_url(body.links[].href_url.query_params_decoded['url'][]).domain.root_domain in (lnkd.in, linkedin.com)"
      body.links.href_url.domain.root_domain eq "linkedin.com"
      body.links.href_url.path eq "/redir/redirect"
      body.links.href_url.query_params contains "url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: listing.ca

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the listing.ca redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "listing.ca"
        and strings.icontains(.href_url.query_params, 'goto=')
        and not regex.icontains(.href_url.query_params,
                                'goto=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*listing\.ca(?:\&|\/|$|%2f)'
        )
)
and not sender.email.domain.root_domain == "listing.ca"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the listing.ca redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'listing.ca'
    • .href_url.query_params contains 'goto='
    • not:
      • .href_url.query_params matches 'goto=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*listing\\.ca(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'listing.ca'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.root_domainequalslisting.ca
strings.icontainssubstringgoto=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "goto=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*listing\\.ca(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.root_domain eq "listing.ca"
      body.links.href_url.query_params contains "goto="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "listing.ca"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqlisting.caexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"listing.ca"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: magic4media.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the magic4media.com open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • headers.domains
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "magic4media.com"
        and strings.icontains(.href_url.query_params, 'r=')
        and not regex.icontains(.href_url.query_params,
                                'r=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*magic4media\.com(?:\&|\/|$|%2f)'
        )
)
// remove uses that originate from magic4media.com
and not any(headers.domains, .root_domain == "magic4media.com")
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the magic4media.com open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'magic4media.com'
    • .href_url.query_params contains 'r='
    • not:
      • .href_url.query_params matches 'r=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*magic4media\\.com(?:\\&|\\/|$|%2f)'
  3. not:
    • any of headers.domains where:
      • .root_domain is 'magic4media.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, headers.domains, headers.domains[].root_domain, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsmagic4media.com
strings.icontainssubstringr=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "r=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*magic4media\\.com(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.root_domain eq "magic4media.com"
      body.links.href_url.query_params contains "r="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    any(headers.domains)
      headers.domains.root_domain eq "magic4media.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
headers.domainsarray_any(no value, null check)excludes:headers.domains

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: magiccity.ne.jp

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the magiccity.ne.jp redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "magiccity.ne.jp"
        and strings.icontains(.href_url.path, '/rl_out.cgi')
        and strings.icontains(.href_url.query_params, 'url=')
        and not regex.icontains(.href_url.query_params,
                                'url=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*magiccity\.ne\.jp(?:\&|\/|$|%2f)'
        )
)
and not sender.email.domain.root_domain == "magiccity.ne.jp"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the magiccity.ne.jp redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'magiccity.ne.jp'
    • .href_url.path contains '/rl_out.cgi'
    • .href_url.query_params contains 'url='
    • not:
      • .href_url.query_params matches 'url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*magiccity\\.ne\\.jp(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'magiccity.ne.jp'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsmagiccity.ne.jp
strings.icontainssubstring/rl_out.cgi
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*magiccity\\.ne\\.jp(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.root_domain eq "magiccity.ne.jp"
      body.links.href_url.path contains "/rl_out.cgi"
      body.links.href_url.query_params contains "url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "magiccity.ne.jp"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqmagiccity.ne.jpexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"magiccity.ne.jp"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: magneticmarketing.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the magneticmarketing.com open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "magneticmarketing.com"
        and strings.istarts_with(.href_url.path,
                                 "/_tracking/email_click/broadcast/"
        )
        and strings.icontains(.href_url.query_params, 'url=')
        // negate use of the redirect by magneticmarketing
        and not regex.icontains(.href_url.query_params,
                                'url=[^&]*magneticmarketing\.com'
        )
)
and not sender.email.domain.root_domain == "magneticmarketing.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the magneticmarketing.com open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'magneticmarketing.com'
    • .href_url.path starts with '/_tracking/email_click/broadcast/'
    • .href_url.query_params contains 'url='
    • not:
      • .href_url.query_params matches 'url=[^&]*magneticmarketing\\.com'
  3. not:
    • sender.email.domain.root_domain is 'magneticmarketing.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains, strings.istarts_with. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsmagneticmarketing.com
strings.istarts_withprefix/_tracking/email_click/broadcast/
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=[^&]*magneticmarketing\\.com"
      body.links.href_url.domain.root_domain eq "magneticmarketing.com"
      body.links.href_url.path starts_with "/_tracking/email_click/broadcast/"
      body.links.href_url.query_params contains "url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "magneticmarketing.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqmagneticmarketing.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"magneticmarketing.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: mail.spiceworks.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the mail.spiceworks.com redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "mail.spiceworks.com"
        and strings.icontains(.href_url.query_params,
                              '_externalContentRedirect'
        )
        and not regex.icontains(.href_url.query_params,
                                '_externalContentRedirect=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*spiceworks\.com(?:\&|\/|$|%2f)'
        )
)
and not sender.email.domain.root_domain == "spiceworks.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the mail.spiceworks.com redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'mail.spiceworks.com'
    • .href_url.query_params contains '_externalContentRedirect'
    • not:
      • .href_url.query_params matches '_externalContentRedirect=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*spiceworks\\.com(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'spiceworks.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.domainequalsmail.spiceworks.com
strings.icontainssubstring_externalContentRedirect

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "_externalContentRedirect=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*spiceworks\\.com(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.domain eq "mail.spiceworks.com"
      body.links.href_url.query_params contains "_externalContentRedirect"
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "spiceworks.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqspiceworks.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"spiceworks.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Mailtrack Korea

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Detects messages containing links to mailtrack.ksd.or.kr tracking service that redirect to external domains, potentially bypassing security controls through the legitimate Korean mail tracking infrastructure.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, BEC/Fraud
Tactics and techniquesOpen redirect, Evasion

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "mailtrack.ksd.or.kr"
        and .href_url.path == "/TMS/tracking"
        and "url" in~ keys(.href_url.query_params_decoded)
        and not any(regex.iextract(.href_url.query_params,
                                   'url=([^&]+)(?:\&|\/|$)'
                    ),
                    strings.parse_url(.groups[0]).domain.root_domain == ..href_url.domain.root_domain
        )
)

Detection logic

Scope: inbound message.

Detects messages containing links to mailtrack.ksd.or.kr tracking service that redirect to external domains, potentially bypassing security controls through the legitimate Korean mail tracking infrastructure.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'mailtrack.ksd.or.kr'
    • .href_url.path is '/TMS/tracking'
    • keys(.href_url.query_params_decoded) contains 'url'
    • not:
      • any of regex.iextract(.href_url.query_params) where:
        • strings.parse_url(.groups[0]).domain.root_domain is .href_url.domain.root_domain

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, body.links[].href_url.query_params_decoded, type.inbound. Sensors: regex.iextract, strings.parse_url.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalsmailtrack.ksd.or.kr
body.links[].href_url.pathequals/TMS/tracking
keys(body.links[].href_url.query_params_decoded)containsurl

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        any(regex.iextract(body.links.href_url.query_params))
          strings.parse_url func_call "strings.parse_url(regex.iextract(body.links[].href_url.query_params)[].groups[0]).domain.root_domain == body.links[].href_url.domain.root_domain"
      body.links.href_url.domain.domain eq "mailtrack.ksd.or.kr"
      body.links.href_url.path eq "/TMS/tracking"
      keys(body.links[].href_url.query_params_decoded) contains "url"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: marketing.edinburghairport.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of a marketing.edinburghairport.com redirect. This redirection has been abused by threat actors in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesEvasion, Open redirect, Social engineering

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "marketing.edinburghairport.com"
        and strings.icontains(.href_url.query_params,
                              'externalContentRedirect='
        )
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    (
      sender.email.domain.root_domain in $high_trust_sender_root_domains
      or sender.email.domain.root_domain == "edinburghairport.com"
    )
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of a marketing.edinburghairport.com redirect. This redirection has been abused by threat actors in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'marketing.edinburghairport.com'
    • .href_url.query_params contains 'externalContentRedirect='
  3. any of:
    • all of:
      • any of:
        • sender.email.domain.root_domain in $high_trust_sender_root_domains
        • sender.email.domain.root_domain is 'edinburghairport.com'
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalsmarketing.edinburghairport.com
strings.icontainssubstringexternalContentRedirect=
sender.email.domain.root_domainequalsedinburghairport.com

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
      or
        sender.email.domain.root_domain eq "edinburghairport.com"
         macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.domain eq "marketing.edinburghairport.com"
      body.links.href_url.query_params contains "externalContentRedirect="
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: McGill University

#
Severity
low
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of McGill University's open redirect but the sender is not McGill University.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == 'myalumni.mcgill.ca'
        and .href_url.path =~ '/redirect.aspx'
)
and any(body.links, strings.ilike(.href_url.query_params, '*tokenUrl=*'))
and sender.email.domain.root_domain != 'mcgill.ca'

Detection logic

Scope: inbound message.

Message contains use of McGill University's open redirect but the sender is not McGill University.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'myalumni.mcgill.ca'
    • .href_url.path is '/redirect.aspx'
  3. any of body.links where:
    • .href_url.query_params matches '*tokenUrl=*'
  4. sender.email.domain.root_domain is not 'mcgill.ca'

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, sender.email.domain.root_domain, type.inbound. Sensors: strings.ilike.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalsmyalumni.mcgill.ca
body.links[].href_url.pathequals/redirect.aspx
strings.ilikesubstring*tokenUrl=*

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      body.links.href_url.domain.domain eq "myalumni.mcgill.ca"
      body.links.href_url.path eq "/redirect.aspx"
  any(body.links)
    body.links.href_url.query_params match "tokenUrl="
  sender.email.domain.root_domain ne "mcgill.ca"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: Medium

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the Medium open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "medium.com"
        and strings.icontains(.href_url.path, "/global-identity-2")
        and strings.icontains(.href_url.query_params, "redirectUrl=")
        // negate redirects to medium.com
        and not regex.icontains(.href_url.query_params,
                                'redirectUrl=(?:(?:https?(?:%3a|:))?(?:%2f|\/){2})?(?:[a-z0-9]+\.)*medium\.com'
        )
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the Medium open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'medium.com'
    • .href_url.path contains '/global-identity-2'
    • .href_url.query_params contains 'redirectUrl='
    • not:
      • .href_url.query_params matches 'redirectUrl=(?:(?:https?(?:%3a|:))?(?:%2f|\\/){2})?(?:[a-z0-9]+\\.)*medium\\.com'
  3. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsmedium.com
strings.icontainssubstring/global-identity-2
strings.icontainssubstringredirectUrl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "redirectUrl=(?:(?:https?(?:%3a|:))?(?:%2f|\\/){2})?(?:[a-z0-9]+\\.)*medium\\.com"
      body.links.href_url.domain.root_domain eq "medium.com"
      body.links.href_url.path contains "/global-identity-2"
      body.links.href_url.query_params contains "redirectUrl="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Meta --> YouTube Redirection Chain

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of a redirect chain which involves Meta and YouTube. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "l.work.meta.com"
        // the redirect field
        and strings.icontains(.href_url.query_params, "u=")
        and regex.icontains(.href_url.query_params,
                            'u=(?:https?)?(?:(?:%3a|\:)?(?:\/|%2f){2})?youtube\.com[^\&]*\/+logout.*continue='
        )
)

Detection logic

Scope: inbound message.

Message contains use of a redirect chain which involves Meta and YouTube. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'l.work.meta.com'
    • .href_url.query_params contains 'u='
    • .href_url.query_params matches 'u=(?:https?)?(?:(?:%3a|\\:)?(?:\\/|%2f){2})?youtube\\.com[^\\&]*\\/+logout.*continue='

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.query_params, type.inbound. Sensors: regex.icontains, strings.icontains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalsl.work.meta.com
strings.icontainssubstringu=
regex.icontainsregexu=(?:https?)?(?:(?:%3a|\:)?(?:\/|%2f){2})?youtube\.com[^\&]*\/+logout.*continue=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      body.links.href_url.domain.domain eq "l.work.meta.com"
      body.links.href_url.query_params contains "u="
      body.links.href_url.query_params regex_match "u=(?:https?)?(?:(?:%3a|\\:)?(?:\\/|%2f){2})?youtube\\.com[^\\&]*\\/+logout.*continue="
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: mindmixer.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the mindmixer.com redirect. This has been exploited in the wild for phishing.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "auth.mindmixer.com"
        and strings.icontains(.href_url.path, '/GetAuthCookie')
        and strings.icontains(.href_url.query_params, 'returnUrl=')
        and not regex.icontains(.href_url.query_params,
                                'returnUrl=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*mindmixer\.com(?:\&|\/|$|%2f)'
        )
)
and not sender.email.domain.root_domain == "mindmixer.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the mindmixer.com redirect. This has been exploited in the wild for phishing.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'auth.mindmixer.com'
    • .href_url.path contains '/GetAuthCookie'
    • .href_url.query_params contains 'returnUrl='
    • not:
      • .href_url.query_params matches 'returnUrl=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*mindmixer\\.com(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'mindmixer.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalsauth.mindmixer.com
strings.icontainssubstring/GetAuthCookie
strings.icontainssubstringreturnUrl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "returnUrl=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*mindmixer\\.com(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.domain eq "auth.mindmixer.com"
      body.links.href_url.path contains "/GetAuthCookie"
      body.links.href_url.query_params contains "returnUrl="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "mindmixer.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqmindmixer.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"mindmixer.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: MSN

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message uses an MSN open redirect. Sample (benign) redirect to sublimesecurity[.]com: https[:]//www[.]msn[.]com/en-gb/lifestyle/rf-best-products-uk/redirect?url=aHR0cHM6Ly93d3cuc3VibGltZXNlY3VyaXR5LmNvbQ==

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "msn.com"
        and .href_url.path =~ "/en-gb/lifestyle/rf-best-products-uk/redirect"
        and strings.icontains(.href_url.query_params, "url")
)

Detection logic

Scope: inbound message.

Message uses an MSN open redirect. Sample (benign) redirect to sublimesecurity[.]com: https[:]//www[.]msn[.]com/en-gb/lifestyle/rf-best-products-uk/redirect?url=aHR0cHM6Ly93d3cuc3VibGltZXNlY3VyaXR5LmNvbQ==

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'msn.com'
    • .href_url.path is '/en-gb/lifestyle/rf-best-products-uk/redirect'
    • .href_url.query_params contains 'url'

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, type.inbound. Sensors: strings.icontains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsmsn.com
body.links[].href_url.pathequals/en-gb/lifestyle/rf-best-products-uk/redirect
strings.icontainssubstringurl

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "msn.com"
      body.links.href_url.path eq "/en-gb/lifestyle/rf-best-products-uk/redirect"
      body.links.href_url.query_params contains "url"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: museepicassoparis.fr

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the museepicassoparis.fr open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "museepicassoparis.fr"
        and strings.iends_with(.href_url.path, 'registerVisit')
        and strings.icontains(.href_url.query_params, 'tracker=')
        and strings.icontains(.href_url.query_params, 'organization=')
        and strings.icontains(.href_url.query_params, 'seasonId=')
        and strings.icontains(.href_url.query_params, 'redirectTo=')
        and not regex.icontains(.href_url.query_params,
                                'redirectTo=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*museepicassoparis\.fr(?:\&|\/|$|%2f)'
        )
)
and not sender.email.domain.root_domain == "museepicassoparis.fr"
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the museepicassoparis.fr open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'museepicassoparis.fr'
    • .href_url.path ends with 'registerVisit'
    • .href_url.query_params contains 'tracker='
    • .href_url.query_params contains 'organization='
    • .href_url.query_params contains 'seasonId='
    • .href_url.query_params contains 'redirectTo='
    • not:
      • .href_url.query_params matches 'redirectTo=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*museepicassoparis\\.fr(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'museepicassoparis.fr'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains, strings.iends_with. Reference lists: $high_trust_sender_root_domains.

Indicators matched (6)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsmuseepicassoparis.fr
strings.iends_withsuffixregisterVisit
strings.icontainssubstringtracker=
strings.icontainssubstringorganization=
strings.icontainssubstringseasonId=
strings.icontainssubstringredirectTo=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "redirectTo=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*museepicassoparis\\.fr(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.root_domain eq "museepicassoparis.fr"
      body.links.href_url.path ends_with "registerVisit"
      body.links.href_url.query_params contains "organization="
      body.links.href_url.query_params contains "redirectTo="
      body.links.href_url.query_params contains "seasonId="
      body.links.href_url.query_params contains "tracker="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "museepicassoparis.fr"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqmuseepicassoparis.frexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"museepicassoparis.fr"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Nested Doubleclick.net

#
Severity
high
Type
rule
Source
github.com/sublime-security/sublime-rules

Doubleclick.net link leveraging a nested doubleclick.net open redirect from a new or outlier sender. The unusual behavior of nesting a doubleclick URL inside another doubleclick link warrants increasing the severity of this rule.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • type

Rule body

type.inbound
and length(body.links) < 10
and any(body.links,
        .href_url.domain.root_domain == "doubleclick.net"
        and (
          strings.icontains(.href_url.path, "/aclk")
          or strings.icontains(.href_url.path, "/pcs/click")
          or strings.icontains(.href_url.path, "/searchads/link/click")
        )
        and regex.icontains(.href_url.query_params,
                            '&(?:adurl|ds_dest_url)=(?:https?(\:|%3a))?(?:\/|%2f)(?:\/|%2f)adclick.g.doubleclick.net'
        )
)

Detection logic

Scope: inbound message.

Doubleclick.net link leveraging a nested doubleclick.net open redirect from a new or outlier sender. The unusual behavior of nesting a doubleclick URL inside another doubleclick link warrants increasing the severity of this rule.

  1. inbound message
  2. length(body.links) < 10
  3. any of body.links where all hold:
    • .href_url.domain.root_domain is 'doubleclick.net'
    • any of:
      • .href_url.path contains '/aclk'
      • .href_url.path contains '/pcs/click'
      • .href_url.path contains '/searchads/link/click'
    • .href_url.query_params matches '&(?:adurl|ds_dest_url)=(?:https?(\\:|%3a))?(?:\\/|%2f)(?:\\/|%2f)adclick.g.doubleclick.net'

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, type.inbound. Sensors: regex.icontains, strings.icontains.

Indicators matched (5)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsdoubleclick.net
strings.icontainssubstring/aclk
strings.icontainssubstring/pcs/click
strings.icontainssubstring/searchads/link/click
regex.icontainsregex&(?:adurl|ds_dest_url)=(?:https?(\:|%3a))?(?:\/|%2f)(?:\/|%2f)adclick.g.doubleclick.net

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      or
        body.links.href_url.path contains "/aclk"
        body.links.href_url.path contains "/pcs/click"
        body.links.href_url.path contains "/searchads/link/click"
      body.links.href_url.domain.root_domain eq "doubleclick.net"
      body.links.href_url.query_params regex_match "&(?:adurl|ds_dest_url)=(?:https?(\\:|%3a))?(?:\\/|%2f)(?:\\/|%2f)adclick.g.doubleclick.net"
  body.links length_compare "10"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Newegg

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the Newegg open redirect, but the sender is not Newegg. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == 'newegg.com'
        and .href_url.path =~ '/rts/go2.aspx'
        and strings.icontains(.href_url.query_params, "x=")
)
and sender.email.domain.root_domain != 'newegg.com'

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the Newegg open redirect, but the sender is not Newegg. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'newegg.com'
    • .href_url.path is '/rts/go2.aspx'
    • .href_url.query_params contains 'x='
  3. sender.email.domain.root_domain is not 'newegg.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsnewegg.com
body.links[].href_url.pathequals/rts/go2.aspx
strings.icontainssubstringx=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "newegg.com"
      body.links.href_url.path eq "/rts/go2.aspx"
      body.links.href_url.query_params contains "x="
  sender.email.domain.root_domain ne "newegg.com"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: next2.io

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of a next.io redirect. This redirection has been abused by threat actors in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesEvasion, Open redirect, Social engineering

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "c.next2.io"
        and .href_url.path =~ "/api/ads"
        and strings.icontains(.href_url.query_params, 'fallback_url=')
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of a next.io redirect. This redirection has been abused by threat actors in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'c.next2.io'
    • .href_url.path is '/api/ads'
    • .href_url.query_params contains 'fallback_url='
  3. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalsc.next2.io
body.links[].href_url.pathequals/api/ads
strings.icontainssubstringfallback_url=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.domain eq "c.next2.io"
      body.links.href_url.path eq "/api/ads"
      body.links.href_url.query_params contains "fallback_url="
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: nowlifestyle.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the nowlifestyle.com open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "nowlifestyle.com"
        and strings.icontains(.href_url.path, "/redir.php")
        and regex.icontains(.href_url.query_params,
                            'url=(?:https?|(?:\/|%2f)(?:\/|%2f))'
        )
        and not regex.icontains(.href_url.query_params,
                                'url=[^\&]*nowlifestyle\.com'
        )
)
and not sender.email.domain.root_domain == "nowlifestyle.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the nowlifestyle.com open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'nowlifestyle.com'
    • .href_url.path contains '/redir.php'
    • .href_url.query_params matches 'url=(?:https?|(?:\\/|%2f)(?:\\/|%2f))'
    • not:
      • .href_url.query_params matches 'url=[^\\&]*nowlifestyle\\.com'
  3. not:
    • sender.email.domain.root_domain is 'nowlifestyle.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsnowlifestyle.com
strings.icontainssubstring/redir.php
regex.icontainsregexurl=(?:https?|(?:\/|%2f)(?:\/|%2f))

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=[^\\&]*nowlifestyle\\.com"
      body.links.href_url.domain.root_domain eq "nowlifestyle.com"
      body.links.href_url.path contains "/redir.php"
      body.links.href_url.query_params regex_match "url=(?:https?|(?:\\/|%2f)(?:\\/|%2f))"
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "nowlifestyle.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqnowlifestyle.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"nowlifestyle.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: obunsha.co.jp

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Detects messages containing Obunsha's passnavi redirect service that can be exploited to redirect users to malicious sites. This has been used in phishing campaigns.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        // Look for Obunsha passnavi URLs
        .href_url.domain.domain == "passnavi.obunsha.co.jp"
        and strings.icontains(.href_url.path, '/ct.html')
        and strings.icontains(.href_url.query_params, 'uri=')
        // Make sure it's not redirecting back to obunsha domains
        and not regex.icontains(.href_url.query_params,
                                'uri=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*obunsha\.co\.jp(?:\&|\/|$|%2f)'
        )
)
// Exclude legitimate Obunsha domains as senders
and not sender.email.domain.root_domain == "obunsha.co.jp"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Detects messages containing Obunsha's passnavi redirect service that can be exploited to redirect users to malicious sites. This has been used in phishing campaigns.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'passnavi.obunsha.co.jp'
    • .href_url.path contains '/ct.html'
    • .href_url.query_params contains 'uri='
    • not:
      • .href_url.query_params matches 'uri=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*obunsha\\.co\\.jp(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'obunsha.co.jp'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalspassnavi.obunsha.co.jp
strings.icontainssubstring/ct.html
strings.icontainssubstringuri=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "uri=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*obunsha\\.co\\.jp(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.domain eq "passnavi.obunsha.co.jp"
      body.links.href_url.path contains "/ct.html"
      body.links.href_url.query_params contains "uri="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "obunsha.co.jp"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqobunsha.co.jpexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"obunsha.co.jp"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Panera Bread

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Looks for use of the Panera Bread open redirect coming from someone other than Panera.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • sender.email
  • type

Rule body

type.inbound
and 0 < length(body.links) < 10
and any(body.links,
        .href_url.domain.domain == 't.e1.panerabread.com'
        and .href_url.path =~ '/r/'
)
and sender.email.domain.root_domain != 'panerabread.com'

Detection logic

Scope: inbound message.

Looks for use of the Panera Bread open redirect coming from someone other than Panera.

  1. inbound message
  2. all of:
    • length(body.links) > 0
    • length(body.links) < 10
  3. any of body.links where all hold:
    • .href_url.domain.domain is 't.e1.panerabread.com'
    • .href_url.path is '/r/'
  4. sender.email.domain.root_domain is not 'panerabread.com'

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, sender.email.domain.root_domain, type.inbound.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.domainequalst.e1.panerabread.com
body.links[].href_url.pathequals/r/

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      body.links.href_url.domain.domain eq "t.e1.panerabread.com"
      body.links.href_url.path eq "/r/"
  body.links length_compare "0"
  body.links length_compare "10"
  sender.email.domain.root_domain ne "panerabread.com"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: people.anuneo.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of a people.anuneo.com redirect. This redirection has been abused by threat actors in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesEvasion, Open redirect, Social engineering

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "people.anuneo.com"
        and .href_url.path =~ "/redir.php"
        and strings.icontains(.href_url.query_params, 'url=')
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of a people.anuneo.com redirect. This redirection has been abused by threat actors in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'people.anuneo.com'
    • .href_url.path is '/redir.php'
    • .href_url.query_params contains 'url='
  3. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalspeople.anuneo.com
body.links[].href_url.pathequals/redir.php
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.domain eq "people.anuneo.com"
      body.links.href_url.path eq "/redir.php"
      body.links.href_url.query_params contains "url="
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: phoenixartstudio.net

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the Phoenix Art Studio redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "phoenixartstudio.net"
        // the redirect field
        and regex.icontains(.href_url.query_params, 'keyvalue=\d+(?:&|$)')
        and strings.icontains(.href_url.query_params, '&page=')
        and not regex.icontains(.href_url.query_params,
                                '&page=[^\&]*phoenixartstudio\.net(?:\&|\/|$)'
        )
)
and not sender.email.domain.root_domain in ("phoenixartstudio.net")

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the Phoenix Art Studio redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'phoenixartstudio.net'
    • .href_url.query_params matches 'keyvalue=\\d+(?:&|$)'
    • .href_url.query_params contains '&page='
    • not:
      • .href_url.query_params matches '&page=[^\\&]*phoenixartstudio\\.net(?:\\&|\\/|$)'
  3. not:
    • sender.email.domain.root_domain in ('phoenixartstudio.net')
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsphoenixartstudio.net
regex.icontainsregexkeyvalue=\d+(?:&|$)
strings.icontainssubstring&page=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "&page=[^\\&]*phoenixartstudio\\.net(?:\\&|\\/|$)"
      body.links.href_url.domain.root_domain eq "phoenixartstudio.net"
      body.links.href_url.query_params contains "&page="
      body.links.href_url.query_params regex_match "keyvalue=\\d+(?:&|$)"
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "phoenixartstudio.net"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqphoenixartstudio.netexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"phoenixartstudio.net"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: PIRL San Diego

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the PIRL San Diego open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "pirlsandiego.net"
        and strings.icontains(.href_url.path, '/LinkClick.aspx')
        and strings.icontains(.href_url.url, 'link=')
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the PIRL San Diego open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'pirlsandiego.net'
    • .href_url.path contains '/LinkClick.aspx'
    • .href_url.url contains 'link='
  3. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.url, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalspirlsandiego.net
strings.icontainssubstring/LinkClick.aspx
strings.icontainssubstringlink=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "pirlsandiego.net"
      body.links.href_url.path contains "/LinkClick.aspx"
      body.links.href_url.url contains "link="
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: plasticsurgery.or.kr

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the plasticsurgery.or.kr open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "plasticsurgery.or.kr"
        and strings.icontains(.href_url.path, '/bbs/link.php')
        and strings.icontains(.href_url.query_params, 'code=')
        and strings.icontains(.href_url.query_params, 'url=')
        and not regex.icontains(.href_url.query_params,
                                'url=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*plasticsurgery\.or\.kr(?:\&|\/|$)'
        )
)
and not sender.email.domain.root_domain == "plasticsurgery.or.kr"
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the plasticsurgery.or.kr open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'plasticsurgery.or.kr'
    • .href_url.path contains '/bbs/link.php'
    • .href_url.query_params contains 'code='
    • .href_url.query_params contains 'url='
    • not:
      • .href_url.query_params matches 'url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*plasticsurgery\\.or\\.kr(?:\\&|\\/|$)'
  3. not:
    • sender.email.domain.root_domain is 'plasticsurgery.or.kr'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (4)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsplasticsurgery.or.kr
strings.icontainssubstring/bbs/link.php
strings.icontainssubstringcode=
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*plasticsurgery\\.or\\.kr(?:\\&|\\/|$)"
      body.links.href_url.domain.root_domain eq "plasticsurgery.or.kr"
      body.links.href_url.path contains "/bbs/link.php"
      body.links.href_url.query_params contains "code="
      body.links.href_url.query_params contains "url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "plasticsurgery.or.kr"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqplasticsurgery.or.krexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"plasticsurgery.or.kr"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: pmifunds.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the pmifunds.com redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • headers.domains
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "trk.pmifunds.com"
        and strings.icontains(.href_url.query_params, 'l=')
        // not links where they redirect to pmifunds.com
        and not regex.icontains(.href_url.query_params, 'l=[^&]*pmifunds\.com')
)
// remove uses that originate from pmifunds.com
and not any(headers.domains, .root_domain == "pmifunds.com")

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the pmifunds.com redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'trk.pmifunds.com'
    • .href_url.query_params contains 'l='
    • not:
      • .href_url.query_params matches 'l=[^&]*pmifunds\\.com'
  3. not:
    • any of headers.domains where:
      • .root_domain is 'pmifunds.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, headers.domains, headers.domains[].root_domain, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.domainequalstrk.pmifunds.com
strings.icontainssubstringl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "l=[^&]*pmifunds\\.com"
      body.links.href_url.domain.domain eq "trk.pmifunds.com"
      body.links.href_url.query_params contains "l="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    any(headers.domains)
      headers.domains.root_domain eq "pmifunds.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
headers.domainsarray_any(no value, null check)excludes:headers.domains

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: predictiveresponse.net

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the predictiveresponse.net open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • headers.domains
  • headers.hops
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "predictiveresponse.net"
        and strings.icontains(.href_url.query_params, 'redirect=')
        and not regex.icontains(.href_url.query_params,
                                'redirect=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*predictiveresponse\.net(?:\&|\/|$)'
        )
)
and not sender.email.domain.root_domain == "predictiveresponse.net"
// negate use of predictiveresponse infra
and not any(headers.domains, .root_domain == "predictiveresponse.net")
and not any(headers.hops,
            any(.fields,
                .name == "List-Unsubscribe"
                and strings.iends_with(.value, '@predictiveresponse.net>')
            )
)
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the predictiveresponse.net open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'predictiveresponse.net'
    • .href_url.query_params contains 'redirect='
    • not:
      • .href_url.query_params matches 'redirect=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*predictiveresponse\\.net(?:\\&|\\/|$)'
  3. not:
    • sender.email.domain.root_domain is 'predictiveresponse.net'
  4. not:
    • any of headers.domains where:
      • .root_domain is 'predictiveresponse.net'
  5. not:
    • any of headers.hops where:
      • any of .fields where all hold:
        • .name is 'List-Unsubscribe'
        • .value ends with '@predictiveresponse.net>'
  6. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, headers.domains, headers.domains[].root_domain, headers.hops, headers.hops[].fields, headers.hops[].fields[].name, headers.hops[].fields[].value, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains, strings.iends_with. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.root_domainequalspredictiveresponse.net
strings.icontainssubstringredirect=

Stages and Predicates

Stage 1: mql_rule

and
  not
    any(headers.hops)
      any(headers.hops.fields)
        and
          headers.hops.fields[].name eq "List-Unsubscribe"
          headers.hops.fields[].value ends_with "@predictiveresponse.net>"
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "redirect=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*predictiveresponse\\.net(?:\\&|\\/|$)"
      body.links.href_url.domain.root_domain eq "predictiveresponse.net"
      body.links.href_url.query_params contains "redirect="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    any(headers.domains)
      headers.domains.root_domain eq "predictiveresponse.net"
  not
    sender.email.domain.root_domain eq "predictiveresponse.net"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
headers.hopsarray_any(no value, null check)excludes:headers.hops
headers.domainsarray_any(no value, null check)excludes:headers.domains
sender.email.domain.root_domaineqpredictiveresponse.netexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"predictiveresponse.net"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: PremierBet

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the PremierBet open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "premierbet.com"
        and strings.icontains(.href_url.query_params, 'returnUrl=')
)
and not sender.email.domain.root_domain == "premierbet.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the PremierBet open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'premierbet.com'
    • .href_url.query_params contains 'returnUrl='
  3. not:
    • sender.email.domain.root_domain is 'premierbet.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.root_domainequalspremierbet.com
strings.icontainssubstringreturnUrl=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "premierbet.com"
      body.links.href_url.query_params contains "returnUrl="
  not
    sender.email.domain.root_domain eq "premierbet.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqpremierbet.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"premierbet.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: qrxtech.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the qrxtech.com open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • headers.domains
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "qrxtech.com"
        and strings.iends_with(.href_url.path, 'XMLServer.aspx')
        and strings.icontains(.href_url.query_params, 'HREF=')
        and strings.icontains(.href_url.query_params, 'FUNC=')
        and not strings.icontains(.href_url.query_params,
                                  'HREF=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*qrxtech\.com(?:\&|\/|$)'
        )
)
// remove uses that originate from qrxtech.com
and not any(headers.domains, .root_domain == "qrxtech.com")
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the qrxtech.com open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'qrxtech.com'
    • .href_url.path ends with 'XMLServer.aspx'
    • .href_url.query_params contains 'HREF='
    • .href_url.query_params contains 'FUNC='
    • not:
      • .href_url.query_params contains 'HREF=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*qrxtech\\.com(?:\\&|\\/|$)'
  3. not:
    • any of headers.domains where:
      • .root_domain is 'qrxtech.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, headers.domains, headers.domains[].root_domain, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains, strings.iends_with. Reference lists: $high_trust_sender_root_domains.

Indicators matched (4)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsqrxtech.com
strings.iends_withsuffixXMLServer.aspx
strings.icontainssubstringHREF=
strings.icontainssubstringFUNC=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params contains "HREF=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*qrxtech\\.com(?:\\&|\\/|$)"
      body.links.href_url.domain.root_domain eq "qrxtech.com"
      body.links.href_url.path ends_with "XMLServer.aspx"
      body.links.href_url.query_params contains "FUNC="
      body.links.href_url.query_params contains "HREF="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    any(headers.domains)
      headers.domains.root_domain eq "qrxtech.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
headers.domainsarray_any(no value, null check)excludes:headers.domains

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: queue.swytchbike.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the queue.swytchbike.com open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesImpersonation: Brand, Social engineering, Open redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • headers.return_path
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "queue.swytchbike.com"
        and strings.icontains(.href_url.path, '/order')
        and regex.icontains(.href_url.query_params, '(?:^|&)target=')
)
and sender.email.domain.root_domain != 'swytchbike.com'
and headers.return_path.domain.root_domain != "swytchbike.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the queue.swytchbike.com open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'queue.swytchbike.com'
    • .href_url.path contains '/order'
    • .href_url.query_params matches '(?:^|&)target='
  3. sender.email.domain.root_domain is not 'swytchbike.com'
  4. headers.return_path.domain.root_domain is not 'swytchbike.com'
  5. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, headers.return_path.domain.root_domain, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalsqueue.swytchbike.com
strings.icontainssubstring/order
regex.icontainsregex(?:^|&)target=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.domain eq "queue.swytchbike.com"
      body.links.href_url.path contains "/order"
      body.links.href_url.query_params regex_match "(?:^|&)target="
  headers.return_path.domain.root_domain ne "swytchbike.com"
  sender.email.domain.root_domain ne "swytchbike.com"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: radiopublic.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the radiopublic.com redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "radiopublic.com"
        and strings.istarts_with(.href_url.path, '/images/thumbnail')
        and strings.icontains(.href_url.query_params, 'url=')
        and not regex.icontains(.href_url.query_params,
                                'url=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*radiopublic\.com(?:\&|\/|$)'
        )
)
and not sender.email.domain.root_domain == "radiopublic.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the radiopublic.com redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'radiopublic.com'
    • .href_url.path starts with '/images/thumbnail'
    • .href_url.query_params contains 'url='
    • not:
      • .href_url.query_params matches 'url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*radiopublic\\.com(?:\\&|\\/|$)'
  3. not:
    • sender.email.domain.root_domain is 'radiopublic.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains, strings.istarts_with. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsradiopublic.com
strings.istarts_withprefix/images/thumbnail
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*radiopublic\\.com(?:\\&|\\/|$)"
      body.links.href_url.domain.root_domain eq "radiopublic.com"
      body.links.href_url.path starts_with "/images/thumbnail"
      body.links.href_url.query_params contains "url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "radiopublic.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqradiopublic.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"radiopublic.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Recipient address embedded in redirect URL pointing to newly registered domain

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Detects inbound messages sent to a single recipient where the body contains a link that embeds the recipient's email address in a URL query parameter, and the resolved destination domain was registered less than 100 days ago. This pattern is consistent with personalized redirect links designed to evade detection while directing targets to newly established infrastructure.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesOpen redirect, Social engineering

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.current_thread
  • recipients
  • recipients.to[0]
  • type

Rule body

type.inbound
and length(recipients.to) == 1
and any(body.current_thread.links,
        strings.contains(.href_url.url, recipients.to[0].email.email)
        and length(.href_url.query_params_decoded['url']) > 0
        and any(.href_url.query_params_decoded['url'],
                strings.contains(strings.parse_url(.).url,
                                 recipients.to[0].email.email
                )
                and network.whois(strings.parse_url(.).domain).days_old < 100
        )
)

Detection logic

Scope: inbound message.

Detects inbound messages sent to a single recipient where the body contains a link that embeds the recipient's email address in a URL query parameter, and the resolved destination domain was registered less than 100 days ago. This pattern is consistent with personalized redirect links designed to evade detection while directing targets to newly established infrastructure.

  1. inbound message
  2. length(recipients.to) is 1
  3. any of body.current_thread.links where all hold:
    • strings.contains(.href_url.url)
    • length(.href_url.query_params_decoded['url']) > 0
    • any of .href_url.query_params_decoded['url'] where all hold:
      • strings.contains(strings.parse_url(.).url)
      • network.whois(strings.parse_url(.).domain).days_old < 100

Inspects: body.current_thread.links, body.current_thread.links[].href_url.query_params_decoded['url'], body.current_thread.links[].href_url.url, recipients.to, recipients.to[0].email.email, type.inbound. Sensors: network.whois, strings.contains, strings.parse_url.

Stages and Predicates

Stage 1: mql_rule

and
  any(body.current_thread.links)
    and
      any(body.current_thread.links.href_url.query_params_decoded['url'])
        and
          network.whois func_call "network.whois(strings.parse_url(body.current_thread.links[].href_url.query_params_decoded['url'][]).domain).days_old < 100"
          strings.contains func_call "strings.contains(strings.parse_url(body.current_thread.links[].href_url.query_params_decoded['url'][]).url)"
      body.current_thread.links.href_url.query_params_decoded['url'] length_compare "0"
      strings.contains func_call "strings.contains(body.current_thread.links[].href_url.url)"
  recipients.to length_compare "1"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: retailrocket.net

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the retailrocket.net open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and length(filter(body.links,
                  .href_url.domain.root_domain == "retailrocket.net"
           )
) < 10
and any(body.links,
        .href_url.domain.domain == "clickproxy.retailrocket.net"
        and strings.icontains(.href_url.query_params, 'url=')
        and not regex.icontains(.href_url.query_params,
                                'url=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*retailrocket\.net(?:\&|\/|$)'
        )
)
and not sender.email.domain.root_domain == "retailrocket.net"
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the retailrocket.net open redirect. This has been exploited in the wild.

  1. inbound message
  2. length(filter(body.links, .href_url.domain.root_domain == 'retailrocket.net')) < 10
  3. any of body.links where all hold:
    • .href_url.domain.domain is 'clickproxy.retailrocket.net'
    • .href_url.query_params contains 'url='
    • not:
      • .href_url.query_params matches 'url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*retailrocket\\.net(?:\\&|\\/|$)'
  4. not:
    • sender.email.domain.root_domain is 'retailrocket.net'
  5. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.domain.root_domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsretailrocket.net
body.links[].href_url.domain.domainequalsclickproxy.retailrocket.net
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*retailrocket\\.net(?:\\&|\\/|$)"
      body.links.href_url.domain.domain eq "clickproxy.retailrocket.net"
      body.links.href_url.query_params contains "url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "retailrocket.net"
  filter(body.links, .href_url.domain.root_domain == 'retailrocket.net') length_compare "10"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqretailrocket.netexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"retailrocket.net"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: ringaraja.net

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the ringaraja.net open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "ringaraja.net"
        and .href_url.path =~ "/portleti/katalogponudnikov/result.asp"
        and strings.icontains(.href_url.query_params, 'url=')
        // negate use of the redirect by ringaraja
        and not regex.icontains(.href_url.query_params,
                                'url=[^&]*ringaraja\.net'
        )
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the ringaraja.net open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'ringaraja.net'
    • .href_url.path is '/portleti/katalogponudnikov/result.asp'
    • .href_url.query_params contains 'url='
    • not:
      • .href_url.query_params matches 'url=[^&]*ringaraja\\.net'
  3. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsringaraja.net
body.links[].href_url.pathequals/portleti/katalogponudnikov/result.asp
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=[^&]*ringaraja\\.net"
      body.links.href_url.domain.root_domain eq "ringaraja.net"
      body.links.href_url.path eq "/portleti/katalogponudnikov/result.asp"
      body.links.href_url.query_params contains "url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Samsung

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the Samsung open redirect, but the sender is not Samsung.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        (
          .href_url.domain.domain == 't.info.samsungusa.com'
          and .href_url.path =~ '/r/'
        )
        or (
          .href_url.domain.root_domain == "samsung.com"
          and strings.iends_with(.href_url.domain.subdomain, '.email')
          and strings.icontains(.href_url.path, '/r/')
          and strings.icontains(.href_url.query_params, 'id=')
          and strings.icontains(.href_url.query_params, 'p1=')
          // with redirects to google/doubleclick
          and regex.icontains(.href_url.query_params,
                              'p1=[^\&]*(?:google\.|doubleclick\.net)'
          )
        )
)
and sender.email.domain.root_domain not in ('samsungusa.com', 'samsung.com')

Detection logic

Scope: inbound message.

Message contains use of the Samsung open redirect, but the sender is not Samsung.

  1. inbound message
  2. any of body.links where any holds:
    • all of:
      • .href_url.domain.domain is 't.info.samsungusa.com'
      • .href_url.path is '/r/'
    • all of:
      • .href_url.domain.root_domain is 'samsung.com'
      • .href_url.domain.subdomain ends with '.email'
      • .href_url.path contains '/r/'
      • .href_url.query_params contains 'id='
      • .href_url.query_params contains 'p1='
      • .href_url.query_params matches 'p1=[^\\&]*(?:google\\.|doubleclick\\.net)'
  3. sender.email.domain.root_domain not in ('samsungusa.com', 'samsung.com')

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.domain.root_domain, body.links[].href_url.domain.subdomain, body.links[].href_url.path, body.links[].href_url.query_params, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains, strings.iends_with.

Indicators matched (8)

FieldMatchValue
body.links[].href_url.domain.domainequalst.info.samsungusa.com
body.links[].href_url.pathequals/r/
body.links[].href_url.domain.root_domainequalssamsung.com
strings.iends_withsuffix.email
strings.icontainssubstring/r/
strings.icontainssubstringid=
strings.icontainssubstringp1=
regex.icontainsregexp1=[^\&]*(?:google\.|doubleclick\.net)

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    or
      and
        body.links.href_url.domain.domain eq "t.info.samsungusa.com"
        body.links.href_url.path eq "/r/"
      and
        body.links.href_url.domain.root_domain eq "samsung.com"
        body.links.href_url.domain.subdomain ends_with ".email"
        body.links.href_url.path contains "/r/"
        body.links.href_url.query_params contains "id="
        body.links.href_url.query_params contains "p1="
        body.links.href_url.query_params regex_match "p1=[^\\&]*(?:google\\.|doubleclick\\.net)"
  not
    sender.email.domain.root_domain in ["samsung.com", "samsungusa.com"]
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: sciencebuddies.org

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the sciencebuddies.org open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "sciencebuddies.org"
        and strings.icontains(.href_url.path, '/Handlers/QrCode.aspx')
        and strings.icontains(.href_url.query_params, 'u=')
        and not regex.icontains(.href_url.query_params,
                                'u=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*sciencebuddies\.org(?:\&|\/|$)'
        )
)
and not sender.email.domain.root_domain == "sciencebuddies.org"
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the sciencebuddies.org open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'sciencebuddies.org'
    • .href_url.path contains '/Handlers/QrCode.aspx'
    • .href_url.query_params contains 'u='
    • not:
      • .href_url.query_params matches 'u=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*sciencebuddies\\.org(?:\\&|\\/|$)'
  3. not:
    • sender.email.domain.root_domain is 'sciencebuddies.org'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalssciencebuddies.org
strings.icontainssubstring/Handlers/QrCode.aspx
strings.icontainssubstringu=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "u=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*sciencebuddies\\.org(?:\\&|\\/|$)"
      body.links.href_url.domain.root_domain eq "sciencebuddies.org"
      body.links.href_url.path contains "/Handlers/QrCode.aspx"
      body.links.href_url.query_params contains "u="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "sciencebuddies.org"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqsciencebuddies.orgexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"sciencebuddies.org"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: secondstreetapp.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the secondstreetapp.com redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • headers.domains
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "secondstreetapp.com"
        and strings.icontains(.href_url.query_params, '&redirect=')
        // not redirects to themselves
        and not regex.icontains(.href_url.query_params,
                                '&redirect=[^&]*secondstreetapp\.com'
        )
)
// remove uses that originate from secondstreet
and not any(headers.domains,
            .root_domain in ("secondstreetmail.com", "secondstreetmessages.com")
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the secondstreetapp.com redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'secondstreetapp.com'
    • .href_url.query_params contains '&redirect='
    • not:
      • .href_url.query_params matches '&redirect=[^&]*secondstreetapp\\.com'
  3. not:
    • any of headers.domains where:
      • .root_domain in ('secondstreetmail.com', 'secondstreetmessages.com')
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, headers.domains, headers.domains[].root_domain, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.root_domainequalssecondstreetapp.com
strings.icontainssubstring&redirect=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "&redirect=[^&]*secondstreetapp\\.com"
      body.links.href_url.domain.root_domain eq "secondstreetapp.com"
      body.links.href_url.query_params contains "&redirect="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    any(headers.domains)
      headers.domains.root_domain in ["secondstreetmail.com", "secondstreetmessages.com"]
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
headers.domainsarray_any(no value, null check)excludes:headers.domains

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Shibboleth SSO Logout Return Parameter

#
Severity
high
Type
rule
Source
github.com/sublime-security/sublime-rules

Detects links that contain a Shibboleth SSO logout endpoint with a return parameter, which could be used for open redirect attacks. The rule checks for both direct path inclusion and URL-encoded versions in query parameters. Only triggers on senders with non-common prevalence.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesOpen redirect, Evasion

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • type

Rule body

type.inbound
and any(body.links,
        // uses shibboleth.sso directly within the path
        (
          strings.icontains(.href_url.path, '/Shibboleth.sso/Logout')
          and (
            strings.icontains(.href_url.path, 'return=')
            or strings.icontains(.href_url.query_params, 'return=')
          )
        )
        // or url encoded within the query_params
        or (
          strings.icontains(.href_url.query_params, 'Shibboleth.sso%2fLogout')
          and strings.icontains(.href_url.query_params, "return%3d")
        )
)

Detection logic

Scope: inbound message.

Detects links that contain a Shibboleth SSO logout endpoint with a return parameter, which could be used for open redirect attacks. The rule checks for both direct path inclusion and URL-encoded versions in query parameters. Only triggers on senders with non-common prevalence.

  1. inbound message
  2. any of body.links where any holds:
    • all of:
      • .href_url.path contains '/Shibboleth.sso/Logout'
      • any of:
        • .href_url.path contains 'return='
        • .href_url.query_params contains 'return='
    • all of:
      • .href_url.query_params contains 'Shibboleth.sso%2fLogout'
      • .href_url.query_params contains 'return%3d'

Inspects: body.links, body.links[].href_url.path, body.links[].href_url.query_params, type.inbound. Sensors: strings.icontains.

Indicators matched (4)

FieldMatchValue
strings.icontainssubstring/Shibboleth.sso/Logout
strings.icontainssubstringreturn=
strings.icontainssubstringShibboleth.sso%2fLogout
strings.icontainssubstringreturn%3d

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    or
      and
        or
          body.links.href_url.path contains "return="
          body.links.href_url.query_params contains "return="
        body.links.href_url.path contains "/Shibboleth.sso/Logout"
      and
        body.links.href_url.query_params contains "Shibboleth.sso%2fLogout"
        body.links.href_url.query_params contains "return%3d"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: shoppermeet.net

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the shoppermeet.net redirect. This has been exploited in the wild for phishing.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "link.shoppermeet.net"
        and strings.icontains(.href_url.path, '/deep-link')
        and strings.icontains(.href_url.query_params, 'propertyid=')
        and strings.icontains(.href_url.query_params, 'publisherkey=')
        and strings.icontains(.href_url.query_params, 'url=')
        and not regex.icontains(.href_url.query_params,
                                'url=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*shoppermeet\.net(?:\&|\/|$|%2f)'
        )
)
and not sender.email.domain.root_domain == "shoppermeet.net"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the shoppermeet.net redirect. This has been exploited in the wild for phishing.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'link.shoppermeet.net'
    • .href_url.path contains '/deep-link'
    • .href_url.query_params contains 'propertyid='
    • .href_url.query_params contains 'publisherkey='
    • .href_url.query_params contains 'url='
    • not:
      • .href_url.query_params matches 'url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*shoppermeet\\.net(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'shoppermeet.net'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (5)

FieldMatchValue
body.links[].href_url.domain.domainequalslink.shoppermeet.net
strings.icontainssubstring/deep-link
strings.icontainssubstringpropertyid=
strings.icontainssubstringpublisherkey=
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*shoppermeet\\.net(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.domain eq "link.shoppermeet.net"
      body.links.href_url.path contains "/deep-link"
      body.links.href_url.query_params contains "propertyid="
      body.links.href_url.query_params contains "publisherkey="
      body.links.href_url.query_params contains "url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "shoppermeet.net"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqshoppermeet.netexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"shoppermeet.net"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: shoppingwebapi.didatravel.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the shoppingwebapi.didatravel.com open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "shoppingwebapi.didatravel.com"
        and strings.starts_with(.href_url.path, '/Analytics/Marketing')
        and strings.icontains(.href_url.query_params, 'rdu=')
        and not regex.icontains(.href_url.query_params,
                                'rdu=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*didatravel\.com(?:\&|\/|$)'
        )
)
and not sender.email.domain.root_domain == "didatravel.com"
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the shoppingwebapi.didatravel.com open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'shoppingwebapi.didatravel.com'
    • .href_url.path starts with '/Analytics/Marketing'
    • .href_url.query_params contains 'rdu='
    • not:
      • .href_url.query_params matches 'rdu=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*didatravel\\.com(?:\\&|\\/|$)'
  3. not:
    • sender.email.domain.root_domain is 'didatravel.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains, strings.starts_with. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalsshoppingwebapi.didatravel.com
strings.starts_withprefix/Analytics/Marketing
strings.icontainssubstringrdu=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "rdu=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*didatravel\\.com(?:\\&|\\/|$)"
      body.links.href_url.domain.domain eq "shoppingwebapi.didatravel.com"
      body.links.href_url.path starts_with "/Analytics/Marketing"
      body.links.href_url.query_params contains "rdu="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "didatravel.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqdidatravel.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"didatravel.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Signature Travel Network

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the Signature Travel Network open redirect, but the sender is not Signature Travel Network. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • headers.domains
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == 'sigtn.com'
        and strings.iends_with(.href_url.path, "emt.cfm")
        and strings.icontains(.href_url.query_params, "link=")
)
and sender.email.domain.root_domain not in (
  'signaturetravelnetwork.com',
  'sigtn.com'
)
and not any(headers.domains, .root_domain == "signaturetravelnetwork.com")

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the Signature Travel Network open redirect, but the sender is not Signature Travel Network. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'sigtn.com'
    • .href_url.path ends with 'emt.cfm'
    • .href_url.query_params contains 'link='
  3. sender.email.domain.root_domain not in ('signaturetravelnetwork.com', 'sigtn.com')
  4. not:
    • any of headers.domains where:
      • .root_domain is 'signaturetravelnetwork.com'
  5. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, headers.domains, headers.domains[].root_domain, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains, strings.iends_with. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalssigtn.com
strings.iends_withsuffixemt.cfm
strings.icontainssubstringlink=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "sigtn.com"
      body.links.href_url.path ends_with "emt.cfm"
      body.links.href_url.query_params contains "link="
  not
    any(headers.domains)
      headers.domains.root_domain eq "signaturetravelnetwork.com"
  not
    sender.email.domain.root_domain in ["signaturetravelnetwork.com", "sigtn.com"]
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
headers.domainsarray_any(no value, null check)excludes:headers.domains
sender.email.domain.root_domaininsignaturetravelnetwork.com, sigtn.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"signaturetravelnetwork.com" field:"sender.email.domain.root_domain" value:"sigtn.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Slack

#
Severity
low
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of Slack's open redirect but the sender is not Slack.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • sender.email
  • type

Rule body

type.inbound
and 0 < length(body.links) < 10
and sender.email.domain.root_domain not in~ (
  'atlassian.net',
  'slack.com',
  'soundtrap.com'
)
and any(body.links,
        .href_url.domain.domain == 'slack-redir.net'
        and strings.ilike(.href_url.query_params, '*url=*')
)

Detection logic

Scope: inbound message.

Message contains use of Slack's open redirect but the sender is not Slack.

  1. inbound message
  2. all of:
    • length(body.links) > 0
    • length(body.links) < 10
  3. sender.email.domain.root_domain not in ('atlassian.net', 'slack.com', 'soundtrap.com')
  4. any of body.links where all hold:
    • .href_url.domain.domain is 'slack-redir.net'
    • .href_url.query_params matches '*url=*'

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.query_params, sender.email.domain.root_domain, type.inbound. Sensors: strings.ilike.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.domainequalsslack-redir.net
strings.ilikesubstring*url=*

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      body.links.href_url.domain.domain eq "slack-redir.net"
      body.links.href_url.query_params match "url="
  not
    sender.email.domain.root_domain in ["atlassian.net", "slack.com", "soundtrap.com"]
  body.links length_compare "0"
  body.links length_compare "10"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: slubnaglowie.pl

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of a slubnaglowie.pl redirect. This redirection has been abused by threat actors in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesEvasion, Open redirect, Social engineering

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "slubnaglowie.pl"
        and .href_url.path == "/przejdz" // "to go" or "to move/proceed" in Polish
        and strings.icontains(.href_url.query_params, 'url=')
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    (
      sender.email.domain.root_domain in $high_trust_sender_root_domains
      or sender.email.domain.root_domain == "slubnaglowie.pl"
    )
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of a slubnaglowie.pl redirect. This redirection has been abused by threat actors in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'slubnaglowie.pl'
    • .href_url.path is '/przejdz'
    • .href_url.query_params contains 'url='
  3. any of:
    • all of:
      • any of:
        • sender.email.domain.root_domain in $high_trust_sender_root_domains
        • sender.email.domain.root_domain is 'slubnaglowie.pl'
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (4)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsslubnaglowie.pl
body.links[].href_url.pathequals/przejdz
strings.icontainssubstringurl=
sender.email.domain.root_domainequalsslubnaglowie.pl

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
      or
        sender.email.domain.root_domain eq "slubnaglowie.pl"
         macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "slubnaglowie.pl"
      body.links.href_url.path eq "/przejdz"
      body.links.href_url.query_params contains "url="
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: smartadserver.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the smartadserver.com redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • headers.domains
  • sender.email
  • type

Rule body

type.inbound
// smartadserver is used in benign messages, however, they commonly have many links
// ensure messages contain less than 15 links to ensure higher fidelity matching of malicious messages
and length(body.links) < 15
and any(body.links,
        .href_url.domain.root_domain == "smartadserver.com"
        and strings.icontains(.href_url.query_params, 'go=')
        and not regex.icontains(.href_url.query_params,
                                'go=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*smartadserver\.com(?:\&|\/|$|%2f)'
        )
)
// remove uses that originate from smartadserver.com
and not any(headers.domains, .root_domain == "smartadserver.com")
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the smartadserver.com redirect. This has been exploited in the wild.

  1. inbound message
  2. length(body.links) < 15
  3. any of body.links where all hold:
    • .href_url.domain.root_domain is 'smartadserver.com'
    • .href_url.query_params contains 'go='
    • not:
      • .href_url.query_params matches 'go=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*smartadserver\\.com(?:\\&|\\/|$|%2f)'
  4. not:
    • any of headers.domains where:
      • .root_domain is 'smartadserver.com'
  5. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, headers.domains, headers.domains[].root_domain, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.root_domainequalssmartadserver.com
strings.icontainssubstringgo=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "go=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*smartadserver\\.com(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.root_domain eq "smartadserver.com"
      body.links.href_url.query_params contains "go="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    any(headers.domains)
      headers.domains.root_domain eq "smartadserver.com"
  body.links length_compare "15"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
headers.domainsarray_any(no value, null check)excludes:headers.domains

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: smore.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the smore.com redirect. This has been exploited in the wild for phishing.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "smore.com"
        and strings.icontains(.href_url.path, '/app/reporting/button/')
        and strings.icontains(.href_url.query_params, 'u=')
        and not regex.icontains(.href_url.query_params,
                                'u=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*smore\.com(?:\&|\/|$|%2f)'
        )
)
and not sender.email.domain.root_domain == "smore.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the smore.com redirect. This has been exploited in the wild for phishing.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'smore.com'
    • .href_url.path contains '/app/reporting/button/'
    • .href_url.query_params contains 'u='
    • not:
      • .href_url.query_params matches 'u=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*smore\\.com(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'smore.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalssmore.com
strings.icontainssubstring/app/reporting/button/
strings.icontainssubstringu=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "u=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*smore\\.com(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.root_domain eq "smore.com"
      body.links.href_url.path contains "/app/reporting/button/"
      body.links.href_url.query_params contains "u="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "smore.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqsmore.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"smore.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Snapchat

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the click.snapchat.com open redirect.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • sender.email
  • type

Rule body

type.inbound
and any(body.links, .href_url.domain.domain == "click.snapchat.com")
and sender.email.domain.root_domain != "snapchat.com"

Detection logic

Scope: inbound message.

Message contains use of the click.snapchat.com open redirect.

  1. inbound message
  2. any of body.links where:
    • .href_url.domain.domain is 'click.snapchat.com'
  3. sender.email.domain.root_domain is not 'snapchat.com'

Inspects: body.links, body.links[].href_url.domain.domain, sender.email.domain.root_domain, type.inbound.

Indicators matched (1)

FieldMatchValue
body.links[].href_url.domain.domainequalsclick.snapchat.com

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    body.links.href_url.domain.domain eq "click.snapchat.com"
  sender.email.domain.root_domain ne "snapchat.com"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: social.bigpress.net

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the social.bigpress.net open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "social.bigpress.net"
        and strings.icontains(.href_url.path, '/emailtrack/click')
        and strings.icontains(.href_url.query_params, 'goto=')
        and not regex.icontains(.href_url.query_params,
                                'goto=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*bigpress\.net(?:\&|\/|$)'
        )
)
and not sender.email.domain.root_domain == "bigpress.net"
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the social.bigpress.net open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'social.bigpress.net'
    • .href_url.path contains '/emailtrack/click'
    • .href_url.query_params contains 'goto='
    • not:
      • .href_url.query_params matches 'goto=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*bigpress\\.net(?:\\&|\\/|$)'
  3. not:
    • sender.email.domain.root_domain is 'bigpress.net'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalssocial.bigpress.net
strings.icontainssubstring/emailtrack/click
strings.icontainssubstringgoto=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "goto=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*bigpress\\.net(?:\\&|\\/|$)"
      body.links.href_url.domain.domain eq "social.bigpress.net"
      body.links.href_url.path contains "/emailtrack/click"
      body.links.href_url.query_params contains "goto="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "bigpress.net"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqbigpress.netexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"bigpress.net"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: ssg-financial.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the ssg-financial.com open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "ssg-financial.com"
        and strings.istarts_with(.href_url.path, '/api/v1/track/click/')
        and strings.icontains(.href_url.query_params, 'redirecturl=')
        and not regex.icontains(.href_url.query_params,
                                'redirecturl=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*ssg-financial\.com(?:\&|\/|$)'
        )
)
and not sender.email.domain.root_domain == "ssg-financial.com"
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the ssg-financial.com open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'ssg-financial.com'
    • .href_url.path starts with '/api/v1/track/click/'
    • .href_url.query_params contains 'redirecturl='
    • not:
      • .href_url.query_params matches 'redirecturl=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*ssg-financial\\.com(?:\\&|\\/|$)'
  3. not:
    • sender.email.domain.root_domain is 'ssg-financial.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains, strings.istarts_with. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsssg-financial.com
strings.istarts_withprefix/api/v1/track/click/
strings.icontainssubstringredirecturl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "redirecturl=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*ssg-financial\\.com(?:\\&|\\/|$)"
      body.links.href_url.domain.root_domain eq "ssg-financial.com"
      body.links.href_url.path starts_with "/api/v1/track/click/"
      body.links.href_url.query_params contains "redirecturl="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "ssg-financial.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqssg-financial.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"ssg-financial.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: stats.lib.pdx.edu

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the stats.lib.pdx.edu open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "stats.lib.pdx.edu"
        and strings.icontains(.href_url.path, "/proxy.php")
        and strings.icontains(.href_url.query_params, 'url=')
        // negate use of the redirect by stats.lib.pdx.edu
        and not regex.icontains(.href_url.query_params,
                                'url=[^&]*stats\.lib\.pdx\.edu'
        )
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the stats.lib.pdx.edu open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'stats.lib.pdx.edu'
    • .href_url.path contains '/proxy.php'
    • .href_url.query_params contains 'url='
    • not:
      • .href_url.query_params matches 'url=[^&]*stats\\.lib\\.pdx\\.edu'
  3. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalsstats.lib.pdx.edu
strings.icontainssubstring/proxy.php
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=[^&]*stats\\.lib\\.pdx\\.edu"
      body.links.href_url.domain.domain eq "stats.lib.pdx.edu"
      body.links.href_url.path contains "/proxy.php"
      body.links.href_url.query_params contains "url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: storematch.jp

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the storematch.jp open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "storematch.jp"
        and .href_url.path =~ "/bc"
        and strings.icontains(.href_url.query_params, 'rd=')
        // negate use of the redirect by 
        and not regex.icontains(.href_url.query_params,
                                'rd=[^&]*storematch\.jp'
        )
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the storematch.jp open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'storematch.jp'
    • .href_url.path is '/bc'
    • .href_url.query_params contains 'rd='
    • not:
      • .href_url.query_params matches 'rd=[^&]*storematch\\.jp'
  3. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsstorematch.jp
body.links[].href_url.pathequals/bc
strings.icontainssubstringrd=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "rd=[^&]*storematch\\.jp"
      body.links.href_url.domain.root_domain eq "storematch.jp"
      body.links.href_url.path eq "/bc"
      body.links.href_url.query_params contains "rd="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Ticketmaster

#
Severity
low
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the Ticketmaster open redirect, but the sender is not Ticketmaster. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • headers.return_path
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == 'links.engage.ticketmaster.com'
        and .href_url.path =~ '/ctt'
)
and sender.email.domain.root_domain != 'ticketmaster.com'
and headers.return_path.domain.root_domain != "ticketmaster.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the Ticketmaster open redirect, but the sender is not Ticketmaster. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'links.engage.ticketmaster.com'
    • .href_url.path is '/ctt'
  3. sender.email.domain.root_domain is not 'ticketmaster.com'
  4. headers.return_path.domain.root_domain is not 'ticketmaster.com'
  5. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, headers.auth_summary.dmarc.pass, headers.return_path.domain.root_domain, sender.email.domain.root_domain, type.inbound. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.domainequalslinks.engage.ticketmaster.com
body.links[].href_url.pathequals/ctt

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.domain eq "links.engage.ticketmaster.com"
      body.links.href_url.path eq "/ctt"
  headers.return_path.domain.root_domain ne "ticketmaster.com"
  sender.email.domain.root_domain ne "ticketmaster.com"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: TikTok

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of an open redirect on TikTok. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "tiktok.com"
        and strings.icontains(.href_url.query_params, 'target=')
        and strings.icontains(.href_url.query_params, 'aid=')
)
// attempt to remove any FPs sent by TikTok actual
and not (
  sender.email.domain.root_domain in ("tiktok.com")
  and headers.auth_summary.dmarc.pass
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of an open redirect on TikTok. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'tiktok.com'
    • .href_url.query_params contains 'target='
    • .href_url.query_params contains 'aid='
  3. not:
    • all of:
      • sender.email.domain.root_domain in ('tiktok.com')
      • headers.auth_summary.dmarc.pass
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalstiktok.com
strings.icontainssubstringtarget=
strings.icontainssubstringaid=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "tiktok.com"
      body.links.href_url.query_params contains "aid="
      body.links.href_url.query_params contains "target="
  not
    and
      headers.auth_summary.dmarc.pass eq "true"
      sender.email.domain.root_domain eq "tiktok.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: tkqlhce.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the tkqlhce.com redirect. This has been exploited in the wild for phishing.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and length(body.links) < 10
and any(body.links,
        .href_url.domain.root_domain == "tkqlhce.com"
        and (
          (
            strings.icontains(.href_url.query_params, 'url=')
            and not regex.icontains(.href_url.query_params,
                                    'url=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*tkqlhce\.com(?:\&|\/|$|%2f)'
            )
          )
          or (
            strings.icontains(.href_url.path, '/links/')
            and strings.icontains(.href_url.path, '/type/dlg/')
            and regex.icontains(.href_url.path, 'https?://')
            and not regex.icontains(.href_url.path,
                                    '/links/[^/]+/type/dlg/(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*tkqlhce\.com(?:\&|\/|$|%2f)'
            )
          )
        )
)
and not sender.email.domain.root_domain == "tkqlhce.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the tkqlhce.com redirect. This has been exploited in the wild for phishing.

  1. inbound message
  2. length(body.links) < 10
  3. any of body.links where all hold:
    • .href_url.domain.root_domain is 'tkqlhce.com'
    • any of:
      • all of:
        • .href_url.query_params contains 'url='
        • not:
          • .href_url.query_params matches 'url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*tkqlhce\\.com(?:\\&|\\/|$|%2f)'
      • all of:
        • .href_url.path contains '/links/'
        • .href_url.path contains '/type/dlg/'
        • .href_url.path matches 'https?://'
        • not:
          • .href_url.path matches '/links/[^/]+/type/dlg/(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*tkqlhce\\.com(?:\\&|\\/|$|%2f)'
  4. not:
    • sender.email.domain.root_domain is 'tkqlhce.com'
  5. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (5)

FieldMatchValue
body.links[].href_url.domain.root_domainequalstkqlhce.com
strings.icontainssubstringurl=
strings.icontainssubstring/links/
strings.icontainssubstring/type/dlg/
regex.icontainsregexhttps?://

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      or
        and
          not
            body.links.href_url.path regex_match "/links/[^/]+/type/dlg/(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*tkqlhce\\.com(?:\\&|\\/|$|%2f)"
          body.links.href_url.path contains "/links/"
          body.links.href_url.path contains "/type/dlg/"
          body.links.href_url.path regex_match "https?://"
        and
          not
            body.links.href_url.query_params regex_match "url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*tkqlhce\\.com(?:\\&|\\/|$|%2f)"
          body.links.href_url.query_params contains "url="
      body.links.href_url.domain.root_domain eq "tkqlhce.com"
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "tkqlhce.com"
  body.links length_compare "10"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqtkqlhce.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"tkqlhce.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: tuttocauzioni.it

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the tuttocauzioni.it redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • headers.domains
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "tuttocauzioni.it"
        and .href_url.path == '/redirect.php'
        and strings.icontains(.href_url.query_params, 'url=')
        and not regex.icontains(.href_url.query_params,
                                'url=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*tuttocauzioni\.it(?:\&|\/|$|%2f)'
        )
)
// remove uses that originate from tuttocauzioni.it
and not any(headers.domains, .root_domain == "tuttocauzioni.it")
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the tuttocauzioni.it redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'tuttocauzioni.it'
    • .href_url.path is '/redirect.php'
    • .href_url.query_params contains 'url='
    • not:
      • .href_url.query_params matches 'url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*tuttocauzioni\\.it(?:\\&|\\/|$|%2f)'
  3. not:
    • any of headers.domains where:
      • .root_domain is 'tuttocauzioni.it'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, headers.domains, headers.domains[].root_domain, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalstuttocauzioni.it
body.links[].href_url.pathequals/redirect.php
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*tuttocauzioni\\.it(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.root_domain eq "tuttocauzioni.it"
      body.links.href_url.path eq "/redirect.php"
      body.links.href_url.query_params contains "url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    any(headers.domains)
      headers.domains.root_domain eq "tuttocauzioni.it"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
headers.domainsarray_any(no value, null check)excludes:headers.domains

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: typedrawers.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Detects messages containing links or QR codes pointing to typedrawers.com/home/leaving with target parameter, sent from non-trusted domains or authenticated sources failing DMARC checks. Considers sender reputation and requires either unsolicited contact or prior malicious activity without false positives.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesEvasion, Open redirect, QR code, Social engineering

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • attachments
  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and (
  any(body.links,
      .href_url.domain.root_domain == "typedrawers.com"
      and .href_url.path == "/home/leaving"
      and strings.icontains(.href_url.query_params, 'target=')
  )
  or any(attachments,
         (
           .file_type in $file_types_images
           or .file_extension in $file_extensions_macros
           or .file_type == "pdf"
         )
         and any(file.explode(.),
                 .scan.qr.type == "url"
                 and .scan.qr.url.domain.root_domain == "typedrawers.com"
                 and .scan.qr.url.path == "/home/leaving"
                 and strings.icontains(.scan.qr.url.query_params, 'target=')
         )
  )
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    (
      sender.email.domain.root_domain in $high_trust_sender_root_domains
      or sender.email.domain.root_domain == "typedrawers.com"
    )
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Detects messages containing links or QR codes pointing to typedrawers.com/home/leaving with target parameter, sent from non-trusted domains or authenticated sources failing DMARC checks. Considers sender reputation and requires either unsolicited contact or prior malicious activity without false positives.

  1. inbound message
  2. any of:
    • any of body.links where all hold:
      • .href_url.domain.root_domain is 'typedrawers.com'
      • .href_url.path is '/home/leaving'
      • .href_url.query_params contains 'target='
    • any of attachments where all hold:
      • any of:
        • .file_type in $file_types_images
        • .file_extension in $file_extensions_macros
        • .file_type is 'pdf'
      • any of file.explode(.) where all hold:
        • .scan.qr.type is 'url'
        • .scan.qr.url.domain.root_domain is 'typedrawers.com'
        • .scan.qr.url.path is '/home/leaving'
        • .scan.qr.url.query_params contains 'target='
  3. any of:
    • all of:
      • any of:
        • sender.email.domain.root_domain in $high_trust_sender_root_domains
        • sender.email.domain.root_domain is 'typedrawers.com'
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: attachments[].file_extension, attachments[].file_type, body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: file.explode, strings.icontains. Reference lists: $file_extensions_macros, $file_types_images, $high_trust_sender_root_domains.

Indicators matched (8)

FieldMatchValue
body.links[].href_url.domain.root_domainequalstypedrawers.com
body.links[].href_url.pathequals/home/leaving
strings.icontainssubstringtarget=
attachments[].file_typeequalspdf
file.explode(attachments[])[].scan.qr.typeequalsurl
file.explode(attachments[])[].scan.qr.url.domain.root_domainequalstypedrawers.com
file.explode(attachments[])[].scan.qr.url.pathequals/home/leaving
sender.email.domain.root_domainequalstypedrawers.com

Stages and Predicates

Stage 1: mql_rule

and
  or
    any(attachments)
      and
        any(file.explode(attachments))
          and
            file.explode(attachments[])[].scan.qr.type eq "url"
            file.explode(attachments[])[].scan.qr.url.domain.root_domain eq "typedrawers.com"
            file.explode(attachments[])[].scan.qr.url.path eq "/home/leaving"
            file.explode(attachments[])[].scan.qr.url.query_params contains "target="
        or
          attachments.file_type eq "pdf"
           macro "attachments[].file_extension in file_extensions_macros"
           macro "attachments[].file_type in file_types_images"
    any(body.links)
      and
        body.links.href_url.domain.root_domain eq "typedrawers.com"
        body.links.href_url.path eq "/home/leaving"
        body.links.href_url.query_params contains "target="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
      or
        sender.email.domain.root_domain eq "typedrawers.com"
         macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: U.S. Antarctic Program Data Center (USAP-DC)

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the U.S. Antarctic Program Data Center (USAP-DC) open redirect.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "usap-dc.org"
        and .href_url.path =~ "/tracker"
        and strings.starts_with(.href_url.query_params, "type=dataset&url=http")
)

Detection logic

Scope: inbound message.

Message contains use of the U.S. Antarctic Program Data Center (USAP-DC) open redirect.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'usap-dc.org'
    • .href_url.path is '/tracker'
    • .href_url.query_params starts with 'type=dataset&url=http'

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, type.inbound. Sensors: strings.starts_with.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsusap-dc.org
body.links[].href_url.pathequals/tracker
strings.starts_withprefixtype=dataset&url=http

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "usap-dc.org"
      body.links.href_url.path eq "/tracker"
      body.links.href_url.query_params starts_with "type=dataset&url=http"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: unitedwaynwvt.org

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the unitedwaynwvt.org open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "ebusiness.unitedwaynwvt.org"
        and strings.icontains(.href_url.query_params, 'F=')
        and not regex.icontains(.href_url.query_params,
                                'F=https?(?:%3a|:)(?:%2f|\/){2}(?:[^\/]+)?unitedwaynwvt.org(?:\&|\/|$|%2f)'
        )
)
and not sender.email.domain.root_domain == "unitedwaynwvt.org"
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the unitedwaynwvt.org open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'ebusiness.unitedwaynwvt.org'
    • .href_url.query_params contains 'F='
    • not:
      • .href_url.query_params matches 'F=https?(?:%3a|:)(?:%2f|\\/){2}(?:[^\\/]+)?unitedwaynwvt.org(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'unitedwaynwvt.org'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.domainequalsebusiness.unitedwaynwvt.org
strings.icontainssubstringF=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "F=https?(?:%3a|:)(?:%2f|\\/){2}(?:[^\\/]+)?unitedwaynwvt.org(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.domain eq "ebusiness.unitedwaynwvt.org"
      body.links.href_url.query_params contains "F="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "unitedwaynwvt.org"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domainequnitedwaynwvt.orgexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"unitedwaynwvt.org"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: ust.hk

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the ust.hk open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "shib.ust.hk"
        and strings.icontains(.href_url.path, '/discovery.jsp')
        and regex.icontains(.href_url.query_params, '(?:^|&)return=')
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the ust.hk open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'shib.ust.hk'
    • .href_url.path contains '/discovery.jsp'
    • .href_url.query_params matches '(?:^|&)return='
  3. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalsshib.ust.hk
strings.icontainssubstring/discovery.jsp
regex.icontainsregex(?:^|&)return=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.domain eq "shib.ust.hk"
      body.links.href_url.path contains "/discovery.jsp"
      body.links.href_url.query_params regex_match "(?:^|&)return="
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: vconfex.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the vconfex.com redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "vconfex.com"
        and strings.istarts_with(.href_url.path, '/etl.php')
        and strings.icontains(.href_url.query_params, 'url=')
        and not regex.icontains(.href_url.query_params,
                                'url=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*vconfex\.com(?:\&|\/|$|%2f)'
        )
)
and not sender.email.domain.root_domain == "vconfex.com"
// negate messages that also include an unsubscribe for vconfex
and not any(body.links,
            .href_url.domain.root_domain == "vconfex.com"
            and strings.istarts_with(.href_url.path, '/unsubscribe.php')
)

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the vconfex.com redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'vconfex.com'
    • .href_url.path starts with '/etl.php'
    • .href_url.query_params contains 'url='
    • not:
      • .href_url.query_params matches 'url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*vconfex\\.com(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'vconfex.com'
  4. not:
    • any of body.links where all hold:
      • .href_url.domain.root_domain is 'vconfex.com'
      • .href_url.path starts with '/unsubscribe.php'
  5. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains, strings.istarts_with. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsvconfex.com
strings.istarts_withprefix/etl.php
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  not
    any(body.links)
      and
        body.links.href_url.domain.root_domain eq "vconfex.com"
        body.links.href_url.path starts_with "/unsubscribe.php"
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "url=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*vconfex\\.com(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.root_domain eq "vconfex.com"
      body.links.href_url.path starts_with "/etl.php"
      body.links.href_url.query_params contains "url="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "vconfex.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
body.linksarray_any(no value, null check)excludes:body.links
sender.email.domain.root_domaineqvconfex.comexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"vconfex.com"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: VK

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the VK open redirect, but the sender is not VK. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == 'vk.com'
        and strings.iends_with(.href_url.path, '/away.php')
)
and sender.email.domain.root_domain != 'vk.com'

Detection logic

Scope: inbound message.

Message contains use of the VK open redirect, but the sender is not VK. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'vk.com'
    • .href_url.path ends with '/away.php'
  3. sender.email.domain.root_domain is not 'vk.com'

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, sender.email.domain.root_domain, type.inbound. Sensors: strings.iends_with.

Indicators matched (2)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsvk.com
strings.iends_withsuffix/away.php

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "vk.com"
      body.links.href_url.path ends_with "/away.php"
  sender.email.domain.root_domain ne "vk.com"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: weblinkconnect.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the weblinkconnect.com open redirect, but the sender is not weblinkconnect.com. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesEvasion, Open redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • headers.domains
  • sender.email
  • type

Rule body

type.inbound
and length(filter(body.links,
                  .href_url.domain.root_domain == 'weblinkconnect.com'
           )
) < 10
and any(body.links,
        .href_url.domain.domain == 'api-internal.weblinkconnect.com'
        and strings.icontains(.href_url.path, "/click")
        and strings.icontains(.href_url.query_params, "url=")
)
and sender.email.domain.root_domain != 'weblinkconnect.com'
and not any(headers.domains, .root_domain == "weblinkinternational.com")
// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the weblinkconnect.com open redirect, but the sender is not weblinkconnect.com. This has been exploited in the wild.

  1. inbound message
  2. length(filter(body.links, .href_url.domain.root_domain == 'weblinkconnect.com')) < 10
  3. any of body.links where all hold:
    • .href_url.domain.domain is 'api-internal.weblinkconnect.com'
    • .href_url.path contains '/click'
    • .href_url.query_params contains 'url='
  4. sender.email.domain.root_domain is not 'weblinkconnect.com'
  5. not:
    • any of headers.domains where:
      • .root_domain is 'weblinkinternational.com'
  6. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, headers.domains, headers.domains[].root_domain, sender.email.domain.root_domain, type.inbound. Sensors: strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (4)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsweblinkconnect.com
body.links[].href_url.domain.domainequalsapi-internal.weblinkconnect.com
strings.icontainssubstring/click
strings.icontainssubstringurl=

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.domain eq "api-internal.weblinkconnect.com"
      body.links.href_url.path contains "/click"
      body.links.href_url.query_params contains "url="
  not
    any(headers.domains)
      headers.domains.root_domain eq "weblinkinternational.com"
  filter(body.links, .href_url.domain.root_domain == 'weblinkconnect.com') length_compare "10"
  sender.email.domain.root_domain ne "weblinkconnect.com"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
headers.domainsarray_any(no value, null check)excludes:headers.domains

Indicators

These rows show field, operator, and value matches.

Open redirect: whitefox.pl

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the whitefox.pl open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "demo.whitefox.pl"
        and strings.icontains(.href_url.path, '/Home/SetCulture')
        and strings.icontains(.href_url.query_params, 'cultureName=')
        and strings.icontains(.href_url.query_params, 'returnUrl=')
        and not regex.icontains(.href_url.query_params,
                                'returnUrl=(?:https?(?:%3a|:))?(?:%2f|\/){2}[^&]*whitefox\.pl(?:\&|\/|$|%2f)'
        )
)
and not sender.email.domain.root_domain == "whitefox.pl"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the whitefox.pl open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'demo.whitefox.pl'
    • .href_url.path contains '/Home/SetCulture'
    • .href_url.query_params contains 'cultureName='
    • .href_url.query_params contains 'returnUrl='
    • not:
      • .href_url.query_params matches 'returnUrl=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*whitefox\\.pl(?:\\&|\\/|$|%2f)'
  3. not:
    • sender.email.domain.root_domain is 'whitefox.pl'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (4)

FieldMatchValue
body.links[].href_url.domain.domainequalsdemo.whitefox.pl
strings.icontainssubstring/Home/SetCulture
strings.icontainssubstringcultureName=
strings.icontainssubstringreturnUrl=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "returnUrl=(?:https?(?:%3a|:))?(?:%2f|\\/){2}[^&]*whitefox\\.pl(?:\\&|\\/|$|%2f)"
      body.links.href_url.domain.domain eq "demo.whitefox.pl"
      body.links.href_url.path contains "/Home/SetCulture"
      body.links.href_url.query_params contains "cultureName="
      body.links.href_url.query_params contains "returnUrl="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain eq "whitefox.pl"
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
sender.email.domain.root_domaineqwhitefox.plexcludes:sender.email.domain.root_domain field:"sender.email.domain.root_domain" value:"whitefox.pl"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: Xfinity CMP Redirection to Google AMP

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Detects when non-Xfinity senders abuse Xfinity's CMP redirection service to reach Google AMP pages. The rule specifically looks for targetURL parameters containing Google AMP paths in links from untrusted or previously malicious senders.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesOpen redirect, Evasion

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.domain == "cmp.cws.xfinity.com"
        and strings.icontains(.href_url.query_params, "&targetURL=")
        and regex.icontains(.href_url.query_params,
                            '&targetUrl=(?:https?)?(?:(?:%3a|\:)?(?:\/|%2f){2})?google\.[^\&]*\/+amp\/+s\/+'
        )
)
and not sender.email.domain.root_domain in ("xfinity.com", "comcast.net")

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Detects when non-Xfinity senders abuse Xfinity's CMP redirection service to reach Google AMP pages. The rule specifically looks for targetURL parameters containing Google AMP paths in links from untrusted or previously malicious senders.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.domain is 'cmp.cws.xfinity.com'
    • .href_url.query_params contains '&targetURL='
    • .href_url.query_params matches '&targetUrl=(?:https?)?(?:(?:%3a|\\:)?(?:\\/|%2f){2})?google\\.[^\\&]*\\/+amp\\/+s\\/+'
  3. not:
    • sender.email.domain.root_domain in ('xfinity.com', 'comcast.net')
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.domain, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.domainequalscmp.cws.xfinity.com
strings.icontainssubstring&targetURL=
regex.icontainsregex&targetUrl=(?:https?)?(?:(?:%3a|\:)?(?:\/|%2f){2})?google\.[^\&]*\/+amp\/+s\/+

Stages and Predicates

Stage 1: mql_rule

and
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  any(body.links)
    and
      body.links.href_url.domain.domain eq "cmp.cws.xfinity.com"
      body.links.href_url.query_params contains "&targetURL="
      body.links.href_url.query_params regex_match "&targetUrl=(?:https?)?(?:(?:%3a|\\:)?(?:\\/|%2f){2})?google\\.[^\\&]*\\/+amp\\/+s\\/+"
  not
    sender.email.domain.root_domain in ["comcast.net", "xfinity.com"]
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: xfinity.com

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of the xfinity.com open redirect. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and any(body.links,
        .href_url.domain.root_domain == "xfinity.com"
        and strings.icontains(.href_url.path, "/learn/cima/login")
        and strings.icontains(.href_url.query_params, "referer=")
        and not regex.icontains(.href_url.query_params,
                                'referer=(?:https?)?(?:(?:%3a|\:)?(?:\/|%2f){2})?xfinity\.com+'
        )
)
and not sender.email.domain.root_domain in ("xfinity.com", "comcast.net")

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)

Detection logic

Scope: inbound message.

Message contains use of the xfinity.com open redirect. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'xfinity.com'
    • .href_url.path contains '/learn/cima/login'
    • .href_url.query_params contains 'referer='
    • not:
      • .href_url.query_params matches 'referer=(?:https?)?(?:(?:%3a|\\:)?(?:\\/|%2f){2})?xfinity\\.com+'
  3. not:
    • sender.email.domain.root_domain in ('xfinity.com', 'comcast.net')
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: regex.icontains, strings.icontains. Reference lists: $high_trust_sender_root_domains.

Indicators matched (3)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsxfinity.com
strings.icontainssubstring/learn/cima/login
strings.icontainssubstringreferer=

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      not
        body.links.href_url.query_params regex_match "referer=(?:https?)?(?:(?:%3a|\\:)?(?:\\/|%2f){2})?xfinity\\.com+"
      body.links.href_url.domain.root_domain eq "xfinity.com"
      body.links.href_url.path contains "/learn/cima/login"
      body.links.href_url.query_params contains "referer="
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  not
    sender.email.domain.root_domain in ["comcast.net", "xfinity.com"]
  type.inbound eq "true"

Exclusions

The rule actively suppresses these predicates.

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"

Open redirect: YouTube

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Looks for use of the YouTube open redirect coming from someone other than YouTube.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • attachments
  • body
  • body.links
  • headers
  • headers.auth_summary
  • sender.email
  • type

Rule body

type.inbound
and (
  any(body.links,
      .href_url.domain.sld == "youtube"
      and (
        strings.icontains(.href_url.url, "attribution_link?")
        or .href_url.path == "/redirect"
      )
  )
  or any(attachments,
         (
           .file_extension in~ $file_extensions_macros
           or .file_extension in~ $file_extensions_common_archives
           or (
             .file_extension is null
             and .file_type == "unknown"
             and .content_type == "application/octet-stream"
             and .size < 100000000
           )
         )
         and any(file.oletools(.).relationships,
                 .name == "hyperlink"
                 and .target_url.domain.sld == "youtube"
                 and (
                   strings.icontains(.target_url.path, "attribution_link?")
                   or .target_url.path == "/redirect"
                 )
         )
  )
)
and headers.auth_summary.dmarc.details.from.root_domain == "youtube.com"

// negate highly trusted sender domains unless they fail DMARC authentication
and (
  (
    sender.email.domain.root_domain in $high_trust_sender_root_domains
    and not headers.auth_summary.dmarc.pass
  )
  or sender.email.domain.root_domain not in $high_trust_sender_root_domains
)
and (
  not profile.by_sender().solicited
  or profile.by_sender().any_messages_malicious_or_spam
)

Detection logic

Scope: inbound message.

Looks for use of the YouTube open redirect coming from someone other than YouTube.

  1. inbound message
  2. any of:
    • any of body.links where all hold:
      • .href_url.domain.sld is 'youtube'
      • any of:
        • .href_url.url contains 'attribution_link?'
        • .href_url.path is '/redirect'
    • any of attachments where all hold:
      • any of:
        • .file_extension in $file_extensions_macros
        • .file_extension in $file_extensions_common_archives
        • all of:
          • .file_extension is missing
          • .file_type is 'unknown'
          • .content_type is 'application/octet-stream'
          • .size < 100000000
      • any of file.oletools(.).relationships where all hold:
        • .name is 'hyperlink'
        • .target_url.domain.sld is 'youtube'
        • any of:
          • .target_url.path contains 'attribution_link?'
          • .target_url.path is '/redirect'
  3. headers.auth_summary.dmarc.details.from.root_domain is 'youtube.com'
  4. any of:
    • all of:
      • sender.email.domain.root_domain in $high_trust_sender_root_domains
      • not:
        • headers.auth_summary.dmarc.pass
    • sender.email.domain.root_domain not in $high_trust_sender_root_domains
  5. any of:
    • not:
      • profile.by_sender().solicited
    • profile.by_sender().any_messages_malicious_or_spam

Inspects: attachments[].content_type, attachments[].file_extension, attachments[].file_type, attachments[].size, body.links, body.links[].href_url.domain.sld, body.links[].href_url.path, body.links[].href_url.url, headers.auth_summary.dmarc.details.from.root_domain, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: file.oletools, profile.by_sender, strings.icontains. Reference lists: $file_extensions_common_archives, $file_extensions_macros, $high_trust_sender_root_domains.

Indicators matched (9)

FieldMatchValue
body.links[].href_url.domain.sldequalsyoutube
strings.icontainssubstringattribution_link?
body.links[].href_url.pathequals/redirect
attachments[].file_typeequalsunknown
attachments[].content_typeequalsapplication/octet-stream
file.oletools(attachments[]).relationships[].nameequalshyperlink
file.oletools(attachments[]).relationships[].target_url.domain.sldequalsyoutube
file.oletools(attachments[]).relationships[].target_url.pathequals/redirect
headers.auth_summary.dmarc.details.from.root_domainequalsyoutube.com

Stages and Predicates

Stage 1: mql_rule

and
  or
    any(attachments)
      and
        any(file.oletools(attachments).relationships)
          and
            or
              file.oletools(attachments[]).relationships[].target_url.path contains "attribution_link?"
              file.oletools(attachments[]).relationships[].target_url.path eq "/redirect"
            file.oletools(attachments[]).relationships[].name eq "hyperlink"
            file.oletools(attachments[]).relationships[].target_url.domain.sld eq "youtube"
        or
          and
            attachments.content_type eq "application/octet-stream"
            attachments.file_extension is_null
            attachments.file_type eq "unknown"
            attachments.size lt "100000000"
           macro "attachments[].file_extension in file_extensions_common_archives"
           macro "attachments[].file_extension in file_extensions_macros"
    any(body.links)
      and
        or
          body.links.href_url.path eq "/redirect"
          body.links.href_url.url contains "attribution_link?"
        body.links.href_url.domain.sld eq "youtube"
  or
    and
      not
        headers.auth_summary.dmarc.pass eq "true"
       macro "sender.email.domain.root_domain in high_trust_sender_root_domains"
     macro "sender.email.domain.root_domain not in high_trust_sender_root_domains"
  or
    not
      profile.by_sender func_call "profile.by_sender().solicited"
    profile.by_sender func_call "profile.by_sender().any_messages_malicious_or_spam"
  headers.auth_summary.dmarc.details.from.root_domain eq "youtube.com"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

Open redirect: YouTube --> Google Redirection Chain

#
Severity
medium
Type
rule
Source
github.com/sublime-security/sublime-rules

Message contains use of a redirect chain which involves YouTube and Google amp. This has been exploited in the wild.

Threat classification

Sublime's own taxonomy (not MITRE ATT&CK).

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesOpen redirect

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • type

Rule body

type.inbound
and any(body.links,
        (
          .href_url.domain.root_domain == "youtube.com"
          and strings.icontains(.href_url.path, 'logout')
          // the redirect field
          and strings.icontains(.href_url.query_params, "continue=")
          and regex.icontains(.href_url.query_params,
                              '&continue=(?:https?)?(?:(?:%3a|\:)?(?:\/|%2f){2})?google\.com[^\&]*\/+amp\/+s\/+'
          )
        )
)

Detection logic

Scope: inbound message.

Message contains use of a redirect chain which involves YouTube and Google amp. This has been exploited in the wild.

  1. inbound message
  2. any of body.links where all hold:
    • .href_url.domain.root_domain is 'youtube.com'
    • .href_url.path contains 'logout'
    • .href_url.query_params contains 'continue='
    • .href_url.query_params matches '&continue=(?:https?)?(?:(?:%3a|\\:)?(?:\\/|%2f){2})?google\\.com[^\\&]*\\/+amp\\/+s\\/+'

Inspects: body.links, body.links[].href_url.domain.root_domain, body.links[].href_url.path, body.links[].href_url.query_params, type.inbound. Sensors: regex.icontains, strings.icontains.

Indicators matched (4)

FieldMatchValue
body.links[].href_url.domain.root_domainequalsyoutube.com
strings.icontainssubstringlogout
strings.icontainssubstringcontinue=
regex.icontainsregex&continue=(?:https?)?(?:(?:%3a|\:)?(?:\/|%2f){2})?google\.com[^\&]*\/+amp\/+s\/+

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    and
      body.links.href_url.domain.root_domain eq "youtube.com"
      body.links.href_url.path contains "logout"
      body.links.href_url.query_params contains "continue="
      body.links.href_url.query_params regex_match "&continue=(?:https?)?(?:(?:%3a|\\:)?(?:\\/|%2f){2})?google\\.com[^\\&]*\\/+amp\\/+s\\/+"
  type.inbound eq "true"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
type.inboundeq
  • true transforms: boolean
field:"type.inbound" kind:eq value:"true"