PDA

Просмотр полной версии : Скрипт для раскодировки


XJIOP
09.01.2008, 06:52
жаль тему закрыли пришлось новую делать.

вообщем есть такой скрипт
function hp_d11(s){
var o="",ar=new Array(),
os="",
ic=0;
for(i=0;i<s.length;i++){
c=s.charCodeAt(i);
if(c<128)c=c^2;
os+=String.fromCharCode(c);
if(os.length>80){
ar[ic++]=os;
os=""
}
}
o=ar.join("")+os;
return o
}

как я понял он читает этот закодированый ява скрипт
gtcn*dwlavkml*r.c.a.i.g.p+yg?dwlavkml*a+ypgvwpl*a>c=%25%258g*rcpqgKlv*a-c+++)**a?a'c+%3C17=Qvpkle,dpmoAjcpAmfg*a)0;+8a,vmQ vpkle*14++%7F9kd*#%25%25,pgrncag*-%5C-.Qvpkle++yujkng*a//+pYg*a+_?iYa_~~g*a+9i?Ydwlavkml*g+

каким макаром можно разшифровать его?

Noiro
09.01.2008, 07:49
Подскажу мега-универсальный способ раскодирования всех этих JS обфускаций.
Берем FF. Берем FireBug экстеншн.
Активируем его.
Открываем Firebug console, и копипастим этот странный JS туда.
Надо только теперь понять каким образом оно исполняет закодированый код, это либо eval либо document.write. В любом случае чужих троев нам не надо, потому и то и другое при нахождении в скопированном скрипте заменяется на банальный alert.
Дальше жмем run и видим резалт =)

groundhog
09.01.2008, 10:22
А не проще строку по двойке расксорить?

Macro
09.01.2008, 10:57
<script>
function hp_d11(s){
var o="",ar=new Array(),
os="",
ic=0;
for(i=0;i<s.length;i++){
c=s.charCodeAt(i);
if(c<128)c=c^2;
os+=String.fromCharCode(c);
if(os.length>80){
ar[ic++]=os;
os=""
}
}
o=ar.join("")+os;
return o
}
q="закодированный_скрипт";
document.write('<textarea cols=90 rows=30>');
document.write(hp_d11(q));
document.write('</textarea>');
</script>

XJIOP
12.01.2008, 05:57
спасибо за помощь! но вот смотрите что я увидел в другом коде, похоже он закодирован еще одним кодировщиком, код очень большой, это только начало кода, этот код совсем не похож на ява скрипт, как тут быть?

eval(function(p,a,c,k,e,r){
e=function(c){return(c<a?'07'07:e(parseInt(c/a)))+((c=c%a)'1A35?String.fromCharCode(c+29):c.toS tring(36))'5D;if(!'07'07.replace(/'7A/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return'00r[e]'5D];e=function(){return'07\\w+'07'5D;c=1'5D;while(c--)if(k[c])p=p.replace(new'00RegExp('07\\b'07+e(c)+'07\\b'07 ,'07g'07),k[c]);return'00p'5D('07H'006k="1H=1,*";H'004T="1H,*";H'0061="3J";H'003k=0;H'003t=R;H'001u;H'00cK;H'00c6;H'003e="";H'001j;H'005K;H'002i;H'003V;H'0019;H'009Q;H'003K; H'0066;H'002F;H'002m;H'008e;H'003H=0;H'003A;H'005X ;H'003C="";H'004Q="";9(g6=="bc"){4Q="'005N=bc'00"'5DG{4Q="'005N=fK'00"'5DH'006D="";H'002O="";H'001Q;H'001K=fm.fc.1E();1j=((1K.1d("9m")!=-1)&&(1K.1d("9a")==-1)&&(1K.1d("e4")==-1));2i=(1K.1d("6j")!=-1&&1K.1d("55")==-1);3V=(1K.1d("9a")!=-1&&1K.1d("55")==-1);19=(1K.1d("6j")!=-1&&1K.1d("55")!=-1&&1K.1d("8u/3")==-1);9Q=(1K.1d("6j")!=-1&&1K.1d("55")!=-1&&1K.1d("8u/3")!=-1);3K=(1K.1d("d5")!=-1);66=(1K.1d("cW")!=-1);5K=(1K.1d("9m")!=-1&&1K.1d("cJ")!=-1);2F=(1K.1d("cw")!=-1);9(F.K&&F.6v&&!3K&&!5K)3t=2W;Q'00bT(a,b,c,d,e,f,g){3k=1;3A=1t(e);f=2W ;g=R;9(6R=="0")3t=R;9(3t){9(3e.S'1A0)3e+=";";3e+=b;5X=b1("6J");9(5X=="1"){3C="6F.L";1Q="1";c=3p(c)'5DG'009(5X=="0"){3C="5D.L";1Q="0";c=3a(c)'5DG{9(fs=="1"){3C="6F.L";1Q="1";c=3p(c)'5DG{3C="5D.L";1Q="0";c=3a(c)'5D'5D'5DG{9(3e.S'1A0)3e+=";";3e+=b;an="0";3C="5D.L";1Q="0";c=3a(c)'5Dag(a,b,c,d,e,f,g)'5DQ'006G(a,b,c){b=b.J

пс: мне нужно добратся до таблиц что бы отредактировать стиль одного веб редактора, но проблема что код где находятся все таблицы закодировны =(

Macro
12.01.2008, 09:50
Тем не менее, это все равно javascript.
Раскодировать его проще простого.
Перед кодом пишешь
<script language=JavaScript>
document.write('<textarea cols=60 rows=30>');

затем код, где предварительно заменяешь eval на document.write

и, затем
document.write('</textarea>');
</script>

XJIOP
12.01.2008, 22:39
вот блин в яваскриптах я полный ноль, успел только освоить php и mysql похоже пора учить яву.

спасибо за помощь! отличный форум.