Malicious PDF — malware analysis report

Static analysis result for SHA-256 4c03a9d2be4b3b20…

MALICIOUS

PDF

73.2 KB Authoring application: sli
MD5: c3a23745860bb8fc19e5acd72ea0bf11 SHA-1: c738cdb5379b3d8046efa2a31ff8133722b984cd SHA-256: 4c03a9d2be4b3b202859d72e6f9ed29002d85c8573dcbb4b69fbac9303a349c5
358 Risk Score

Malware Insights

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

This PDF file exploits several legacy Adobe Reader vulnerabilities including CVE-2009-4324 (media.newPlayer), CVE-2009-0927 (Collab.getIcon), CVE-2007-5659 (Collab.collectEmailInfo), and CVE-2008-2992 (util.printf). The exploit leverages a character-table indexed JavaScript stager to reconstruct and execute malicious JavaScript code. This code is designed to download and execute a second-stage payload, as indicated by the 'Pdf.Exploit.Dropped-91' ClamAV detection.

Heuristics 9

  • media.newPlayer — CVE-2009-4324 critical CVE exact CVE_2009_4324
    PDF JavaScript calls media.newPlayer — CVE-2009-4324 is a use-after-free in Adobe Reader's multimedia plugin triggered by media.newPlayer(). Actively exploited as a zero-day in December 2009. (identified after JavaScript deobfuscation)
  • Collab.getIcon — CVE-2009-0927 critical CVE exact CVE_2009_0927
    PDF JavaScript calls Collab.getIcon — CVE-2009-0927 is a stack buffer overflow in Adobe Reader triggered by Collab.getIcon() with a crafted argument. Allows arbitrary code execution. (identified after JavaScript deobfuscation)
  • Collab.collectEmailInfo — CVE-2007-5659 critical CVE exact CVE_2007_5659
    PDF JavaScript calls Collab.collectEmailInfo — CVE-2007-5659 is a buffer overflow in Adobe Reader triggered by a long argument or heap-sprayed message field passed to Collab.collectEmailInfo(). Part of a series of Acrobat JS API exploits. (identified after JavaScript deobfuscation)
  • 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. (identified after JavaScript deobfuscation)
  • ClamAV: Pdf.Exploit.Dropped-91 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Pdf.Exploit.Dropped-91
  • Character-table JavaScript eval stager high PDF_JS_CHAR_TABLE_EVAL_STAGER
    PDF JavaScript reconstructs an exploit stage by indexing into a small character table, appending hundreds of one-character fragments, joining the array, and evaluating the result. This static fallback fires only after the bounded decoder recovers an exploit-like stage, so it catches this obfuscation even when no single CVE API signature is available.
  • 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 3

Files carved from inside the sample during analysis.

FilenameKindSourceSize
javascript_obj0076_000.js
2c0038e63f5571c130f7c86875600e748cf415f4088dd4409c29b80fc1a8b64e
pdf-javascript-stream PDF /JS object 76 at offset 0x42D 65797 bytes
eval_char_append_stage_000.js
85d78d76564063f786e4457eb65a42d2471ba4daad0d0bd013d8453a8b794f87
deobfuscated-js eval character-table append decoded JavaScript at offset 0x479 3876 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 11 eval/decoder/string-building token(s). Carved artifact contains 1 long base64-like blob(s).
deobfuscated.js
4984ce7b74d60aab15c5cf412c2688c4fcb6b570da104b68b4f324aaea3d6781
deobfuscated-js PDF JavaScript deobfuscation pass 70008 bytes