Detection rules › Sublime MQL

Sublime MQL rules: sus

Link: Mixed case HTTPS protocol

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

Detects messages containing links with mixed case 'hTTPs' protocol, a technique used to evade detection filters.

Threat classification

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

CategoryValues
Attack typesCredential Phishing, Malware/Ransomware
Tactics and techniquesEvasion

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.links
  • type

Rule body

type.inbound
and length(body.links) > 0 
and any(body.links, strings.contains(.href_url.url, 'hTTPs://'))

Detection logic

Scope: inbound message.

Detects messages containing links with mixed case 'hTTPs' protocol, a technique used to evade detection filters.

  1. inbound message
  2. length(body.links) > 0
  3. any of body.links where:
    • .href_url.url contains 'hTTPs://'

Inspects: body.links, body.links[].href_url.url, type.inbound. Sensors: strings.contains.

Indicators matched (1)

FieldMatchValue
strings.containssubstringhTTPs://

Stages and Predicates

Stage 1: mql_rule

and
  any(body.links)
    body.links.href_url.url contains "hTTPs://"
  body.links length_compare "0"
  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"

Spam: Suspicious toll-free phone number

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

Detects messages containing phone numbers 1 800-555-0199 or 1 800-555-0299 in the subject or body, which is reserved for use by the entertainment industry. Commonly used as a placeholder phone number in LLM-generated campaigns.

Threat classification

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

CategoryValues
Attack typesSpam
Tactics and techniquesSocial engineering

Telemetry coverage

PlatformRecord / event type
SublimeInbound email message

Message attributes

  • body
  • body.current_thread
  • subject
  • type

Rule body

type.inbound
and any([body.current_thread.text, subject.subject],
        regex.icontains(., '\b\+?(\d{1}.)?\(?8\d{2}?\)?.555.?0[12]99\b')
)

Detection logic

Scope: inbound message.

Detects messages containing phone numbers 1 800-555-0199 or 1 800-555-0299 in the subject or body, which is reserved for use by the entertainment industry. Commonly used as a placeholder phone number in LLM-generated campaigns.

  1. inbound message
  2. any of [body.current_thread.text, subject.subject] where:
    • . matches '\\b\\+?(\\d{1}.)?\\(?8\\d{2}?\\)?.555.?0[12]99\\b'

Inspects: body.current_thread.text, subject.subject, type.inbound. Sensors: regex.icontains.

Indicators matched (1)

FieldMatchValue
regex.icontainsregex\b\+?(\d{1}.)?\(?8\d{2}?\)?.555.?0[12]99\b

Stages and Predicates

Stage 1: mql_rule

and
  any([body.current_thread.text, subject.subject])
    [body.current_thread.text, subject.subject] regex_match "\\b\\+?(\\d{1}.)?\\(?8\\d{2}?\\)?.555.?0[12]99\\b"
  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"