Malicious PDF — malware analysis report

Static analysis result for SHA-256 76b3dcc1dd1cca6f…

MALICIOUS

PDF

23.6 KB
MD5: 23c953a0987bc8f4d6158ff5ded8f088 SHA-1: 0d6a23a5abbf4ef4e8c5201b63ff3c78ab89a9dd SHA-256: 76b3dcc1dd1cca6faf5da8dc49bd3b0839c1e4e1128cd0d11890e15759c98a84
120 Risk Score

Malware Insights

MITRE ATT&CK
T1059.007 JavaScript T1203 Exploitation for Client Execution T1566.001 Spearphishing Attachment

The PDF contains embedded JavaScript, which is heavily obfuscated and utilizes String.fromCharCode, indicating an attempt to hide malicious code. The ML classifier and heuristics strongly suggest this JavaScript is part of an exploit cluster designed to execute arbitrary code. The deobfuscated JavaScript confirms the presence of complex scripting, likely intended to download and execute a second-stage payload.

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
85af5ea6d3e859bcbd553f38f92f5175b0776d499a033ebc8dbf3ff24a38f77d
pdf-javascript-stream PDF /JS object 99 at offset 0x548D 8669 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
32fe6198d05bc62b7b08e4e5e35c202776a780d66ec270ba788ec4e14b508f55
deobfuscated-js PDF JavaScript deobfuscation pass 39679 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).