Malicious PDF — malware analysis report

Static analysis result for SHA-256 120ea13542f14e35…

MALICIOUS

PDF

15.9 KB Created: 2008-08-06 01:42:27 Authoring application: Scribus 1.3.3.12 (via Scribus PDF Library 1.3.3.12)
MD5: e3ec39d2bb1344b2408129cc57390da2 SHA-1: e9479a2dc9dfde668e941f2d39bb628b9132aa19 SHA-256: 120ea13542f14e354bd0b4b941531298116518e49a861ce5b57721dece110dcd
248 Risk Score

Malware Insights

MITRE ATT&CK
T1203 Exploitation for Client Execution T1059.007 JavaScript

This PDF file contains embedded JavaScript that exploits the CVE-2008-2992 vulnerability, indicated by the 'util.printf' usage. The JavaScript is heavily obfuscated and appears to be designed to download and execute a secondary payload. The ML classifier strongly flags this as malicious, and the presence of exploit-related heuristics confirms its malicious intent.

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 9

Files carved from inside the sample during analysis.

FilenameKindSourceSize
javascript_obj0012_001.js
39ae647cf294b4923a80b1ac2089b3c3714e7fdb673169c0abbd0f02bc309bae
pdf-javascript-stream PDF /JS object 12 at offset 0x371 14635 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 3 eval/decoder/string-building token(s).
javascript_obj0012_002.js
ab5eb95460d999ac6f2b901a6fd67aac67192225c32dcca4e2392bdef93902e7
pdf-javascript-stream PDF /JS object 12 at offset 0x397 15378 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 3 eval/decoder/string-building token(s).
generic_stage_recovery_000.js
67115243fc60953e596e3aec97ebb4c1765f83f74dacfbfc0eea3f1e877efc2d
deobfuscated-js generic stage recovery split-literal-normalize from JavaScript object 12 at offset 0x371 14095 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 3 eval/decoder/string-building token(s).
generic_stage_recovery_001.js
5e483d4a86e554f9c415f6974364a6b454f28638aefcd330a7dc70bcce570a68
deobfuscated-js generic stage recovery split-literal-normalize from JavaScript object 12 at offset 0x397 14838 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 3 eval/decoder/string-building token(s).
generic_stage_recovery_002.js
c9aa4cfe67a76e6051ada4e77942f3a4e9fff3711327ce2d2c132012eed11f8e
deobfuscated-js generic stage recovery split-literal-normalize from combined JavaScript objects at offset 0x11 28953 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 6 eval/decoder/string-building token(s).
generic_stage_recovery_003.js
c58e54ccc6f80bce2fe3d2ec47bd9dc7fb0d16c9c9fe2b293a01db0a4deac0c9
deobfuscated-js generic stage recovery split-literal-normalize -> percent-decode from JavaScript object 12 at offset 0x371 14093 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 3 eval/decoder/string-building token(s).
generic_stage_recovery_004.js
528319636dd2e20a9f519fa6d99e63883c3f48fd03b98a5a37fd9962df92a7b8
deobfuscated-js generic stage recovery split-literal-normalize -> percent-decode from JavaScript object 12 at offset 0x397 14836 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 3 eval/decoder/string-building token(s).
generic_stage_recovery_005.js
46af52c5fdfb632eb8609995906b6d83ed3e2e53e1996d0873ec701a10373a38
deobfuscated-js generic stage recovery split-literal-normalize -> percent-decode from combined JavaScript objects at offset 0x11 28949 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 6 eval/decoder/string-building token(s).
combined_document_js_000.js
92244317dc4267c45787ec6ae7f52bb4068a817ac622af031bc345c1d09dc05b
deobfuscated-js combined document JavaScript streams at offset 0x11 30033 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 6 eval/decoder/string-building token(s).