首页 > 系统概念 > <xmp>标签解密大法

<xmp>标签解密大法

2007年10月6日 发表评论 阅读评论

from:余弦函数

注:由于%%xmp%%标签的问题,整理不是太好,bo-blog没带这个标签的过滤,所以只有每个标签都加code了。原谅!!
     真是好东西呀!

在JavaScript网页的解密中。

<xmp>

标签居然也起到很重要的作用!因为这对

<xmp></xmp>

标签内的HTML元素将被渲染为文本,按原样输出。将下面代码保存为xmp.htm,你试试就知道了:)

<br /><xmp><br /><html><br /><head><br /><title>JavaScript解密/title><br /></head><br /><body><br />xmp内的所有标签将被显示!<br /></body><br /></xmp><br />

1、根据这个原理,我们就可以开始构造代码,以将HTML中被加密了的代码解密出来,这样解密出的代码是可以直接复制的,这个灵感来自好友阿郎提供的那段加密代码:

http://www.asptop.cn/article/article_144_1.asp

,这是经过CryptHTML加密的:

<br /><html><head><Meta Name=Encoder Content=HTMLSHIP><br /><!--The page is protected by CryptHTML XP(Unregistered Version)--><noscript><iframe></iframe></noscript><script language="javascript"><!--<br />sB73="&#92;{&#92;+se5&#92;{w",tZ25="&#92;{&#92;+&#92;*p&#92;*s&#92;&#91;ep";7.852054E-02,nP19="0.6484527",tZ25=&#039;j&#92;^J9x&#92;#5tg&#92;,MpR&#92;&#039;&#92;/&#92;<&#92;rIW&#92;&#92;e1o&#92;=&#92;&7bmL2G&#92;;szadwq&#92;%6Hv&#92;`&#92;}Bk&#92;&#91;&#92;nuO&#92;?&#92;*QhFl4&#92;~&#92;{&#92;)8AT&#92;&#124;ySPE&#92;+&#92;"U&#92;(Y&#92;!N&#92;_0Vfni&#92;@&#92;$&#92;&#93;KDcr&#92; &#92;-Z&#92;.&#92;:C3&#92;>X&#039;,sB73=&#039;&#92;&#124;&#92;;&#92;/&#92;%F&#92;&#91;U5z&#92;_&#92;&&#92;@3&#92;(PbN&#92;&#039;xak8h&#92;:CI&#92;+&#92;{G&#92;`Z&#92;=l2E&#92;#&#92;?4pL&#92;~gAM&#92;^sW61&#92;}&#92;<K7f&#92;rDY&#92;&#92;q0oHi&#92;$&#92;n&#92;>&#92;*Q&#92; &#92;.By&#92;)urjXVORnT&#92;"vwd&#92;!SJ&#92;&#93;c9&#92;-etm&#92;,&#039;;function dE39(jK57){"&#92;{&#92;+&#92;&#91;&#92;&#91;&#92;ne&#92;*5",l=jK57.length;&#039;V&#92;-&#92;+&#92;+&#92;~HV&#92;+Z&#039;,w=&#039;&#039;;while(l--)"&#92;{&#92;+5&#92;*w&#92;*&#92;*&#92;ne",o=sB73.indexOf(jK57.charAt(l)),&#039;V&#92;-F&#92;&#92;VVF&#92;&#92;5&#039;,w=(o==-1?jK57.charAt(l):tZ25.charAt(o))+w;"p&#92;+Z&#92;*&#92;*sZZz&#92;.&#92;{p",sB73=sB73.substring(1)+sB73.charAt(0),document.write(w);&#039;Z&#92;-VZ&#92;+5&#92;+&#92;+&#92; cVZ&#039;};dE39("bl&#92;!Sn&#92;@5JDERz1Ezk&#92;:&#92;&#124;EgEl&#92;!Sn&#92;@5mf&#92;rtU&#92;:Lt&#92;`I&#92;=nOy&#92;#h&#92;!1&#92;{kR59EDD0qO1R&#92;!5nhRJj&#92;#&#92;{y0qSk51SRJOEDlkM&#92;=O1R&#92;!5nhRJj&#92;{&#92;#&#92;{y0q&#92;#h&#92;!1&#92;{kR59hR&#92;!hR5kF5&#92;{kR1&#92;:j&#92;#&#92;{&#92;=lk5in&#92;{kh15y&#92;.j&#92;{&#92;#&#92;{y0&#92;.&#92;_oXX0M&#92;=j&#92;{&#92;#&#92;{y0&#92;=M&#92;#h&#92;!1&#92;{kR59hR&#92;!hR5kF5&#92;{kR1&#92;:Rk&#92;?J&#92;r1R&#92;!5nhRy&#92;.Sk51SRJOEDlk&#92;.0&#92;=O1R&#92;!5nhRJjR&#92;#&#92;{yk0qnOy&#92;#h&#92;!1&#92;{kR59DE&#92;nkSl&#92;$&#92;$&#92;?nR&#92;#h&#92;?9ln&#92;#k&#92;+ES0qnOyk9&#92;?fn&#92;!fu&#92;:80Sk51SRJOEDlk&#92;=MM&#92;=nOy&#92;#h&#92;!1&#92;{kR59DE&#92;nkSl0q&#92;#h&#92;!1&#92;{kR59&#92;!E&#92;@51SkQgkR5lyQgkR59&#92;&&#92;}B&#92;>Qd&#92;}xr0&#92;=&#92;#h&#92;!1&#92;{kR59hR&#92;{h1lk&#92;#h&#92;?R&#92;:jR&#92;#&#92;{&#92;=MkDlkq&#92;#h&#92;!1&#92;{kR59hR&#92;{h1lk1&#92;@&#92;:jR&#92;#&#92;{&#92;=M&#92;=zi&#92;%U&#92;:IYIX&#92;=&#92;{&#92;^LU&#92;:Yt&#92;`&#92;%&#92;=O1R&#92;!5nhRJj&#92;#&#92;#ly0qnOy&#92;#h&#92;!1&#92;{kR59EDD0q&#92;#h&#92;!1&#92;{kR59hRlkDk&#92;!5l5ES5&#92;:O1R&#92;!5nhRJy0qSk51SRJOEDlkM&#92;=lk5in&#92;{kh15y&#92;.j&#92;#&#92;#ly0&#92;.&#92;_IXX0MM&#92;=j&#92;#&#92;#ly0&#92;=D&#92;}&#92;`U&#92;:UYI&#92;`&#92;=R&#92;>tI&#92;:L8t&#92;=&#92;#eY&#92;`&#92;:tYI&#92;`&#92;=hVY&#92;%&#92;:UIUY&#92;=&#92;@HYL&#92;:&#92;`XYY&#92;=&#92;=jDn&#92;!kRlk&#92;#j5hj&#92;:&#92;.&#92;.&#92;=bPl&#92;!Sn&#92;@5m")//--></script><Script lAnguage=jAVAsCRiPT>dE39("N&#92;rzGY&#92;,&#92;&#039;1N&#92;{&#92;:&#92;?&#92;>&#92;,&#92;&#039;1N2SJT3z&#92;&#93;z&#92;>38CBz8&#92;&#91;zb&#92;;2SJT3zB&#92;,&#92;&#039;1R&#92;}nSzT&#92;:n&#92;&#93;TnTz&#92;)o&#92;&#93;0&#92;&#039;1&#92;?&#92;:S&#92;}G8nz&#92;-4JTz8&#92;)BBol&#92;^&#92;&#039;14Tn&#92;?&#92;:4&#92;-&#92;:nY&#92;:&#92;#&#92;?&#92;&#93;C&#92;&#93;TnTzl&#92;&#039;1Nb2SJT3z&#92;,&#92;&#039;1N2SJT3z&#92;&#93;Y&#92;#n&#92;_&#92;}&#92;#&#92;_8CBOs&#92;*SJT3zB&#92;,&#92;&#039;1&#92;*CBV&#92;!Vi&#92;~D&#92;~&#92; ZV&#92;~5&#92;+Z&#92;+Z&#92;~D&#92;+ZZV&#92;+Z&#92;~5&#92;+m&#92;+5&#92;~&#92;!&#92;~5ZV&#92;~&#92; &#92;~5&#92;+H&#92;+&#92;&#92;V&#92;!ViB&#92;&#039;1&#92;*C&#92;*&#92;.B&#92;~&#92;~&#92;~&#92; &#92;~h&#92;~&#92;!&#92;~5mhm&#92;!ZZ&#92;+V&#92;~5Z&#92; &#92;~5&#92;+H&#92;~5ZZV&#92;!Vi&#92;~&#92;~&#92;~&#92; &#92;~h&#92;~&#92;!&#92;~5mZm&#92;!ZZ&#92;+V&#92;~5Z&#92; &#92;+&#92;~&#92;~Z&#92;+mZZV&#92;!ViB&#92;&#039;1&#92;*C&#92;*&#92;.B5m&#92;~5&#92;+&#92;&#92;ZV&#92;~&#92;&#92;&#92;~&#92;~ZVm&#92;!ZV&#92;~&#92;&#92;&#92;~D&#92;~m&#92;+5&#92;~&#92;!&#92;~5&#92;~&#92; &#92;+&#92;&#92;Z&#92; &#92;~m&#92;+Z&#92;~5&#92;~h&#92;+&#92;&#92;&#92;~5&#92;&#92;5&#92;~t&#92;~5&#92;~&#92;!&#92;~5&#92;~&#92; &#92;+&#92;&#92;ZHZZ&#92;~D&#92;~Z&#92;~i&#92;~5&#92;~m&#92;+&#92;&#92;ZZZFV&#92;!Vi&#92;~&#92;&#92;&#92;~&#92;~Z&#92; &#92;+m&#92;~5&#92;+&#92;&#92;&#92;&#92;h&#92;+&#92;&#92;&#92;+&#92;&#92;&#92;+Z&#92;~F&#92;~Z&#92;+5&#92;+&#92;&#92;&#92;~5ZVZZ&#92;~m&#92;~t&#92;~h&#92;+m&#92;+m&#92;~F&#92;~&#92;&#92;ZZZtZVZZ&#92;~m&#92;~t&#92;+m&#92;~F&#92;~&#92;&#92;mi&#92;&#92;Z&#92;&#92;&#92;&#92;mFm&#92;~&#92;&#92;mm5m5m&#92;~Z&#92;!m&#92;~m5&#92;&#92;hmmZ&#92;!mhmh&#92;&#92;&#92;&#92;mVZ&#92;!mFmHmm&#92;&#92;hB&#92;&#039;1&#92;*C&#92;*&#92;.BZ&#92;!mVmV&#92;&#92;mmVm&#92;&#92;&#92;&#92;&#92;~&#92;&#92;mmZmF&#92;&#92;5mmm&#92;~ZZV&#92;!Vi&#92;+m&#92;+&#92;&#92;&#92;+Zm&#92;!ZZ&#92;&#92;&#92;!&#92;~F&#92;~m&#92;+Z&#92;~D&#92;+m&#92;~D&#92;~&#92;~&#92;+&#92;&#92;Z&#92; 5H&#92;&#92;&#92;!&#92;&#92;t&#92;&#92;H5&#92;&#92;5&#92;&#92;5VZZV&#92;!Vi5m&#92;~5&#92;+&#92;&#92;ZV&#92;+HZVm&#92;!ZV&#92;~&#92;&#92;&#92;~&#92;~Z&#92; &#92;&#92;m&#92;+Z&#92;~5&#92;~h&#92;+&#92;&#92;&#92;~5&#92;&#92;D&#92;~Z&#92;~i&#92;~5&#92;~m&#92;+&#92;&#92;ZH&#92;+m&#92;+&#92;&#92;&#92;+ZZtZZZZZFV&#92;!Vi&#92;&#92;mmhm&#92;!ZZ&#92;&#92;h&#92;~&#92;&#92;&#92;~DZZV&#92;!Vi&#92;&#92;mmZm&#92;!ZZ&#92;~&#92;&#92;&#92;~ZZ&#92; ZZV&#92;!Vi&#92;&#92;mmmm&#92;!ZZ&#92;+m&#92;+&#92;&#92;B&#92;&#039;1&#92;*C&#92;*&#92;.B&#92;+ZZZV&#92;!Vi&#92;&#92;mm&#92;&#92;m&#92;!ZZ&#92;~5&#92;~h&#92;~&#92;!ZZV&#92;!Vi&#92;+m&#92;+&#92;&#92;&#92;+Zmhm&#92;!&#92;&#92;mmhZ&#92;~&#92;&#92;mmZZ&#92;~&#92;&#92;mmmZ&#92;~&#92;&#92;mm&#92;&#92;V&#92;!Vi&#92;+m&#92;+&#92;&#92;&#92;+Zm5m&#92;!&#92;+m&#92;+&#92;&#92;&#92;+ZmhV&#92;!Vi&#92;+m&#92;~5&#92;+&#92;&#92;ZV5mZVm&#92;!ZV&#92;~&#92;&#92;&#92;~&#92;~Z&#92; &#92;~m&#92;+Z&#92;~5&#92;~h&#92;+&#92;&#92;&#92;~5&#92;~D&#92;~Z&#92;~i&#92;~5&#92;~m&#92;+&#92;&#92;ZH&#92;+m&#92;+&#92;&#92;&#92;+Zm5ZtZZZZZFV&#92;!Vi5mZ&#92; &#92;+&#92;&#92;&#92;+F&#92;+V&#92;~5ZVm&#92;!ZVmhV&#92;!Vi&#92;+m&#92;+&#92;&#92;&#92;+Zm&#92;~m&#92;!ZZ&#92;&#92;&#92;+&#92;&#92;55&#92;&#92;ZZV&#92;!B&#92;&#039;1&#92;*C&#92;*&#92;.BVi&#92;+HZ&#92; &#92;&#92;D&#92;+V&#92;~5&#92;~&#92; ZV&#92;+m&#92;+&#92;&#92;&#92;+Zm&#92;~ZtZV&#92;~m&#92;+5&#92;+Z&#92;~tZtZV&#92;&#92;&#92;~&#92;~h&#92;~t&#92;+m&#92;~5V&#92;!Vi&#92;+HZ&#92; 5m&#92;~5&#92;~&#92; &#92;~&#92;&#92;V&#92;!Vi&#92;+mmhm&#92;!ZZ5m&#92;~m&#92;+Z&#92;~F&#92;+V&#92;+&#92;&#92;ZZV&#92;!Vi&#92;+mmZm&#92;!ZZ&#92;~F&#92;~&#92; &#92;~&#92;+Z&#92; ZZV&#92;!Vi&#92;+mmmm&#92;!ZZ&#92;&#92;&#92;~&#92;~F&#92;~t&#92;~5ZZV&#92;!Vi&#92;+mm&#92;&#92;m&#92;!ZZ5m&#92;+F&#92;+m&#92;+&#92;&#92;&#92;~5&#92;~&#92;!&#92;&#92;D&#92;~Z&#92;~i&#92;~5&#92;~m&#92;+&#92;&#92;ZZV&#92;!Vi&#92;+mmVm&#92;!&#92;+mmhZs&#92;+mmZZs&#92;+mmmB&#92;&#039;1&#92;*C&#92;*&#92;.BZs&#92;+mm&#92;&#92;V&#92;!Vi&#92;+m&#92;~5&#92;+&#92;&#92;ZV&#92;&#92;&#92;~ZVm&#92;!ZV&#92;~&#92;&#92;&#92;~&#92;~Z&#92; &#92;~m&#92;+Z&#92;~5&#92;~h&#92;+&#92;&#92;&#92;~5&#92;~D&#92;~Z&#92;~i&#92;~5&#92;~m&#92;+&#92;&#92;ZH&#92;+mmVZtZZZZZFV&#92;!Vi&#92;+m&#92;~5&#92;+&#92;&#92;ZV&#92;+&#92;&#92;&#92;~&#92;!&#92;+VZVm&#92;!ZV&#92;&#92;&#92;~Z&#92; &#92;&#92;&#92;+&#92;~5&#92;+&#92;&#92;5m&#92;+V&#92;~5&#92;~m&#92;~F&#92;~h&#92;~t&#92;&#92;&#92;~&#92;~D&#92;~t&#92;~&#92;&#92;&#92;~5&#92;+ZZHmZZFV&#92;!Vi&#92;~&#92;~&#92;~&#92; &#92;~h&#92;~&#92;!&#92;~5mhm&#92;!ZV&#92;&#92;&#92;~Z&#92; &#92;&#92;Z&#92;+5&#92;~F&#92;~t&#92;~&#92;&#92;5V&#92;~h&#92;+&#92;&#92;&#92;~HZH&#92;+&#92;&#92;&#92;~&#92;!&#92;+VZt&#92;~&#92;~&#92;~&#92; &#92;~h&#92;~&#92;!&#92;~5mhB&#92;&#039;1&#92;*C&#92;*&#92;.BZFV&#92;!Vi5mZ&#92; &#92;~D&#92;+V&#92;~5&#92;~&#92; V&#92;!Vi5mZ&#92; &#92;+&#92;+&#92;+Z&#92;~F&#92;+&#92;&#92;&#92;~5ZV&#92;+HZ&#92; &#92;+Z&#92;~5&#92;+m&#92;+V&#92;~D&#92;~&#92; &#92;+m&#92;~5&#92;&#92;Z&#92;~D&#92;~&#92;&#92;&#92;+FV&#92;!Vi5mZ&#92; &#92;+m&#92;~h&#92;+&#92;~&#92;~5&#92;+&#92;&#92;&#92;~D&#92;~&#92;~&#92;~F&#92;~t&#92;~5ZV&#92;~&#92;~&#92;~&#92; &#92;~h&#92;~&#92;!&#92;~5mhZtmZV&#92;!Vi5mZ&#92; &#92;~m&#92;~t&#92;~D&#92;+m&#92;~5V&#92;!Vi&#92;~&#92;~&#92;~&#92; &#92;~h&#92;~&#92;!&#92;~5mZm&#92;!ZV&#92;&#92;&#92;~Z&#92; &#92;&#92;Z&#92;+5&#92;~F&#92;~t&#92;~&#92;&#92;5V&#92;~h&#92;+&#92;&#92;&#92;~HZH&#92;+&#92;&#92;&#92;~&#92;!&#92;+VZt&#92;~&#92;~&#92;~&#92; &#92;~h&#92;~&#92;!&#92;~5mZZFV&#92;!ViB&#92;&#039;1&#92;*C&#92;*&#92;.B5m&#92;~5&#92;+&#92;&#92;ZV&#92;+&#92;&#92;&#92;+mZVm&#92;!ZV&#92;&#92;&#92;~Z&#92; &#92;&#92;D&#92;+V&#92;~5&#92;~&#92; 5&#92;&#92;&#92;~5&#92;+H&#92;+&#92;&#92;&#92;&#92;&#92;~&#92;~F&#92;~t&#92;~5ZH&#92;~&#92;~&#92;~&#92; &#92;~h&#92;~&#92;!&#92;~5mZZtZVmZZtZV5&#92;&#92;&#92;+Z&#92;+5&#92;~5ZFV&#92;!Vi&#92;+&#92;&#92;&#92;+mZ&#92; 5&#92;+&#92;+Z&#92;~F&#92;+&#92;&#92;&#92;~5&#92;&#92;t&#92;~F&#92;~&#92; &#92;~5ZVZZ5m&#92;~5&#92;+&#92;&#92;ZV5m&#92;~H&#92;~5&#92;~t&#92;~tZVm&#92;!ZV&#92;&#92;m&#92;+Z&#92;~5&#92;~h&#92;+&#92;&#92;&#92;~5&#92;&#92;D&#92;~Z&#92;~i&#92;~5&#92;~m&#92;+&#92;&#92;ZHZZZZ5m&#92;~H&#92;~5&#92;~t&#92;~tZ&#92; &#92;&#92;h&#92;+V&#92;+V&#92;~t&#92;~F&#92;~m&#92;~h&#92;+&#92;&#92;&#92;~F&#92;~D&#92;~&#92; B&#92;&#039;1&#92;*C&#92;*&#92;.BZZZZZFZZV&#92;!Vi&#92;+m&#92;+h&#92;~tm&#92;!ZZ5m&#92;~H&#92;~5&#92;~t&#92;~tZ&#92; 5m&#92;~H&#92;~5&#92;~t&#92;~t&#92;&#92;5&#92;+H&#92;~5&#92;~m&#92;+5&#92;+&#92;&#92;&#92;~5ZVZZZZZZZs&#92;~&#92;~&#92;~&#92; &#92;~h&#92;~&#92;!&#92;~5mhZsZZZZZZZtZZZZZZZZZtZZZZZZZZZtZZZZ&#92;~D&#92;+V&#92;~5&#92;~&#92; ZZZZZtmVZZV&#92;!Vi&#92;+&#92;&#92;&#92;+mZ&#92; 5&#92;+&#92;+Z&#92;~F&#92;+&#92;&#92;&#92;~5&#92;&#92;t&#92;~F&#92;~&#92; &#92;~5ZV&#92;+m&#92;+h&#92;~tV&#92;!Vi&#92;+&#92;&#92;&#92;+mZ&#92; &#92;~m&#92;~t&#92;~D&#92;+m&#92;~5V&#92;!Vi&#92;~F&#92;~&#92;~ZV&#92;&#92;&#92;~B&#92;&#039;1&#92;*C&#92;*&#92;.BZ&#92; &#92;&#92;&#92;~&#92;~F&#92;~t&#92;~5&#92;&#92;5&#92;+H&#92;~F&#92;+m&#92;+&#92;&#92;&#92;+mZH&#92;~&#92;~&#92;~&#92; &#92;~h&#92;~&#92;!&#92;~5mhZFm&#92;!&#92;+&#92;&#92;&#92;+Z&#92;+5&#92;~5ZV&#92;+&#92;&#92;&#92;~H&#92;~5&#92;~&#92; V&#92;!Vi&#92;~F&#92;~&#92;~ZV&#92;&#92;&#92;~Z&#92; &#92;&#92;&#92;~&#92;~F&#92;~t&#92;~5&#92;&#92;5&#92;+H&#92;~F&#92;+m&#92;+&#92;&#92;&#92;+mZH&#92;~&#92;~&#92;~&#92; &#92;~h&#92;~&#92;!&#92;~5mZZFm&#92;!&#92;+&#92;&#92;&#92;+Z&#92;+5&#92;~5ZV&#92;+&#92;&#92;&#92;~H&#92;~5&#92;~&#92; V&#92;!ViZVZVZVZV&#92;+m&#92;~5&#92;+&#92;&#92;ZV5hZVm&#92;!ZV&#92;~&#92;&#92;&#92;~&#92;~Z&#92; &#92;~m&#92;+Z&#92;~5&#92;~h&#92;+&#92;&#92;&#92;~5&#92;~D&#92;~Z&#92;~i&#92;~5&#92;~m&#92;+&#92;&#92;ZHZZ5m&#92;~H&#92;~5&#92;~t&#92;~tB&#92;&#039;1&#92;*C&#92;*&#92;.BZ&#92; &#92;&#92;h&#92;+V&#92;+V&#92;~t&#92;~F&#92;~m&#92;~h&#92;+&#92;&#92;&#92;~F&#92;~D&#92;~&#92; ZZZtZZZZZFV&#92;!ViZVZVZVZV5hZ&#92; 5m&#92;~H&#92;~5&#92;~t&#92;~t&#92;&#92;5&#92;+H&#92;~5&#92;~m&#92;+5&#92;+&#92;&#92;&#92;~5ZV&#92;~&#92;~&#92;~&#92; &#92;~h&#92;~&#92;!&#92;~5mZZtZZZZZtZZZZZtZZ&#92;~D&#92;+V&#92;~5&#92;~&#92; ZZZtmVV&#92;!Vi&#92;~5&#92;~&#92; &#92;~&#92;&#92;ZV&#92;~F&#92;~&#92;~V&#92;!Vi&#92;~5&#92;~&#92; &#92;~&#92;&#92;ZV&#92;~F&#92;~&#92;~V&#92;!ViB&#92;&#039;1&#92;!CBB&#92;&#039;1&#92;!&#92;<&#92;&#93;agx&#92;`&#92; &#92;&#93;&#92;`&#92; j&#92;)&#92;*o&#92;,h&#92;&#039;1&#92;&#93;&#92;&#93;&#92;&#93;&#92;&#93;WCBIgB&#92;.&#92;`&#92; D&#92;$&#92;)&#92;*&#92;&Zo&#92;&#039;1&#92;&#93;&#92;&#93;&#92;&#93;&#92;&#93;3Ct&#92;`n&#92;_&#92;)Wo&#92;&#039;1&#92;&#93;&#92;&#93;&#92;&#93;&#92;&#93;GCS&#92;rJ&#92;)3o&#92;&#039;1&#92;&#93;&#92;&#93;&#92;&#93;&#92;&#93;&#92;!C&#92;!IG&#92;&#039;1&#92;&#93;&#92;&#93;&#92;&#93;&#92;&#93;&#92;*C&#92;@x&#92;!&#92;)&#92;*&#92;&mo&#92;&#039;1&#92;`&#92;<&#92;<Q&#92;&#039;1&#92;}&#92;}JYCB&#92;rzz3ebb&#92;r&#92;#&#92;{&#92;#&#92;:&#92;-GzA&#92;{Y&#92;:&#92;_&#92;-Snb3&#92;:34Tnb2&#92;:Rzb8&#92;+m5Z8&#92;?FZ&#92;#HZF&#92;#&#92;?R&#92;-8&#92;&#91;8B&#92;&#039;12z&#92;}CBS&#92;}JYCBBB&#92;&#93;I&#92;&#93;&#92;}&#92;}JY&#92;&#93;I&#92;&#93;BBBB&#92;&#039;1&#92;!C2z&#92;}I&#92;!&#92;&#039;1&#92; &#92;&#124;&#92; ty&#92;$&#92; &#92;&#93;&#92;!&#92;&#039;1Nb2SJT3z&#92;,&#92;&#039;1Nb&#92;{&#92;:&#92;?&#92;>&#92;,&#92;&#039;1Nb&#92;rzGY&#92;,&#92;&#039;1Nz&#92;#&#92;{Y8&#92;&#93;&#92;{&#92;:J&#92;?8JCV&#92;&#93;4T&#92;?z&#92;rChVVL&#92;&#93;&#92;r8T&#92;_&#92;rzCZ5&#92;&#93;S8YY23&#92;#STn&#92;_CV&#92;&#93;S8YY3&#92;#&#92;?&#92;?Tn&#92;_CV&#92;,NzJ&#92;,Nz&#92;?&#92;&#93;4T&#92;?z&#92;rC&#92;+5L&#92;&#93;&#92;r8T&#92;_&#92;rzChF&#92;,N&#92;{YTnW&#92;,NG&#92;#Jp&#92;}88&#92;,&#92;$&#92;r8&#92;&#93;3&#92;#&#92;_8&#92;&#93;T2&#92;&#93;3J&#92;:z8Sz8&#92;?&#92;&#93;&#92;{&#92;>&#92;&#93;tJ&#92;>3zgzGYNbG&#92;#Jp&#92;}88&#92;,Nb&#92;{YTnW&#92;,Nbz&#92;?&#92;,Nz&#92;?&#92;&#93;4T&#92;?z&#92;rCZ5L&#92;&#93;&#92;r8T&#92;_&#92;rzChF&#92;,N2zJ&#92;:n&#92;_&#92;,N&#92;#&#92;&#93;&#92;rJ8RC&#92;rzz3ebb444&#92;-RY&#92;#2&#92;r38&#92;#W&#92;-S&#92;:GbSJ&#92;>3z&#92;rzGYbJ8&#92;_T2z8J&#92;-&#92;rzG&#92;,Q&#92;:48J&#92;&#93;&#92;{&#92;>&#92;&#93;tJ&#92;>3zgzGYNb&#92;#&#92;,Nb2zJ&#92;:n&#92;_&#92;,Nbz&#92;?&#92;,NbzJ&#92;,Nbz&#92;#&#92;{Y8&#92;,")</script></head><body><noscript><b><font color=red>This page requires a javascript enabled browser!!!</font></b></noscript></body></html>

