Detection rules › Sublime MQL
Brand impersonation: Amazon Web Services (AWS)
Detects messages impersonating AWS through similar display names combined with security-themed content and authentication failures. Excludes legitimate AWS communications and trusted senders.
Threat classification
Sublime's own taxonomy (not MITRE ATT&CK).
| Category | Values |
|---|---|
| Attack types | Credential Phishing |
| Tactics and techniques | Impersonation: Brand, Social engineering |
Event coverage
| Message attribute |
|---|
| body.current_thread |
| headers.auth_summary |
| sender |
| sender.email |
| type |
Rule body MQL
type.inbound
and regex.icontains(strings.replace_confusables(sender.display_name),
'\baws\b|amazon web services|\bses\b'
)
and (
// ML Topic Analysis and Credential Theft Detection
any(ml.nlu_classifier(body.current_thread.text).topics,
.name in ("Security and Authentication", "Secure Message")
and .confidence == "high"
)
or any(ml.nlu_classifier(beta.ocr(file.message_screenshot()).text).topics,
.name in ("Security and Authentication", "Secure Message")
and .confidence == "high"
and beta.ocr(file.message_screenshot()).text != ""
)
or any(ml.nlu_classifier(body.current_thread.text).intents,
.name == "cred_theft" and .confidence == "high"
)
or any(ml.nlu_classifier(beta.ocr(file.message_screenshot()).text).intents,
.name == "cred_theft" and .confidence == "high"
)
)
// Not from legitimate AWS domains
// there was a DMARC check here, but a lot of users send AWS notifications to groups/mailing lists that breaks DMARC
and not (
sender.email.domain.root_domain in $org_domains
or sender.email.domain.root_domain in (
"amazon.com",
"amazonaws.com",
"amazonses.com",
"awsevents.com",
"aws-experience.com",
"marketplace.aws",
"aws.com",
"amazonaws.cn",
"repost.aws",
"awscustomercouncil.com",
"airtableemail.com", // used for re:Invent
"nmls.org", // "state examination system", realtor software
"mktgcampaigns.com", // Elastic + AWS co-marketing emails
"awseducate.com",
"awsacademy.com"
)
or sender.email.domain.tld == "local"
)
// 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
Detection logic
Scope: inbound message.
Detects messages impersonating AWS through similar display names combined with security-themed content and authentication failures. Excludes legitimate AWS communications and trusted senders.
- inbound message
- strings.replace_confusables(sender.display_name) matches '\\baws\\b|amazon web services|\\bses\\b'
any of:
any of
ml.nlu_classifier(body.current_thread.text).topicswhere all hold:- .name in ('Security and Authentication', 'Secure Message')
- .confidence is 'high'
any of
ml.nlu_classifier(beta.ocr(file.message_screenshot()).text).topicswhere all hold:- .name in ('Security and Authentication', 'Secure Message')
- .confidence is 'high'
- beta.ocr(file.message_screenshot()).text is not ''
any of
ml.nlu_classifier(body.current_thread.text).intentswhere all hold:- .name is 'cred_theft'
- .confidence is 'high'
any of
ml.nlu_classifier(beta.ocr(file.message_screenshot()).text).intentswhere all hold:- .name is 'cred_theft'
- .confidence is 'high'
none of:
- sender.email.domain.root_domain in $org_domains
- sender.email.domain.root_domain in ('amazon.com', 'amazonaws.com', 'amazonses.com', 'awsevents.com', 'aws-experience.com', 'marketplace.aws', 'aws.com', 'amazonaws.cn', 'repost.aws', 'awscustomercouncil.com', 'airtableemail.com', 'nmls.org', 'mktgcampaigns.com', 'awseducate.com', 'awsacademy.com')
- sender.email.domain.tld is 'local'
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
not:
- profile.by_sender().solicited
Inspects: body.current_thread.text, headers.auth_summary.dmarc.pass, sender.display_name, sender.email.domain.root_domain, sender.email.domain.tld, type.inbound. Sensors: beta.ocr, file.message_screenshot, ml.nlu_classifier, profile.by_sender, regex.icontains, strings.replace_confusables. Reference lists: $high_trust_sender_root_domains, $org_domains.
Indicators matched (27)
| Field | Match | Value |
|---|---|---|
regex.icontains | regex | \baws\b|amazon web services|\bses\b |
ml.nlu_classifier(body.current_thread.text).topics[].name | member | Security and Authentication |
ml.nlu_classifier(body.current_thread.text).topics[].name | member | Secure Message |
ml.nlu_classifier(body.current_thread.text).topics[].confidence | equals | high |
ml.nlu_classifier(beta.ocr(file.message_screenshot()).text).topics[].name | member | Security and Authentication |
ml.nlu_classifier(beta.ocr(file.message_screenshot()).text).topics[].name | member | Secure Message |
ml.nlu_classifier(beta.ocr(file.message_screenshot()).text).topics[].confidence | equals | high |
ml.nlu_classifier(body.current_thread.text).intents[].name | equals | cred_theft |
ml.nlu_classifier(body.current_thread.text).intents[].confidence | equals | high |
ml.nlu_classifier(beta.ocr(file.message_screenshot()).text).intents[].name | equals | cred_theft |
ml.nlu_classifier(beta.ocr(file.message_screenshot()).text).intents[].confidence | equals | high |
sender.email.domain.root_domain | member | amazon.com |
15 more
sender.email.domain.root_domain | member | amazonaws.com |
sender.email.domain.root_domain | member | amazonses.com |
sender.email.domain.root_domain | member | awsevents.com |
sender.email.domain.root_domain | member | aws-experience.com |
sender.email.domain.root_domain | member | marketplace.aws |
sender.email.domain.root_domain | member | aws.com |
sender.email.domain.root_domain | member | amazonaws.cn |
sender.email.domain.root_domain | member | repost.aws |
sender.email.domain.root_domain | member | awscustomercouncil.com |
sender.email.domain.root_domain | member | airtableemail.com |
sender.email.domain.root_domain | member | nmls.org |
sender.email.domain.root_domain | member | mktgcampaigns.com |
sender.email.domain.root_domain | member | awseducate.com |
sender.email.domain.root_domain | member | awsacademy.com |
sender.email.domain.tld | equals | local |