Malicious PDF — malware analysis report

Static analysis result for SHA-256 2af0077872a517ae…

MALICIOUS

PDF

22.9 KB
MD5: 60d357eb82a9ef9487ec63b0594d4cd0 SHA-1: 224f1c7d619a70ca41510c666f18f2c57f89fe2d SHA-256: 2af0077872a517aec3739dda33d7ea87fee3b2e73c02c080cdcebcf9d14f6ff1
94 Risk Score

Malware Insights

MITRE ATT&CK
T1059.001 Command and Scripting Interpreter: PowerShell T1059.003 Command and Scripting Interpreter: Windows Command Shell T1059.007 Command and Scripting Interpreter: JavaScript/TypeScript

The PDF file contains embedded JavaScript, indicated by multiple heuristic firings related to PDF JavaScript actions and streams. The JavaScript stream, named 'javascript_obj3332_000.js', is obfuscated using unescape() and String.fromCharCode, suggesting it's designed to hide malicious code. This script likely downloads and executes a second-stage payload. The presence of ASCIIHexDecode and ASCII85Decode filters further supports the malicious nature of the PDF.

Heuristics 7

  • unescape() call high PDF_UNESCAPE
    unescape() found — often used to decode shellcode in PDF JS exploits (matched inside decoded stream)
  • ASCIIHexDecode filter (with exploit indicators) medium PDF_FILTER_HEX
    Hex-encoding filter present alongside exploit delivery indicators — often used to hide payload or shellcode bytes
  • 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)
  • ASCII85Decode filter (with exploit indicators) low PDF_FILTER_85
    ASCII85 encoding filter present alongside exploit delivery indicators — uncommon outside of obfuscation
  • 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 1

Files carved from inside the sample during analysis.

FilenameKindSourceSize
javascript_obj3332_000.js
f072d8cc2f3b991884543f3999133c102a0ededac598b1640da6cade7ffc5a0e
pdf-javascript-stream PDF /JS object 3332 at offset 0x58D1 341 bytes
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 3 eval/decoder/string-building token(s).