精彩总结:★加密网页破解大法★
[入库:2005年8月18日] [更新:2007年3月25日]
加密网页破解大法
|
孟子e章
当你在浏览网页时,看到一个很漂亮的特效,你查看源代码时看到的是一队乱码,那多扫兴呀!根据本人的研究,总结出了三种解密方法,与大家分享!!
方法一:
有一种加密的办法是采用javascript的escape()函数,把某些符号、汉字等变成乱码,以达到迷惑人的目的。解密这种代码的办法是采用其反函数加以还原。下面是一个经过加密的例子:
<html> <script language="javascript"> var words ="%3chtml%3e%3cbody%20bgcolor%3d%22red%22%3e%3cp%3e%u8fd9%u662f%u4f8b%u5b50%uff01%uff01%uff1a%uff09%3c/p%3e%3c/body%3e%3c/html%3e" var newwords; newwords = unescape(words); document.write(newwords) </script> <body> </body> </html>
这种文件最好解密,一看就明白,关键是unescape()函数起了还原源代码的作用。要想看到加密前的代码是什么样子,可以用下面的办法:
<html><script language="javascript"> var words ="%3chtml%3e%3cbody%20bgcolor%3d%22red%22%3e%3cp%3e%u8fd9%u662f%u4f8b%u5b50%uff01%uff01%uff1a%uff09%3c/p%3e%3c/body%3e%3c/html%3e" var newwords; newwords = unescape(words); newwords=newwords.tostring(); function password(){ document.pw.txtpw.value=newwords; } </script> <body> <form name=pw> <input type=button onclick="password()" value="解密"> <br> <textarea name="txtpw" cols="100" rows="100"></textarea> </form> </body> </html>
方法二:
有一个软件叫htmlencrypt.exe,它就是把源代码进行加密的软件,这个软件的加密的原理是把字符转换。下面的例子是一个分帧的页面:
<html><head><script> function carbosoft( s ) { var sret=""; for(j=0; j< s.length; j++ ){ var n= s.charcodeat(j); if (n>=8364) {n = 128;} sret += string.fromcharcode( n - 3 ); } return( sret ); } var sjscmds ="" + "?kwpoa?khdga?phwd#kwws0htxly@%frqwhqw0w|sh%#frqwhqw@%wh{w2kwpo>#fkduvhw@lvr0;;8<04%a?wlwohazhofrph?2wlwoha?phwd#qdph@%jhqhudwru%#frqwhqw@%plfurvriw#iurqwsdjh#613%a?phwd#qdph@%plfurvriw#wkhph%#frqwhqw@%qrqh/#ghidxow%a?phwd#qdph@%plfurvriw#erughu%#frqwhqw@%qrqh/#ghidxow%a?2khdga?iudphvhw#erughu@%3%#iudpherughu@%3%#urzv@%-/93%a##?iudph#qdph@%pdlq%#vuf@%xs1kwp%#vfuroolqj@%dxwr%a##?iudph#qdph@%rqolqh%#vuf@%grzq1kwp%#vfuroolqj@%qr%#qruhvl}h#wdujhw@%beodqn%a##?qriudphva##?erg|a##?sawklv#sdjh#xvhv#iudphv/#exw#|rxu#eurzvhu#grhvq*w#vxssruw#wkhp1#?2sa##?2erg|a##?2qriudphva?2iudphvhwa?2kwpoa?irqw#froru@%&33333%a?s#doljq@%fhqwhu%a?vpdooa?irqw#idfh@%wdkrpd%awklv#iloh#zdv#hqfu|swhg#xvlqj#dq#xquhjlvwhuhg#yhuvlrq#ri#?d#kuhi@%kwws=22fduer{1wkhgqv1qhw2kwpohqfu|sw1kwp%akwpo#hqfu|sw#y413?2da1?2irqwa?2vpdooa?2sa" + ""; var s= carbosoft( sjscmds); document.write (s); </script> </head><body></body></html>
从上面可以看出,浏览器解释这写代码前,进行了还原,从而可以得到破解的方法如下:
<script> function carbosoft( s ) { var sret=""; for(j=0; j< s.length; j++ ){ var n= s.charcodeat(j); if (n>=8364) {n = 128;} sret += string.fromcharcode( n - 3 ); } return( sret ); } var sjscmds ="" + "?kwpoa?khdga?phwd#kwws0htxly@%frqwhqw0w|sh%#frqwhqw@%wh{w2kwpo>#fkduvhw@lvr0;;8<04%a?wlwohazhofrph?2wlwoha?phwd#qdph@%jhqhudwru%#frqwhqw@%plfurvriw#iurqwsdjh#613%a?phwd#qdph@%plfurvriw#wkhph%#frqwhqw@%qrqh/#ghidxow%a?phwd#qdph@%plfurvriw#erughu%#frqwhqw@%qrqh/#ghidxow%a?2khdga?iudphvhw#erughu@%3%#iudpherughu@%3%#urzv@%-/93%a##?iudph#qdph@%pdlq%#vuf@%xs1kwp%#vfuroolqj@%dxwr%a##?iudph#qdph@%rqolqh%#vuf@%grzq1kwp%#vfuroolqj@%qr%#qruhvl}h#wdujhw@%beodqn%a##?qriudphva##?erg|a##?sawklv#sdjh#xvhv#iudphv/#exw#|rxu#eurzvhu#grhvq*w#vxssruw#wkhp1#?2sa##?2erg|a##?2qriudphva?2iudphvhwa?2kwpoa?irqw#froru@%&33333%a?s#doljq@%fhqwhu%a?vpdooa?irqw#idfh@%wdkrpd%awklv#iloh#zdv#hqfu|swhg#xvlqj#dq#xquhjlvwhuhg#yhuvlrq#ri#?d#kuhi@%kwws=22fduer{1wkhgqv1qhw2kwpohqfu|sw1kwp%akwpo#hqfu|sw#y413?2da1?2irqwa?2vpdooa?2sa" + ""; var s= carbosoft( sjscmds); </script> <form name=qq> <textarea name=ww cols=100 rows=10></textarea> <input onclick='ww.value=s' type=button value="解密"> </form>
方法三:
有一种加密方法是每行单独加密,还原起来比较复杂。看一个加密过的原文:
<html> <body> <script language="javascript"> function decode() { d("frfmnd");d("fruyvdfgwhqjfwnyeseysuexpydy%whqjf~j~xwghwexfkjjpgxdfigwhqjfd");d("fmufywrffjkuieqdex?klfulfk$ajuxwwklfulfexfubfirfmngwwryhgufesx}{~}xd");d("ffqfnudejfifqfnud");d("firuyvd");d("fxkvad");d("fixkvad");d("firfmnd");d("w");return 0;} </script> <script language="javascript"> function d (enc) {document.write(codeit(key,enc));} var key = "0123456789abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz!\"\ \|#$%&\'()*+,-.\/:;<=>?@[\\]^_\t\`{}~\n";function codeit (mc, es) {var wtg, mch = mc.length / 2, ns = "", dv;for (var x = 0; x < es.length; x++) { wtg = mc.indexof(es.charat(x));if (wtg > mch) {dv = wtg - mch; ns = ns + mc.charat(48 - dv);}else {dv = mch - wtg;ns = ns + mc.charat(48 + dv);}}return ns;} </script> <script language="javascript"> decode(); </script> </body> </html>
还原的时候,也必须每行单独解密,用下面的方法可以看到源代码:
<html> <body> <script language="javascript"> function decode() { d("frfmnd");d("fruyvdfgwhqjfwnyeseysuexpydy%whqjf~j~xwghwexfkjjpgxdfigwhqjfd");d("fmufywrffjkuieqdex?klfulfk$ajuxwwklfulfexfubfirfmngwwryhgufesx}{~}xd");d("ffqfnudejfifqfnud");d("firuyvd");d("fxkvad");d("fixkvad");d("firfmnd");d("w");return 0;} </script> <script language="javascript"> function d (enc) {alert(codeit(key,enc));} var key = "0123456789abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz!\"\ \|#$%&\'()*+,-.\/:;<=>?@[\\]^_\t\`{}~\n";function codeit (mc, es) {var wtg, mch = mc.length / 2, ns = "", dv;for (var x = 0; x < es.length; x++) { wtg = mc.indexof(es.charat(x));if (wtg > mch) {dv = wtg - mch; ns = ns + mc.charat(48 - dv);}else {dv = mch - wtg;ns = ns + mc.charat(48 + dv);}}return ns;} </script> <script language="javascript"> decode(); </script> </body> </html>
哈哈!!:=)是不是很精彩!!
|
本文关键:加密,解密
本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)