为了账号安全,请及时绑定邮箱和手机立即绑定

js代码中的top[_$[0]][_$[1]]=_$[2];为什么可以直接执行?

js代码中的top[_$[0]][_$[1]]=_$[2];为什么可以直接执行?

慕尼黑5688855 2019-04-13 08:36:44
在一个盗号的钓鱼网站上看到这么几行代码,执行后会将网页重定向:var_$=["\x6c\x6f\x63\x61\x74\x69\x6f\x6e","\x68\x72\x65\x66","\x68\x74\x74\x70\x3a\x2f\x2f\x75\x73\x65\x72\x2e\x71\x7a\x6f\x6e\x65\x2e\x71\x71\x2e\x63\x6f\x6d\x2f\x34\x30\x33\x33\x38\x32\x30\x33\x31\x2f\x34"];top[_$[0]][_$[1]]=_$[2];变量转义的结果为["location","href","http://user.qzone.qq.com/xxxxxxxx/4"]为什么用一个top的多维数组可以将代码等价于location.href="http://user.qzone.qq.com/xxxxxxxx/4"
查看完整描述

2 回答

?
鸿蒙传说

TA贡献1865条经验 获得超7个赞

这里执行的是:window.top.location.href赋值
window[top][location][href]赋值对象的属性可以用[]访问
                            
查看完整回答
反对 回复 2019-04-13
  • 2 回答
  • 0 关注
  • 550 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信