|
在长长的代码最后我们看到了 var pass="TEST.WWW.CUTEQQ.CN"; if(pass){ pass=unescape(pass); var cuteqq,cuteqq2,cuteqq3; cuteqq=XOR(unescape(Qq_784378237),STR.md5(pass)); cuteqq2=XOR(unescape(Qq784378237),STR.md5(pass)); cuteqq3=cuteqq+www_cuteqq_cn_s+cuteqq2; document.write(cuteqq3); return(false); }
意思就是调用pass验证函数,如果为真,就继续执行里面的内容。XOR是运算符,对两个表达式进行逻辑“异或”运算。这里就不详细了解了。关键是最后的Document.write(cuteqq3)了解网页代码的人就知道这段具体的意思就是,如果密码验证正确。就输出cuteqq3这个函数里的内容。当我们遇到document.write的时候我们一般把它改成“alert”得到初步解密:

这里我们就遇到一个问题。Alert根据里显示器的大小显示内容。无法完整显示出内容。怎么办?我们引入一段javascript代码:document.getElementById(’textfield’).value=cuteqq3;替换掉原来的document.write(cuteqq3);然后在页面的</head> <body>和<script></script>之间添加一段,效果如下: <html> <head> <title>网马</title> </head> <body> <form id="form1" name="form1" method="post" action=""> <label> <textarea name="textfield" cols="100" rows="50"></textarea> </label> </form> <script> ….这里省略解密部分 </script> 这里的意思是建立一个文本框,然后吧刚才的cuteqq3的内容赋值给文本框,Textfield是文本框的名称。可以自己修改。但是必须修改document.getElementById(’textfield’).value里对应的名称,再次运行刚才的网马得到结果:
上一页 [1] [2] [3] [4] [5] [6] 下一页 |