这段乱码看了都头晕,不过注意我用颜色标记的字符即可。function定义了dE39()这个函数,有两处调用了dE39函数,并且在function定义dE39函数内出现document.write!还记得我前面说过的document.write大法吗?并且我说过将document.write换为alert即可解密。你试试就会知道了(建议断网测试,否则中毒别来找我^^)。这是经典的alert大法!不过这样解密就糟了,因为解出的代码无法被复制……

2、所以现在我介绍

<xmp>

标签解密大法。其实

<xmp>

标签不闭合也行(即不要)。很明显function定义的dE39函数具有解密功能,否则浏览器如何解释那些乱七八糟的字符?请记住我在JavaScript加密解密原理详解中提到的两大原理。不多说了,看

<xmp>

标签是如何解密的:

将上面红色标记的

document.write(w);

改为

(w.length>1000)?document.write("&#91;code&#93;<xmp>

“+w):alert(w);[/code]。运行后就会看到解密效果了。真正有价值的不是alert(w)弹出的信息,而是

document.write

写出来的信息。为什么要这样构造?这样构造的原因是CryptHTML加密代码本身的限制。我解释下

(w.length>1000)?document.write("&#91;code&#93;<xmp>

“+w):alert(w);[/code]的意思:

其实这行代码是一条件判断语句,结构是这样的:(条件判断)?表达式1:表达式2。即当w.length>1000为真则执行

