获得本站免费赞助空间请点这里
返回列表 发帖

网页制作中页面的加密和破解

当你在浏览网页时,看到一个很漂亮的特效,你查看源代码时看到的是一队乱码,那多扫兴呀!根据本人的研究,总结出了三种解密方法,与大家分享!!: T, a. Z" [' w( N4 p
! {0 W. M) a: z3 `: P
* R. J; a8 h' u- b7 Z
方法一:
* q+ N3 J$ r: Y- s" y) z: a& M# N3 a9 _5 p6 N' S, U' o
6 l: b. \; J/ \7 l$ m4 A4 s$ X3 O. G
  有一种加密的办法是采用javascript的escape()函数,把某些符号、汉字等变成乱码,以达到迷惑人的目的。解密这种代码的办法是采用其反函数加以还原。下面是一个经过加密的例子:
, j8 u: T) P( c% i0 h: ?
5 u6 c+ G* [/ _* _# A4 A6 S) _% h<HTML>% [- U: ]1 m! S- o* ]$ r8 C
<SCRIPT LANGUAGE="javascript">+ I8 o  \0 h9 e. u5 h" L4 b. D
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"
8 U- `  o- d" S3 f4 V2 ~$ Evar NewWords;
# h. C, s8 C$ R' f. i  eNewWords = unescape(Words);6 m. a% `2 x: r  j' c& t& }! K
document.write(NewWords)/ N( X/ D5 I9 n
</SCRIPT>
7 ^4 X) e5 W( y* \+ L<BODY>
5 C) b, [. [. r6 o1 a</BODY>
+ s2 ^- V+ d% h" m  e% w6 T* d</HTML>  g& X! X( }" c/ O$ e
% v* Q& M7 `& n1 i% J0 i$ L- k
  这种文件最好解密,一看就明白,关键是unescape()函数起了还原源代码的作用。要想看到加密前的代码是什么样子,可以用下面的办法:) t" ^, M* s, ~

- q8 g" H. Z4 a, l<HTML><SCRIPT LANGUAGE="javascript">
  a& b' Q; f$ Xvar 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"
0 B: W% I" Q5 n6 \9 c; [var NewWords;
  F0 l# n5 T! t9 S$ L$ j6 eNewWords = unescape(Words);
0 ]+ w' K5 T: @" O. z0 C, ~NewWords=NewWords.toString();# f# W/ q4 h1 L5 h$ @+ B& Y5 z$ X
function password(){$ d$ b; P- q. F
document.pw.txtpw.value=NewWords;
; [/ m* y+ r3 F}
$ N( B, e+ l$ s6 q4 Q# Z</SCRIPT>+ T' |* k# h; X! ~# e
<BODY>  l& [( {) f, g8 S0 _, J2 h" j4 Q7 N' j
<form name=pw>
  }  J) B* {* A% L/ ~<input type=button onclick="password()" value="解密">
) t. ^  C3 \& b* i/ D+ }9 I! R<br>
% R6 h3 D- b8 T2 d* Z  j/ a<textarea name="txtpw" cols="100" rows="100"></textarea>+ y  ~& d( m7 ^7 e' V( w, \# [
</form>' B2 X6 b1 h( k, P! `. Z# R+ e
</BODY>
$ w; }5 U' J- `( d+ `</HTML>
# m6 `& z3 j0 C# ?3 p0 O
* f7 b% u) n( |# I7 O方法二:
& X/ L3 n& R/ O! b5 e
5 U& |$ f+ p1 n$ E, Z# m8 f9 U2 E  有一个软件叫HTMLEncrypt.exe,它就是把源代码进行加密的软件,这个软件的加密的原理是把字符转换成Unicode代码。下面的例子是一个分帧的页面:/ }; Z* i* c, ~9 |5 Q' Q6 L
! J8 M9 F0 h4 \( F: y. k% h9 k
<html><head><script>& B4 M3 j: f2 @8 K# r
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 ); }: E' `# i4 D6 X$ g
var sJsCmds ="" +: f& @& }6 o" U9 f5 z2 K: B
"?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" +
4 \3 ?, j3 `; i0 @* a( f"";
3 F! I; ?8 u: I- o: ^3 F( Bvar s= Carbosoft( sJsCmds);+ u2 }: ]0 }8 E& A
document.write (s);7 W7 W9 L. t8 K
</script>
5 P$ Q  g" A: A( t$ l5 g, J# p4 [</head><body></body></html>
, N0 c. D6 o9 R5 B' J( f& u
, z8 t7 i1 o" o1 K5 R& k7 ?* e) s" T  从上面可以看出,浏览器解释这写代码前,进行了还原,从而可以得到破解的方法如下:  P- R  Z- f$ y; J

/ R! W) K' w  X3 i<script>
0 I- f0 P* o# w2 I$ A( O3 [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 ); }
1 h, D* W* }5 w5 jvar sJsCmds ="" +) C5 Y. ]; B/ R+ e
"?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" +. k1 l5 {& Q5 g" I& N) t  f) E! g$ v
"";; p; b6 _$ m0 j' w
var s= Carbosoft( sJsCmds);
% E. P% x. h- y% Y0 |</script>
& D% Z' l% S  m$ W* G0 u2 o<form name=qq>  m- m" ?1 z+ K# l( K0 m, y
<textarea name=ww cols=100 rows=10></textarea>+ Y; C1 [/ q7 M8 h/ x
<input onclick='ww.value=s' type=button value="解密">/ B1 l2 a) M) k, t
</form>* |9 X; s3 M3 b
4 ]4 f8 d0 _5 |' ^- D

- n. g. b5 ]# n8 u6 m5 h方法三:
6 o# y7 a. f; Z  t; O) C) P  B' B7 T3 R% h3 z
  有一种加密方法是每行单独加密,还原起来比较复杂。看一个加密过的原文:% b. R# ]4 k2 I; H* f) |2 T8 E
  v% C! o! `/ G( C+ Q
<HTML>. q4 ?  v( k6 D, b: u2 L. L/ H! v
<BODY>& D! x+ E  B( l
<SCRIPT LANGUAGE="javascript">: ^: E. {2 r; v" ?
function Decode() {
/ {  c: s" F1 R- Hd("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;}
% S* M' U% @% C6 F8 M! W: L: M  H0 `3 a2 ^</SCRIPT>
2 w2 V, R: S% m' g8 y<SCRIPT LANGUAGE="javascript">) M3 o1 c' ]2 u; \. [
function d (enc) {document.write(codeIt(key,enc));}
7 \9 \' o3 T2 e) ]5 E. }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;}$ e: s! `$ X3 ^  X: Q
</SCRIPT>5 z- o* g) Z: v$ W3 ~  C4 f- n
<SCRIPT LANGUAGE="javascript">- c* C7 k$ m5 w& O, H+ a
Decode();
1 K! c+ Z1 h0 z# k* l/ t2 J</SCRIPT>' ^3 o: E; e& g3 E' R- v
</BODY>' d5 a8 P, X$ }6 F# h7 S7 m
</HTML>! s- M* f5 ~7 V/ ?! u9 K0 j, j3 v

, G3 R' `  I, |0 v, @" p6 A  还原的时候,也必须每行单独解密,用下面的方法可以看到源代码:
2 Q- d) l7 o$ e4 y$ |
* ~; P; p: q! Z' `0 f! D<HTML>
- L- q! w$ Q! h" H2 M+ I0 s% ~<BODY>
: ?2 t1 T8 Y+ ]- Y* G: X<SCRIPT LANGUAGE="javascript"># w- R; ?& H, G) [
function Decode() {2 c9 _5 f' ~/ m! _0 o
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;}: v" f: b/ b) m
</SCRIPT>( X0 N, u- U2 S4 \8 N
<SCRIPT LANGUAGE="javascript">
* u; }, E; C- z4 R% a0 y( b! gfunction d (enc) {alert(codeIt(key,enc));}
  D+ f% U! J$ d* k* X8 avar 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;}0 d$ g: ~" M* o( g" i
</SCRIPT>& ^2 u* c, ^0 e9 w/ L/ A
<SCRIPT LANGUAGE="javascript">
2 ^1 D/ V7 }9 k) }; T0 |Decode();9 v& Q3 G* O0 t+ Y( Y2 P! e# O
</SCRIPT>
- i- i" y! I7 Y% A7 j# ]2 @</BODY>
! ]' O( U; Z/ A8 {( \; W3 G; e</HTML>, ^. ]( {1 A/ X, q7 b: E

& _6 }8 G+ U. h, O& k  哈哈!!:=)是不是很精彩!!

返回列表
【捌玖网络】已经运行: