有些网页一打开 F12,就会进入 debugger 状态

2023-08-06 10:57:02 +08:00
 ThinkStu

这是不是网站的一种防御机制?🥲有点难受...

完整代码如下:

((function() {
    var callbacks = [],
        timeLimit = 50,
        open = false;
    setInterval(loop, 1);
    return {
        addListener: function(fn) {
            callbacks.push(fn);
        },
        cancleListenr: function(fn) {
            callbacks = callbacks.filter(function(v) {
                return v !== fn;
            });
        }
    }

    function loop() {
        var startTime = new Date();
        debugger;
        if (new Date() - startTime > timeLimit) {
            if (!open) {
                callbacks.forEach(function(fn) {
                    fn.call(null);
                });
            }
            open = true;
            window.stop();
            document.body.innerHTML = "";
        } else {
            open = false;
        }
    }
})()).addListener(function() {
    window.location.reload();
});
2363 次点击
所在节点    问与答
12 条回复
MossFox
2023-08-06 11:00:20 +08:00
开发者工具里面点一下停用断点即可。
murmur
2023-08-06 11:00:51 +08:00
这种都是小把戏,那种检测调试模式下某些特殊对象的也是小把戏,以前听说过一种,美化后美化前因为某些不规范的写法,会导致代码执行逻辑变更,从而达到反调试

但是这种我还没见过
tanranran
2023-08-06 11:06:17 +08:00
@murmur #2 这种好强
emonc
2023-08-06 11:13:45 +08:00
debugger --> contextmenu --> ignore line
estk
2023-08-06 11:16:00 +08:00
支付宝官网打开调试显示招聘信息
caiqichang
2023-08-06 16:20:03 +08:00
先打开开发者工具 -> deactive breakpoints ,再打开页面
loading
2023-08-06 18:23:00 +08:00
感觉放水了,我一般用这个,你可以感受一下。
https://github.com/obfuscar/obfuscar
yanyao233
2023-08-06 22:49:27 +08:00
@estk discord 也是
ericlgq2
2023-08-07 01:38:16 +08:00
这是开发忘了把断点去掉,别问我是怎么知道的。。。
HuskyYellow
2023-08-07 09:47:24 +08:00
aegon466
2023-08-07 10:46:23 +08:00
这就是前端忘了去掉 debug 或者是故意留的
murmur
2023-08-07 17:16:46 +08:00
@ericlgq2 你不看图的,这逻辑太简单了,检测每次函数的执行时间,如果函数执行太长,就停止所有代码,body 全清空

这不是防调试是啥

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/962757

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX