头图

第一步先抓包,发现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
        }
    }();

代码乐章
25 声望2 粉丝

自我介绍一下,00后python程序员,在不断学习的道路上,将自己所学尽量分享给大家,xdm有什么有趣的代码也可以投稿分享!


« 上一篇
猿人学十五题
下一篇 »
猿人学十三题