Detection rules › Sublime MQL

Attachment: PDF file with low reputation link to ZIP file (unsolicited)

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

Detects messages with PDF attachments linking directly to zip files from unsolicited senders.

Threat classification

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

CategoryValues
Attack typesMalware/Ransomware
Tactics and techniquesEvasion, PDF

Event coverage

Rule body MQL

type.inbound
and any(ml.nlu_classifier(body.current_thread.text).entities,
        .name == "request"
)
and any(attachments,
        .file_extension == "pdf"
        and any(file.explode(.),
                any(.scan.pdf.urls,
                    regex.contains(.url, '\.(?:zip)')
                    and .domain.root_domain not in $tranco_1m
                )
        )
)
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 messages with PDF attachments linking directly to zip files from unsolicited senders.

  1. inbound message
  2. any of ml.nlu_classifier(body.current_thread.text).entities where:
    • .name is 'request'
  3. any of attachments where all hold:
    • .file_extension is 'pdf'
    • any of file.explode(.) where:
      • any of .scan.pdf.urls where all hold:
        • .url matches '\\.(?:zip)'
        • .domain.root_domain not in $tranco_1m
  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: attachments[].file_extension, body.current_thread.text, type.inbound. Sensors: file.explode, ml.nlu_classifier, profile.by_sender, regex.contains. Reference lists: $tranco_1m.

Indicators matched (3)

FieldMatchValue
ml.nlu_classifier(body.current_thread.text).entities[].nameequalsrequest
attachments[].file_extensionequalspdf
regex.containsregex\.(?:zip)