龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > Javascript编程 >

JS强大的加密解密方法实例

时间:2009-12-21 11:47来源:未知 作者:admin 点击:
分享到:
昨天看到一个网站给人加入一串好怪的代码,如:eval("166141162401541547542146165156…………")这样的形式的,加到JS代码里,好强大,这一下不知道如何解密了,看来能看成这个的代码,这黑

昨天看到一个网站给人加入一串好怪的代码,如:eval("\166\141\162\40\154\154\75\42\146\165\156…………")这样的形式的,加到JS代码里,好强大,这一下不知道如何解密了,看来能看成这个的代码,这黑客还挺厉害,后来在网上找到一些关于这方面的资料,来看下吧。

1、经典的地址烂输入:

javascript:s=document.documentElement.outerHTML;document.write("");document.body.innerText=s;

然后回车。

2、document.write()

3、alert()

4、eval()

实例:(来自http://racle.byethost16.com/ 黑客挑战赛竞赛题目第一关)

<script type="text/javascript">

eval("\166\141\162\40\154\154\75\42\146\165\156\143\164\151\157\156\55\62\60\162\165\156\151\143\157\144\145\55\62\70\163\55\62\71\55\67\102\55\60\101\166\141\162\55\62\60\153\55\63\104\163\56\163\160\154\151\164\55\62\70\55\62\62\55\63\102\55\62\62\55\62\71\55\63\102\55\60\101\166\141\162\55\62\60\162\163\55\63\104\55\62\62\55\62\62\55\63\102\55\60\101\146\157\162\55\62\70\151\55\63\104\60\55\63\102\151\55\63\103\153\56\154\145\156\147\164\150\55\63\102\151\53\53\55\62\71\55\67\102\55\60\101\55\62\60\55\62\60\166\141\162\55\62\60\155\55\63\104\153\55\65\102\151\55\65\104\56\162\145\160\154\141\143\145\55\62\70\57\55\62\66\55\62\63\57\55\62\103\55\62\62\55\62\62\55\62\71\55\63\102\55\60\101\55\62\60\55\62\60\162\163\53\55\63\104\123\164\162\151\156\147\56\146\162\157\155\103\150\141\162\103\157\144\145\55\62\70\155\55\62\71\55\63\102\55\60\101\55\62\60\55\62\60\55\67\104\55\60\101\55\62\60\55\62\60\162\145\164\165\162\156\55\62\60\162\163\55\63\102\55\60\101\55\67\104\55\60\101\55\60\101\166\141\162\55\62\60\160\160\55\63\104\55\62\62\124\101\66\60\55\63\102\124\101\61\60\65\55\63\102\124\101\61\60\62\55\63\102\124\101\61\61\64\55\63\102\124\101\71\67\55\63\102\124\101\61\60\71\55\63\102\124\101\61\60\61\55\63\102\124\101\63\62\55\63\102\124\101\61\61\65\55\63\102\124\101\61\61\64\55\63\102\124\101\71\71\55\63\102\124\101\66\61\55\63\102\124\101\64\71\55\63\102\124\101\64\66\55\63\102\124\101\61\61\62\55\63\102\124\101\61\60\64\55\63\102\124\101\61\61\62\55\63\102\124\101\66\63\55\63\102\124\101\61\61\65\55\63\102\124\101\61\61\66\55\63\102\124\101\61\60\61\55\63\102\124\101\61\61\62\55\63\102\124\101\66\61\55\63\102\124\101\64\71\55\63\102\124\101\64\70\55\63\102\124\101\63\62\55\63\102\124\101\61\60\62\55\63\102\124\101\61\61\64\55\63\102\124\101\71\67\55\63\102\124\101\61\60\71\55\63\102\124\101\61\60\61\55\63\102\124\101\71\70\55\63\102\124\101\61\61\61\55\63\102\124\101\61\61\64\55\63\102\124\101\61\60\60\55\63\102\124\101\61\60\61\55\63\102\124\101\61\61\64\55\63\102\124\101\66\61\55\63\102\124\101\64\70\55\63\102\124\101\66\62\55\63\102\124\101\66\60\55\63\102\124\101\64\67\55\63\102\124\101\61\60\65\55\63\102\124\101\61\60\62\55\63\102\124\101\61\61\64\55\63\102\124\101\71\67\55\63\102\124\101\61\60\71\55\63\102\124\101\61\60\61\55\63\102\124\101\66\62\55\63\102\124\101\66\60\55\63\102\124\101\64\67\55\63\102\124\101\61\60\60\55\63\102\124\101\61\60\65\55\63\102\124\101\61\61\70\55\63\102\124\101\66\62\55\63\102\55\62\62\55\63\102\160\160\55\63\104\160\160\56\162\145\160\154\141\143\145\55\62\70\57\124\101\57\147\55\62\103\55\62\62\55\62\66\55\62\63\55\62\62\55\62\71\55\63\102\55\60\101\144\157\143\165\155\145\156\164\56\167\162\151\164\145\55\62\70\162\165\156\151\143\157\144\145\55\62\70\160\160\55\62\71\55\62\71\55\63\102\42\73\154\154\75\154\154\56\162\145\160\154\141\143\145\50\57\55\57\147\54\42\45\42\51\73\145\166\141\154\50\165\156\145\163\143\141\160\145\50\154\154\51\51\73");

</script>

实例解密过程:

1.eval变成document.write

得到:

var ll="function-20runicode-28s-29-7B-0Avar-20k-3Ds.split-28-22-3B-22-29-3B-0Avar-20rs-3D-22-22-3B-0Afor-28i-3D0-3Bi-3Ck.length-3Bi++-29-7B-0A-20-20var-20m-3Dk-5Bi-5D.replace-28/-26-23/-2C-22-22-29-3B-0A-20-20rs+-3DString.fromCharCode-28m-29-3B-0A-20-20-7D-0A-20-20return-20rs-3B-0A-7D-0A-0Avar-20pp-3D-22TA60-3BTA105-3BTA102-3BTA114-3BTA97-3BTA109-3BTA101-3BTA32-3BTA115-3BTA114-3BTA99-3BTA61-3BTA49-3BTA46-3BTA112-3BTA104-3BTA112-3BTA63-3BTA115-3BTA116-3BTA101-3BTA112-3BTA61-3BTA49-3BTA48-3BTA32-3BTA102-3BTA114-3BTA97-3BTA109-3BTA101-3BTA98-3BTA111-3BTA114-3BTA100-3BTA101-3BTA114-3BTA61-3BTA48-3BTA62-3BTA60-3BTA47-3BTA105-3BTA102-3BTA114-3BTA97-3BTA109-3BTA101-3BTA62-3BTA60-3BTA47-3BTA100-3BTA105-3BTA118-3BTA62-3B-22-3Bpp-3Dpp.replace-28/TA/g-2C-22-26-23-22-29-3B-0Adocument.write-28runicode-28pp-29-29-3B";ll=ll.replace(/-/g,"%");eval(unescape(ll));

2.上面再此替换:

得到:

function runicode(s){ var k=s.split(";"); var rs=""; for(i=0;i<k.length;i++){ var m=k[i].replace(/&#/,""); rs+=String.fromCharCode(m); } return rs; } var pp="TA60;TA105;TA102;TA114;TA97;TA109;TA101;TA32;TA115;TA114;TA99;TA61;TA49;TA46;TA112;TA104;TA112;TA63;TA115;TA116;TA101;TA112;TA61;TA49;TA48;TA32;TA102;TA114;TA97;TA109;TA101;TA98;TA111;TA114;TA100;TA101;TA114;TA61;TA48;TA62;TA60;TA47;TA105;TA102;TA114;TA97;TA109;TA101;TA62;TA60;TA47;TA100;TA105;TA118;TA62;";pp=pp.replace(/TA/g,"&#"); document.write(runicode(pp));

还有一些是自定义的JS加密与解密方式。

收藏文章
表情删除后不可恢复,是否删除
取消
确定
图片正在上传,请稍后...
评论内容为空!
还没有评论,快来抢沙发吧!

热评话题

按钮 内容不能为空!
立刻说两句吧! 查看0条评论
精彩图集

赞助商链接