原理:
Javascript劫持与CSRF攻击原理非常相似,唯一不同的是,CSRF是模拟你的身份去发送请求,JavaScript
Hijacking是模拟你的身份,窃取你在服务器上的私隐信息。
Javascript劫持通过重写Object的__defineSetter__方法来实现钩子。
服务器返回的数据是数组类型。
浏览器会将数组类型当作JS代码运行,创建了一个数组对象并设置属性。
重写的方法会先执行,方法中可获得设置的属性,使攻击者能够将JSON数据外发。
obj.say.call(obj2)
1.所有的函数对象的都有call方法-----function.prototype有call方法
2.运行的函数是say函数
3.调用这个函数的对象是obj2
拓展知识: