Detection rules › Sublime MQL

Attachment: PDF with suspicious language and redirect to suspicious file type

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

Attached PDF contains credential theft language, and links to an open redirect to a suspicious file type. This has been observed in-the-wild as a Qakbot technique.

Threat classification

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

CategoryValues
Attack typesMalware/Ransomware, Credential Phishing
Tactics and techniquesEvasion, PDF

Event coverage

Rule body MQL

type.inbound
and any(attachments,
        .file_type == "pdf"
        and any(file.explode(.),
                length(.scan.url.urls) > 0
                and any(ml.nlu_classifier(.scan.ocr.raw).intents,
                        .name == "cred_theft"
                        and .confidence in~ ("medium", "high")
                )
                and any(.scan.url.urls,
                        strings.icontains(ml.link_analysis(.).final_dom.display_text,
                                          "Redirect Notice"
                        )
                        and (
                          strings.contains(ml.link_analysis(.).final_dom.display_text,
                                           ".zip"
                          )
                          or strings.contains(ml.link_analysis(.).final_dom.display_text,
                                              ".php"
                          )
                        )
                )
        )
)

Detection logic

Scope: inbound message.

Attached PDF contains credential theft language, and links to an open redirect to a suspicious file type. This has been observed in-the-wild as a Qakbot technique.

  1. inbound message
  2. any of attachments where all hold:
    • .file_type is 'pdf'
    • any of file.explode(.) where all hold:
      • length(.scan.url.urls) > 0
      • any of ml.nlu_classifier(.scan.ocr.raw).intents where all hold:
        • .name is 'cred_theft'
        • .confidence in ('medium', 'high')
      • any of .scan.url.urls where all hold:
        • ml.link_analysis(.).final_dom.display_text contains 'Redirect Notice'
        • any of:
          • ml.link_analysis(.).final_dom.display_text contains '.zip'
          • ml.link_analysis(.).final_dom.display_text contains '.php'

Inspects: attachments[].file_type, type.inbound. Sensors: file.explode, ml.link_analysis, ml.nlu_classifier, strings.contains, strings.icontains.

Indicators matched (7)

FieldMatchValue
attachments[].file_typeequalspdf
ml.nlu_classifier(file.explode(attachments[])[].scan.ocr.raw).intents[].nameequalscred_theft
ml.nlu_classifier(file.explode(attachments[])[].scan.ocr.raw).intents[].confidencemembermedium
ml.nlu_classifier(file.explode(attachments[])[].scan.ocr.raw).intents[].confidencememberhigh
strings.icontainssubstringRedirect Notice
strings.containssubstring.zip
strings.containssubstring.php