还是函数劫持。。

Posted 洛河

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了还是函数劫持。。相关的知识,希望对你有一定的参考价值。

阅读depd源码有感:

            var fn = function(a, b, c) {
                return a + b + c;
            }
            var args = createArgumentsString(fn.length)

            function createArgumentsString(arity) {
                var str = ‘‘

                for(var i = 0; i < arity; i++) {
                    str += ‘, arg‘ + i
                }

                return str.substr(2)
            }
            console.log(args);
            var deprecatedfn = eval(‘(function (‘ + args + ‘) {\n‘ +
                ‘"use strict"\n‘ +
                ‘return fn.apply(this, arguments)\n‘ +
                ‘})‘)
            console.log(deprecatedfn(1,5,3));

js虽然不能在函数外直接拿到参数,但是可以通过这种伪装函数拿到参数再去执行原函数,从而实现函数劫持。

以上是关于还是函数劫持。。的主要内容,如果未能解决你的问题,请参考以下文章

Linux下利用动态链接劫持库函数并注入代码

黑客技术之移花接木(劫持)

VSCode自定义代码片段——声明函数

这还是Chrome和Firefox吗?阻止卸载劫持浏览器

VSCode自定义代码片段8——声明函数

Linux函数调用劫持方法