Detection rules › Sublime MQL

Brand impersonation: QuickBooks notification from Intuit themed company name

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

This detection rule matches on QuickBooks notifications that feature company names impersonating Intuit and QuickBooks.

Threat classification

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

CategoryValues
Attack typesCallback Phishing, Credential Phishing, BEC/Fraud
Tactics and techniquesEvasion, Social engineering

Event coverage

Rule body MQL

type.inbound

// Legitimate Intuit sending infratructure
and sender.email.email == "quickbooks@notification.intuit.com"
and headers.auth_summary.spf.pass
and headers.auth_summary.dmarc.pass
and strings.ends_with(headers.auth_summary.spf.details.designator,
                      '.intuit.com'
)
and (
  // the reply-to contains Inuit Themes
  any(headers.reply_to,
      (
        strings.icontains(.email.email, 'intuit')
        or strings.icontains(.email.domain.domain, 'quickbooks')
      )
      and not (.email.domain.root_domain in ('intuit.com', 'quickbooks.com'))
  )
  // the "company" part of the message
  or regex.icontains(body.html.raw,
                     '<(?:div|p) class="company(?:Name|Details)[^\"]*\"[^\>]*\>[^\<]*(?:Intuit|Quickbooks).*</(?:p|div)>'
  )
)

Detection logic

Scope: inbound message.

This detection rule matches on QuickBooks notifications that feature company names impersonating Intuit and QuickBooks.

  1. inbound message
  2. sender.email.email is 'quickbooks@notification.intuit.com'
  3. headers.auth_summary.spf.pass
  4. headers.auth_summary.dmarc.pass
  5. headers.auth_summary.spf.details.designator ends with '.intuit.com'
  6. any of:
    • any of headers.reply_to where all hold:
      • any of:
        • .email.email contains 'intuit'
        • .email.domain.domain contains 'quickbooks'
      • not:
        • .email.domain.root_domain in ('intuit.com', 'quickbooks.com')
    • body.html.raw matches '<(?:div|p) class="company(?:Name|Details)[^\\"]*\\"[^\\>]*\\>[^\\<]*(?:Intuit|Quickbooks).*</(?:p|div)>'

Inspects: body.html.raw, headers.auth_summary.dmarc.pass, headers.auth_summary.spf.details.designator, headers.auth_summary.spf.pass, headers.reply_to, headers.reply_to[].email.domain.domain, headers.reply_to[].email.domain.root_domain, headers.reply_to[].email.email, sender.email.email, type.inbound. Sensors: regex.icontains, strings.ends_with, strings.icontains.

Indicators matched (7)

FieldMatchValue
sender.email.emailequalsquickbooks@notification.intuit.com
strings.ends_withsuffix.intuit.com
strings.icontainssubstringintuit
strings.icontainssubstringquickbooks
headers.reply_to[].email.domain.root_domainmemberintuit.com
headers.reply_to[].email.domain.root_domainmemberquickbooks.com
regex.icontainsregex<(?:div|p) class="company(?:Name|Details)[^\"]*\"[^\>]*\>[^\<]*(?:Intuit|Quickbooks).*</(?:p|div)>