Detection rules › Sublime MQL

Link: QuickBooks image lure with suspicious link

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

This rule detects messages with image attachments containing QuickBooks logo containing exactly 1 link to a suspicious URL.

Threat classification

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

CategoryValues
Attack typesCredential Phishing
Tactics and techniquesImpersonation: Brand, Social engineering

Event coverage

Rule body MQL

type.inbound
and length(attachments) < 3
and any(attachments,
        .file_type in $file_types_images
        and any(ml.logo_detect(.).brands, .name == "Quickbooks")
)
and length(body.links) == 1
and (
  // body text is very short
  (
    0 <= (length(body.current_thread.text)) < 10
    or body.current_thread.text is null
  )
  or (
    length(body.current_thread.text) < 1500
    // or body is most likely all warning banner (text contains the sender and common warning banner language)
    and (
      regex.icontains(body.current_thread.text,
                      'caution|confidentiality notice|warning|disclaimer|permission'
      )
    )
  )
)

// suspicious link
and any(body.links,
        (
          .href_url.domain.root_domain not in $tranco_1m
          or .href_url.domain.domain in $free_file_hosts
          or .href_url.domain.root_domain in $free_file_hosts
          or .href_url.domain.root_domain in $free_subdomain_hosts
          or .href_url.domain.domain in $url_shorteners
          or .href_url.domain.domain in $social_landing_hosts
          or 

          // mass mailer link, masks the actual URL
          .href_url.domain.root_domain in (
            "hubspotlinks.com",
            "mandrillapp.com",
            "sendgrid.net",
            "naylorcampaigns.com",
            "rs6.net"
          )
        )

        // exclude sources of potential FPs
        and (
          .href_url.domain.root_domain not in (
            "svc.ms",
            "sharepoint.com",
            "1drv.ms",
            "microsoft.com",
            "aka.ms",
            "msftauthimages.net",
            "intuit.com",
            "turbotax.com",
            "intuit.ca"
          )
          or any(body.links, .href_url.domain.domain in $free_file_hosts)
        )
        and .href_url.domain.root_domain not in $org_domains
)
and sender.email.domain.root_domain not in~ (
  'intuit.com',
  'turbotax.com',
  'intuit.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.

This rule detects messages with image attachments containing QuickBooks logo containing exactly 1 link to a suspicious URL.

  1. inbound message
  2. length(attachments) < 3
  3. any of attachments where all hold:
    • .file_type in $file_types_images
    • any of ml.logo_detect(.).brands where:
      • .name is 'Quickbooks'
  4. length(body.links) is 1
  5. any of:
    • any of:
      • all of:
        • length(body.current_thread.text) ≥ 0
        • length(body.current_thread.text) < 10
      • body.current_thread.text is missing
    • all of:
      • length(body.current_thread.text) < 1500
      • body.current_thread.text matches 'caution|confidentiality notice|warning|disclaimer|permission'
  6. any of body.links where all hold:
    • any of:
      • .href_url.domain.root_domain not in $tranco_1m
      • .href_url.domain.domain in $free_file_hosts
      • .href_url.domain.root_domain in $free_file_hosts
      • .href_url.domain.root_domain in $free_subdomain_hosts
      • .href_url.domain.domain in $url_shorteners
      • .href_url.domain.domain in $social_landing_hosts
      • .href_url.domain.root_domain in ('hubspotlinks.com', 'mandrillapp.com', 'sendgrid.net', 'naylorcampaigns.com', 'rs6.net')
    • any of:
      • .href_url.domain.root_domain not in ('svc.ms', 'sharepoint.com', '1drv.ms', 'microsoft.com', 'aka.ms', 'msftauthimages.net', 'intuit.com', 'turbotax.com', 'intuit.ca')
      • any of body.links where:
        • .href_url.domain.domain in $free_file_hosts
    • .href_url.domain.root_domain not in $org_domains
  7. sender.email.domain.root_domain not in ('intuit.com', 'turbotax.com', 'intuit.ca')
  8. 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.current_thread.text, body.links, body.links[].href_url.domain.domain, body.links[].href_url.domain.root_domain, headers.auth_summary.dmarc.pass, sender.email.domain.root_domain, type.inbound. Sensors: ml.logo_detect, regex.icontains. Reference lists: $file_types_images, $free_file_hosts, $free_subdomain_hosts, $high_trust_sender_root_domains, $org_domains, $social_landing_hosts, $tranco_1m, $url_shorteners.

Indicators matched (19)

FieldMatchValue
ml.logo_detect(attachments[]).brands[].nameequalsQuickbooks
regex.icontainsregexcaution|confidentiality notice|warning|disclaimer|permission
body.links[].href_url.domain.root_domainmemberhubspotlinks.com
body.links[].href_url.domain.root_domainmembermandrillapp.com
body.links[].href_url.domain.root_domainmembersendgrid.net
body.links[].href_url.domain.root_domainmembernaylorcampaigns.com
body.links[].href_url.domain.root_domainmemberrs6.net
body.links[].href_url.domain.root_domainmembersvc.ms
body.links[].href_url.domain.root_domainmembersharepoint.com
body.links[].href_url.domain.root_domainmember1drv.ms
body.links[].href_url.domain.root_domainmembermicrosoft.com
body.links[].href_url.domain.root_domainmemberaka.ms
7 more
body.links[].href_url.domain.root_domainmembermsftauthimages.net
body.links[].href_url.domain.root_domainmemberintuit.com
body.links[].href_url.domain.root_domainmemberturbotax.com
body.links[].href_url.domain.root_domainmemberintuit.ca
sender.email.domain.root_domainmemberintuit.com
sender.email.domain.root_domainmemberturbotax.com
sender.email.domain.root_domainmemberintuit.ca