document.write("&#91;code&#93;<xmp>

“+w)[/code],为假则执行

alert(w)

!而

function dE39()

后,有两处调用了dE39函数,从构造的代码来看,第一次调用为假则执行了

alert(w)

(所以就弹出了对话框);第二次调用为真则执行了

document.write("&#91;code&#93;<xmp>

“+w)[/code]语句!所以我们得以最终看到解密出的代码^^

3、好了,这段乱码解密出来了,那现在再来看看“

<xmp>

标签解密大法”的其他小运用吧!构造

document.write("&#91;code&#93;<xmp>

“+”加密字符串”)[/code]这样格式的解密方法。来解密这段代码:

<br />&#92;x3c&#92;x64&#92;x6f&#92;x63&#92;x75&#92;x6d&#92;x65&#92;x6e&#92;x74&#92;x2e&#92;x77&#92;x72&#92;x69&#92;x74&#92;x65&#92;x28&#92;x22&#92;u4f59&#92;u5f26&#92;u51fd&#92;u6570&#92;x22&#92;x29&#92;x3e

结合

document.write("&#91;code&#93;<xmp>

“+”加密字符串”>[/code]来构造解密程序:

<br /><br /><SCRIPT LANGUAGE="JavaScript"><br />document.write("&#91;code&#93;<xmp>

“+”\x3c\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x77\x72\x69\x74\x65\x28\x22\u4f59\u5f26\u51fd\u6570\x22\x29\x3e”)

[/code]
将这段代码保存为xmp.htm,运行后,看到解密出来的代码了吧?正是由于document.write方法将

<xmp>

标签写进被加密的代码前面,才使得代码最终被解密出而且按原样输出。这样我们就可以方便复制这些解密出的代码了。

转载请注明:woyigui's blog [http://www.woyigui.cn/]
本文标题:<xmp>标签解密大法
本文地址:http://www.woyigui.cn/2007/10/06/lt%3Bxmpgt%3B%E6%A0%87%E7%AD%BE%E8%A7%A3%E5%AF%86%E5%A4%A7%E6%B3%95/

  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.
*