Lo script il piu' delle volte e' offuscato, ossia contiene codici di escape che al momento della lettura della pagina vengono trasformati in javascript in chiaro.
Inoltre molte volte il codice viene criptato tramite chiave per impedire la decodifica.
Traendo spunto da un articolo pubblicato su
http://scriptasylum.com/tutorials/encdec/encode-decode.html
ho creato questa semplice pagina web che permette di decodificare istantaneamente alcuni codici java offuscati a questo link: PAGINA DI DECODIFCA JAVASCRIPT OFFUSCATI
ho creato questa semplice pagina web che permette di decodificare istantaneamente alcuni codici java offuscati a questo link: PAGINA DI DECODIFCA JAVASCRIPT OFFUSCATI
Consideriamo il codice offuscato tuttora presente nella pagine web recentemente attaccate su domini di providers italiani
sono presenti due porzioni di codice java costituito da sequenze di escape....
La prima con sequenza escape (in giallo) non criptata...che in realta' contiene la funzione di decodifica df(s) della seconda parte di codice (in arancio) che invece contiene la sequenza di escape criptata. con l'indirizzo IP al sito malware.
Passando queste 2 stringhe di escape ( passare solo il codice compreso tra apici senza le parentesi e gli apici es. '%3C%73%......; la parte di codice in giallo nella finestra decodifica senza key, per la parte in arancio nella finestra decodifica con KEY ) abbiamo:
e nella corrispondente finestra di testo in chiaro ora possiamo leggere le due parti di codice.
La seconda parte decriptata mostra la chiamata ad un IP /81.95.148.42 registrato a nome di RBNET descr: RBusiness NetworkPanama City address: Republic of Panama, sito con sicuramente malware o reindirizzamenti ad altri siti con malware.
Aggiornamento
Ho portato in Autoit da javascript il codice del programma di decodifica dello script offuscato.
Si puo notare dal codice dello script di decodifica che la chiave numerica usata non e' altro che l'ultimo carattere numerico della sequenza di escape.
Nel nostro caso abbiamo l'ultimo carattere della stringa criptata = 3 ed e' proprio il numero 3 il valore chiave.
La decodifica viene ottenuta sottraendo il numero 3 a tutta alla sequenza dei codici numerici unicode dalla stringa opportunamente convertita.
Si ottine cosi' la stringa in chiaro che puo essere eseguita all'interno della pagina.
Probabilmente esistono altri script che invece che sottrarre la chiave numerica la sommano, oppure compiono altri passaggi matematici piu' complessi, ma in sostatnza questo algoritmo risulta molto semplice, molto piu' di quanto pensavo, prima di dargli una occhiata un po piu' approfondita.
Edgar
4 commenti:
questo tipo è molto semplice da decodificare ma altri non sono così banali purtroppo. Comunque hai fatto benissimo a fare questa cosa
Infatti, ho messo nel titolo 'semplici javascript...' propio perche' pensavo che ne esistono di piu complessi. Comunque visto che con una scasione ieri con webscanner ho trovato 45 SITES su IP 194.242.61.177 mentre a luglio erano Num. 41 SITES at IP 194.242.61.177 (invece che diminuire aumentano ....) mi sa che per un po ne avremo ancora in giro di questo semplice codice... anche se al momento innocuo a meno che qualcuno non decida di riattivare il server malware...
Edgar
Ciao,
qualcuno può aiutarmi a decodificare questa pagina:
http://global.frooition.com/ebay/js/template_script.php
Ho provato a seguire i passaggi ma senza successo anche perchè la formula per ricavare la chiave sembra + complessa.
Grazie
Ho pubblicato sul blog (in data odierna) una breve risposta al tuo quesito che spero passa esserti utie
http://edetools.blogspot.com/2009/01/breve-risposta-ad-un-quesito-su-come.html
Saluti
Edgar
Posta un commento