Malicious PDF — malware analysis report

Static analysis result for SHA-256 4f2974bd59bf58d6…

MALICIOUS

PDF

118.6 KB
MD5: 235b5eaf9908228c7eadbf5df7cb3a9e SHA-1: 3305b8772f9f2b536f4c81a38a0a64a7fabdbc20 SHA-256: 4f2974bd59bf58d6d0f23d5f171af9ba406d97343047bab2b231005fc2288c57
166 Risk Score

Malware Insights

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

The PDF file contains embedded JavaScript, including a large comment-padded eval stager. This indicates the file is designed to exploit vulnerabilities within PDF viewers to execute malicious code. The presence of 'eval()' and 'String.fromCharCode' functions, along with the ClamAV detection signature 'Pdf.Exploit.Agent-36086', strongly suggests that this PDF acts as a dropper or exploit loader. The primary intent appears to be downloading and executing a second-stage payload, although the specific payload and its ultimate destination could not be determined from the provided static analysis.

Heuristics 7

  • ClamAV: Pdf.Exploit.Agent-36086 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Pdf.Exploit.Agent-36086
  • eval() call high PDF_EVAL
    eval() found — commonly used for obfuscated exploit execution (matched inside decoded stream)
  • Large comment-padded JavaScript eval stager high PDF_JS_LARGE_COMMENT_PADDED_EVAL
    PDF JavaScript contains a very large stream padded with long random-looking block comments around String.fromCharCode and eval. This is an exploit-kit obfuscation shape used to bury a decoder and recovered stage inside noise, not normal PDF form automation.
  • 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.
  • String.fromCharCode low PDF_FROMCHARCODE
    String.fromCharCode found — used to construct payload strings dynamically. Common in benign JavaScript libraries for codepoint manipulation, so this alone is informational; weaponised use is also caught by the dedicated fromCharCode-stage and exploit-shape rules. (matched inside decoded stream)
  • 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_obj0006_000.js
287a659d69ece77cb8257e1157a7603e4f5cc493e6ce29a9d05b100837889c3c
pdf-javascript-stream PDF /JS object 6 at offset 0x143 626654 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 2 eval/decoder/string-building token(s). Carved artifact contains 42 long base64-like blob(s).
legacy_pdfkit_stage_000.js
c5eb495de554bf371dcb1b4d4fa51ad26a1c107a933fb8afec6b03b4b0fd01e5
deobfuscated-js double percent-decoded annotation JavaScript at offset 0x143 262144 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 673 long base64-like blob(s).