返回列表 发帖
在长长的代码最后我们看到了
      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里对应的名称,再次运行刚才的网马得到结果:


生活中若没有朋友,就像生活中没有阳光一样。

TOP

返回列表