首页 新闻 搜索 专区 学院

求解 这段Js是怎么执行的?

0
悬赏园豆:50 [待解决问题]
<script type="text/javascript">
    document.write("<font class=spy2>:<\/font>" + (Zero0FourOne ^ Two1Six) + (SixFourSixFour ^ SixFiveFive) + (Zero0FourOne ^ Two1Six) + (SixFourSixFour ^ SixFiveFive))
</script>

 

上下文就没有SixFourSixFour 这种类型的变量,直接^,js不会报错吗?而执行的结果是80 怎么回事?

页面地址在这个 http://spys.ru/en/

js
花生!~~的主页 花生!~~ | 初学一级 | 园豆:106
提问于:2012-06-22 00:35
< >
分享
所有回答(2)
0

我想js的运行你差不多知道,就不多说了。你的问题是SixFourSixFour来自哪里吧?

我打开了你的地址,并没看到你说的这个内容。

但是,我在页面代码中倒是看到不少的脚本引用,这个定义应该是在对应的JS脚本中。

一个变量不可能空穴来风,肯定有定义与设置的地方。

从字面看:

(Zero0FourOne ^ Two1Six)就是(0041 ^ 216),异或操作你懂吗?

另外,“+”在有字符串的时候,都会自动转换为字符串。

                        
无之无 | 园豆:5085 (大侠五级) | 2012-06-22 07:07

已经确定跟源码中的一个eval函数有关

<script type="text/javascript">
    eval(function(p, r, o, x, y, s) {
        y = function(c) {
            return (c < r ? '': y(parseInt(c / r))) + ((c = c % r) > 35 ? String.fromCharCode(c + 29) : c.toString(36))
        };
        if (!''.replace(/^/, String)) {
            while (o--) {
                s[y(o)] = x[o] || y(o)
            }
            x = [function(y) {
                return s[y]
            }];
            y = function() {
                return '\\w+'
            };
            o = 1
        };
        while (o--) {
            if (x[o]) {
                p = p.replace(new RegExp('\\b' + y(o) + '\\b', 'g'), x[o])
            }
        }
        return p
    } ('a=D^C;p=9;l=B^E;i=F^A;s=H^G;r=7;q=J^y;e=5;c=4;j=0;b=3;t=6;h=1;o=u^x;f=z^w;g=v^I;m=O^T;k=2;d=U^V;n=8;K=j^l;P=h^i;R=k^g;X=b^a;N=c^d;L=e^m;M=t^s;Q=r^q;W=n^o;S=p^f;', 60, 60, '^^^^^^^^^^ThreeSevenEight^Eight^One^Four4One^Seven^Five5Nine^NineSevenZero^Three^FiveFiveFour^Five^Six^OneZeroThree^FourOneFive^Two^SevenFiveSeven^Four^TwoOneSix^Zero^ThreeFiveTwo^Nine^3653^7117^8090^8909^9090^640^1337^5333^1080^6411^3129^5198^8085^6586^8118^4024^OneThreeOneTwo^Eight0SevenFour^EightSevenZeroOne^NineTwoFiveSeven^10852^NineOneTwoFive^Three3NineNine^ThreeNineSixThree^EightZeroEightEight^8000^6783^8088^Five0FourZero^Two2ThreeSix'.split('\u005e'), 0, {}))
</script>

 

 完全看不懂 - -!~

支持(0) 反对(0) 花生!~~ | 园豆:106 (初学一级) | 2012-06-23 23:38
0

Zero0FourOne ^ Two1Six  0041 ^ 216--------------- 这个东西好变态啊,firebug看看吧

Angkor--:-- | 园豆:1086 (小虾三级) | 2012-06-22 10:36
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册