Malicious PDF — malware analysis report

Static analysis result for SHA-256 4dd54a9c7631b4f8…

MALICIOUS

PDF

29.7 KB Created: 2008-07-26 19:43:58 Authoring application: Scribus 1.3.3.12 (via Scribus PDF Library 1.3.3.12)
MD5: 9e863164dc511a98a8bee10bbd34ff5b SHA-1: 50f40a0a50a632447ebdcb164211221f2e20843a SHA-256: 4dd54a9c7631b4f8df660b5d400702114488c82a7f5d5881b52b3b83c3f647c8
388 Risk Score

Malware Insights

MITRE ATT&CK
T1059.001 PowerShell T1204.001 Malicious Link T1059.007 JavaScript

This PDF file contains multiple critical heuristic firings indicating exploitation of CVE-2009-0927 (Collab.getIcon), CVE-2007-5659 (Collab.collectEmailInfo), and CVE-2008-2992 (util.printf). These exploits are delivered via a JavaScript stager, which is heavily obfuscated using quoted-hex fragments. The deobfuscated JavaScript is likely responsible for downloading and executing a second-stage payload. ClamAV also detected the file as Pdf.Dropper.Agent-7212336-0 and an extracted JavaScript artifact as Js.Exploit.Shellcode-18.

Machine Learning

  • Nyx PDF Classifier malicious score 1.0000

Heuristics 9

  • 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.Dropper.Agent-7212336-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Pdf.Dropper.Agent-7212336-0
  • ClamAV detection on extracted artifact critical EXTRACTED_FILE_CLAMAV
    ClamAV flagged at least one file extracted from inside this sample. Even when the wrapping document carries no AV detection of its own, a hit on the carved artifact is a strong indicator the sample is a delivery vehicle.
  • Quoted-hex fragment JavaScript stager high PDF_QUOTED_HEX_FRAGMENT_JS_STAGER
    PDF JavaScript stores the hidden exploit stage as many quoted hexadecimal fragments, joins them through helper functions, and evals the recovered JavaScript. The decoder is bounded and only fires when the recovered stage contains concrete Acrobat exploit APIs or heap-spray 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 2

Files carved from inside the sample during analysis.

FilenameKindSourceSize
javascript_obj0013_000.js
639705f239237fc770069937c71e76267c085829de2238859b2d95a413ec98a1
pdf-javascript-stream PDF /JS object 13 at offset 0x336 28809 bytes
quoted_hex_fragment_stage_000.js
9b46bf95865f38cf216a2aefe85e67533d10e0e9470a7b6cba591e50a24f36ab
deobfuscated-js quoted-hex fragment decoded JavaScript object 13 at offset 0x409 5447 bytes
Detection
ClamAV: Js.Exploit.Shellcode-18
Obfuscation or payload: likely
Carved artifact contains 9 eval/decoder/string-building token(s). Carved artifact contains 1 long base64-like blob(s).