Malicious PDF — malware analysis report

Static analysis result for SHA-256 b015be1c89aa5c46…

MALICIOUS

PDF

23.6 KB
MD5: 0a0db9b6cef0fd4889d46590cc7ce989 SHA-1: 15adadfb9df0b249de8c4f77541324b9434c6788 SHA-256: b015be1c89aa5c46e89829b4058e0878ed6f0f525850e7715a405b1ea74b8fbf
120 Risk Score

Malware Insights

MITRE ATT&CK
T1059.001 PowerShell T1204.002 Malicious File

The PDF contains embedded JavaScript, flagged by multiple heuristics as an exploit cluster. The JavaScript code, particularly in the deobfuscated.js file, appears to be designed to download and execute a secondary payload. The ML classifier strongly indicates maliciousness. While the exact URL for the payload download is obfuscated, the presence of the JavaScript and the ML score are strong indicators of a malicious PDF dropper.

Machine Learning

  • Nyx PDF Classifier malicious score 0.9994

Heuristics 7

  • PDF JavaScript exploit cluster critical PDF_JS_EXPLOIT_CLUSTER
    PDF combines an executable JavaScript/action surface with exploit staging indicators such as eval/unescape/fromCharCode, XFA script content, or a related CVE pattern. Benign form JavaScript remains low-severity, but this correlated cluster is high-confidence malicious behavior.
  • JavaScript action low PDF_JAVASCRIPT
    PDF contains a /JavaScript action. Generic JavaScript is common in benign forms; specific dangerous APIs are scored by separate rules.
  • Embedded JS stream low PDF_JS
    PDF references a /JS stream. Generic JavaScript is common in benign forms; specific dangerous APIs are scored by separate rules.
  • String.fromCharCode low PDF_FROMCHARCODE
    String.fromCharCode found — used to construct payload strings dynamically. Common in benign JavaScript libraries for codepoint manipulation, so this alone is informational; weaponised use is also caught by the dedicated fromCharCode-stage and exploit-shape rules. (matched inside decoded stream)
  • PDF paints image(s) but contains no text operators info PDF_IMAGE_ONLY_LURE
    PDF has 1 image XObject(s) and the content stream contains no text-emitting operators (BT/ET, Tj, TJ, ', ") in either raw bytes or decompressed streams — this is the screenshot-as-PDF pattern used to bypass text-based scanners and to deliver instructions purely through rendered pixels. It is informational unless paired with invisible links or risky URI context.
  • Suspicious extracted artifact info EXTRACTED_FILE_STATIC_TRIAGE
    One or more files extracted from inside this sample matched static suspicious-content checks such as script obfuscation, encoded payload blobs, packed data, or execution/download terms.
  • Embedded URL info EMBEDDED_URL
    One or more URLs were extracted from the document. The URL itself is not a detection — see the per-URL labels for which channel (macro, JS, link annotation, document body, ...) reached each URL.
    URL http://www.w3.org/1999/02/22-rdf-syntax-ns#
    • http://ns.adobe.com/xap/1.0/
    • http://purl.org/dc/elements/1.1/
    • http://ns.adobe.com/xap/1.0/mm/
    • http://ns.adobe.com/pdf/1.3/

Extracted artifacts 2

Files carved from inside the sample during analysis.

FilenameKindSourceSize
javascript_obj0099_000.js
7d34ceda6f8de1dc5357ab9bd2e0016e372350f5444c343e81e1e0be7ba79e3b
pdf-javascript-stream PDF /JS object 99 at offset 0x548D 8693 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 2 eval/decoder/string-building token(s). Carved artifact contains 9 long base64-like blob(s).
deobfuscated.js
9515d88756410c6e49878cb67ce79f0bcbdb6c9db30aef26e6e68670dc83b1b9
deobfuscated-js PDF JavaScript deobfuscation pass 40351 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 4 eval/decoder/string-building token(s). Carved artifact contains 18 long base64-like blob(s).