Javascript Hook

基础代码

先看hook代码

(function() {  
    'use strict';  
    function hook(object,attr){  
        var func = object[attr];  
        object[attr] = function(){  
            console.log("hooked",object,attr,arguments)  
            var ret= func.apply(object,arguments);  
            debugger  
            console.log(ret);  
            return ret;  
        }  
    }  
    hook(window,'btoa');  
})();

解释下其中的基本原理,要了解到javascript中万物皆对象。使用 var func = object[attr]; 把原有的方法保存到一个变量中。并通过apply方法进行再次调用。其中添加 debugger方法来实现断点效果。

那么这段代码外面就直接可以复制到控制台或者使用油猴脚本就可以实现对btoa方法的一个劫持。

posted @   Ho1d_F0rward  阅读(13)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示