乐趣区

关于javascript:猿人学十六题

第一步先抓包, 发现 m 加密参数

第二步跟栈, 找加密地位

发现是改写了 btoa

将这个加密办法扣下来

接下来就是在本地运行补环境, 缺什么补什么就好, 这里就不一一细说了


留神点: 当环境补完后, 发现加密参数并不能获取到后果

在 js 中搜寻 try

发现这里有个判断,在浏览器关上 控制台输出后发现 n.g 是个 window 对象

本地打印为 undefined

检测了 n.g 是不是 winodw 环境, 这个 js 指纹比较简单, 间接把 n.g 换成 window 就行

或者间接给 n.g 增加环境

    function nn(r) {if (t[r])
            return t[r].exports;
        var i = t[r] = {exports: {}
        };
        return e[r].call(i.exports, i, i.exports, n),
            i.exports
    }

    n.g = function () {if ("object" == typeof globalThis)
            return globalThis;
        try {return this || new Function("return this")()} catch (e) {if ("object" == typeof window)
                return window
        }
    }();
退出移动版