请问下无限debugger有哪些实现思路

登录下微信读书官网,想F12看下接口,结果遇到网站设置的无限debugger,很好奇有哪些实现方式?
image.png

关键代码如下(混淆代码):

function _0x389846(_0x5907e5) {
    function _0x39d25f(_0x2cd75f) {
        if (typeof _0x2cd75f === 'string') {
            return function(_0x47aa5d) {}
            ['constructor']('while\x20(true)\x20{}')[_0x2281('0x5f')]('counter');
        } else {
            if (('' + _0x2cd75f / _0x2cd75f)['length'] !== 0x1 || _0x2cd75f % 0x14 === 0x0) {
                (function() {
                    return !![];
                }
                ['constructor']('debu' + 'gger')[_0x2281('0x3e')](_0x2281('0x4d')));
            } else {
                (function() {
                    return ![];
                }
                ['constructor']('debu' + 'gger')['apply']('stateObject'));
            }
        }
        _0x39d25f(++_0x2cd75f);
    }
    try {
        if (_0x5907e5) {
            return _0x39d25f;
        } else {
            _0x39d25f(0x0);
        }
    } catch (_0x485cf4) {}
}
阅读 3.2k
1 个回答

无限的实现无非就是递归循环,while,setTimeout,setInterval等等都能实现。关于代码保护,禁止打开控制台,之前写了篇文章JS禁止打开控制台

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题