Malicious PDF — malware analysis report

Static analysis result for SHA-256 84fe6444238a50a9…

MALICIOUS

PDF

44.8 KB
MD5: 94d7d7d073f1f4ee5eff6ddaeae8a9be SHA-1: 3e27fb8d5425bfee2d8632ebda0372ae39f6f626 SHA-256: 84fe6444238a50a90312e332c13994150dd2b03b81b3d345a443ac67cd04b7f6
336 Risk Score

Malware Insights

MITRE ATT&CK
T1203 Exploitation for Client Execution T1059.007 JavaScript

This PDF file exploits CVE-2010-2883, a known Adobe Reader vulnerability, leveraging embedded JavaScript to achieve code execution. The JavaScript contains a shellcode download URL, indicating it's designed to fetch and run a secondary payload. The ML classifier and heuristic firings strongly suggest malicious intent, with the primary IOC being the identified download URL.

Machine Learning

  • Nyx PDF Classifier malicious score 0.9999

Heuristics 10

  • Adobe Reader CoolType SING font exploit — CVE-2010-2883 critical CVE likely CVE_2010_2883
    PDF embeds a TrueType/OpenType font with an actual SING table and pairs it with JavaScript heap-spray shellcode. This matches the public Adobe Reader CoolType SING exploit shape for CVE-2010-2883.
  • 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.
  • 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.
  • Generic recovered JavaScript exploit stage high PDF_GENERIC_STAGE_RECOVERY
    Bounded static stage recovery exposed hidden JavaScript through generic transforms such as null-byte collapse, percent decoding, marker replacement, arithmetic character codes, fromCharCode, numeric arrays, numeric-array minus-key decoders, alphabet-index arrays, /Producer half-difference metadata arrays, hex literals, marker-stripped Base64 literals, custom 6-bit XOR table decoders, or repeated-marker hex carriers. This rule is emitted only when the recovered stage contains exploit-like Acrobat JavaScript or shellcode markers.
  • PDF JavaScript shellcode contains an embedded download URL high PDF_JS_SHELLCODE_DOWNLOAD_URL
    Decoded PDF JavaScript shellcode contains a hardcoded http(s) URL stored as little-endian %uXXXX Unicode escapes. Reader exploit shellcode embeds the second-stage fetch URL this way and pulls it down with a urlmon/URLDownloadToFile-style download-and-execute (commodity downloader behaviour rather than a specific Acrobat CVE).
  • 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.
  • XFA form low PDF_XFA
    PDF uses XML Forms Architecture — can contain script logic
  • 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://fasted.in/nte/koha.html/yH4742d2efV03f01036002R59e915ca108T0bf858c0Q000002fd900801F0055010aJ15000601l0409327
    • http://www.bitstream.com
    • http://ns.adobe.com/xdp/
    • http://www.xfa.org/schema/xci/2.6/
    • http://www.xfa.org/schema/xfa-template/2.6/

Extracted artifacts 9

Files carved from inside the sample during analysis.

FilenameKindSourceSize
javascript_obj0012_000.js
0aae08129c36ee14a3c00ac68d777405c68c3ff11b18deed514694670f3994a5
pdf-javascript-stream PDF /JS object 12 at offset 0xA0BA 3784 bytes
javascript_obj0012_001.js
7cc9fe96ae576e28e24aaea89295c06a5805bb129fae65ecc4284374fdbd9b71
pdf-javascript-stream PDF /JS object 12 at offset 0xA100 4670 bytes
generic_stage_recovery_000.js
f5d98ea35116275193bacf894ce0f6d5e1d5f432b86798f36e2fce0e04f0b09e
deobfuscated-js generic stage recovery split-literal-normalize from JavaScript object 12 at offset 0xA0BA 3734 bytes
generic_stage_recovery_001.js
23376bc409e630b20fed77dfb3b159d033e0327b9fd27abd55a51daed6e2af60
deobfuscated-js generic stage recovery split-literal-normalize from JavaScript object 12 at offset 0xA100 4620 bytes
generic_stage_recovery_002.js
698479937f38c2bdade3f7f2a5572b355cb0df8ad70e131eb7434772d374dab6
deobfuscated-js generic stage recovery split-literal-normalize from combined JavaScript objects at offset 0xA0BA 8355 bytes
Detection
ClamAV: Js.Exploit.Shellcode-18
Obfuscation or payload: unlikely
generic_stage_recovery_003.js
b56efafe591d3ac7596365dad4e7af00950d82f0cc1cacfc050734c664c3b06f
deobfuscated-js generic stage recovery split-literal-normalize from decompressed stream at 0x0 at offset 0x0 45834 bytes
generic_stage_recovery_004.js
d5066f23553c29f785ce0b5a9c66a5ef569fd067fa1367b33538715a711bf066
deobfuscated-js generic stage recovery percent-decode from decompressed stream at 0x0 at offset 0x0 45882 bytes
generic_stage_recovery_005.js
c820fd5bd0771634acf429cf5c9e3e5d1316f74b29e43e73fd5f0a80ede283dc
deobfuscated-js generic stage recovery split-literal-normalize -> percent-decode from decompressed stream at 0x0 at offset 0x0 45832 bytes
font_00_sfnt_off0000033c.bin
683fcffe9abaad29001e134bdd9ad7d1628d5cbbf628c451b6c621f202a7dae4
pdf-font-stream PDF embedded font (sfnt) at offset 0x33C 65932 bytes