Malicious PDF — malware analysis report

Static analysis result for SHA-256 081580ce7910c1dc…

MALICIOUS

PDF

3.4 KB Created: 2008-08-06 01:42:27 Authoring application: Scribus 1.3.3.12 (via Scribus PDF Library 1.3.3.12)
MD5: dfce61c84bb28cd7fb7afdbe2a100cf8 SHA-1: 7b9a634e92ccd514cf7b1d57e94300794b90f843 SHA-256: 081580ce7910c1dcd72bdee695c9f625586dae51a2d22bd1f02752a8b60788ae
248 Risk Score

Malware Insights

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

This PDF file contains embedded JavaScript that leverages the CVE-2008-2992 vulnerability via `util.printf`. The JavaScript is heavily obfuscated and appears to be designed to download and execute a secondary payload. The presence of multiple deobfuscated JavaScript stages and the ML classifier's high confidence further support this assessment.

Machine Learning

  • Nyx PDF Classifier malicious score 1.0000

Heuristics 7

  • util.printf — CVE-2008-2992 critical CVE exact CVE_2008_2992
    PDF JavaScript calls util.printf() — CVE-2008-2992 is a stack buffer overflow in Adobe Reader triggered by a long format-specifier argument. Widely exploited in the wild after disclosure.
  • 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.
  • unescape() call high PDF_UNESCAPE
    unescape() found — often used to decode shellcode in PDF JS exploits
  • Generic recovered JavaScript exploit stage high PDF_GENERIC_STAGE_RECOVERY
    Bounded static stage recovery exposed hidden JavaScript through generic transforms such as null-byte collapse, percent decoding, marker replacement, arithmetic character codes, fromCharCode, numeric arrays, numeric-array minus-key decoders, alphabet-index arrays, /Producer half-difference metadata arrays, hex literals, marker-stripped Base64 literals, custom 6-bit XOR table decoders, or repeated-marker hex carriers. This rule is emitted only when the recovered stage contains exploit-like Acrobat JavaScript or shellcode markers.
  • 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.
  • 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.

Extracted artifacts 6

Files carved from inside the sample during analysis.

FilenameKindSourceSize
javascript_obj0013_001.js
9ea5ef52031ca98b7d445fdf183e4300e712e2d4c73e394c8397807003f13d00
pdf-javascript-stream PDF /JS object 13 at offset 0x3DC 1803 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 2 eval/decoder/string-building token(s). Carved artifact contains 1 long base64-like blob(s).
javascript_obj0013_002.js
db84557c84ba5570977df1a2521824f101fc2dd2e61fbade56624d4fa2571265
pdf-javascript-stream PDF /JS object 13 at offset 0x402 2439 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 2 eval/decoder/string-building token(s). Carved artifact contains 1 long base64-like blob(s).
generic_stage_recovery_000.js
97cd174b9991c5c61777285d1bf4462ea4e631e5ce75dfdb946bd3255e4229c1
deobfuscated-js generic stage recovery split-literal-normalize from JavaScript object 13 at offset 0x3DC 1794 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 2 eval/decoder/string-building token(s). Carved artifact contains 1 long base64-like blob(s).
generic_stage_recovery_001.js
0d90672aec0e3bc3787f94b58bfae3b1fd35c238f54dc559be006fc0b1d4394a
deobfuscated-js generic stage recovery split-literal-normalize from JavaScript object 13 at offset 0x402 2430 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 2 eval/decoder/string-building token(s). Carved artifact contains 1 long base64-like blob(s).
generic_stage_recovery_002.js
69ab00231a1dde4826d70de39b49f486c69d4fe27d5b7ebebc71d9276218ce78
deobfuscated-js generic stage recovery split-literal-normalize from combined JavaScript objects at offset 0x11 4245 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 4 eval/decoder/string-building token(s). Carved artifact contains 2 long base64-like blob(s).
combined_document_js_000.js
aca19679309c70c83531d62b3fd9593aeaf67c7df1a839fc28a46776ea633e06
deobfuscated-js combined document JavaScript streams at offset 0x11 4263 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 4 eval/decoder/string-building token(s). Carved artifact contains 2 long base64-like blob(s).