V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
jugelizi

如何知道用户打开了控制台

  •  
  •   jugelizi · Mar 24, 2018 · 9223 views
    This topic created in 2963 days ago, the information mentioned may be changed or developed.

    发现用户打开调试模式就执行一些特殊的代码

    40 replies    2018-03-26 13:44:32 +08:00
    R18
        1
    R18  
       Mar 24, 2018 via Android   ❤️ 13
    (function () {
      var re = /x/;
      var i = 0;
      console.log(re);
      re.toString = function () {
        return alert('第 ' + (++i) + ' 次打开控制台');
      };
    })();
    SourceMan
        2
    SourceMan  
       Mar 24, 2018 via iPhone
    前几天搜索过这个问题,检测到控制台打开
    while(1)
    azh7138m
        3
    azh7138m  
       Mar 24, 2018 via Android
    @R18 双击 666
    laoyur
        4
    laoyur  
       Mar 24, 2018
    有人可以解释一下一楼的原理吗
    nyanyh
        5
    nyanyh  
       Mar 24, 2018   ❤️ 2
    之前遇到过在脚本里插触发调试器的 while(1) { debugger; }
    yaerda
        6
    yaerda  
       Mar 24, 2018   ❤️ 4
    gdtv
        7
    gdtv  
       Mar 24, 2018 via Android
    突然想到一个恐怖的问题。假如我们是生活在神族虚拟的电脑世界里面,我们怎么知道神族的开发人员打开了控制台?
    airyland
        8
    airyland  
       Mar 24, 2018
    上面的方法估计在新版 Chrome 不能用了,但是在微博上有看到另一个方法,找不到具体微博了。
    cutlove
        9
    cutlove  
       Mar 24, 2018
    完了,感觉今后面试又增加了一道题
    wplct
        10
    wplct  
       Mar 24, 2018
    遇到过无限 debug 的
    300
        11
    300  
       Mar 24, 2018 via Android
    @gdtv 也许控制台就没关过
    greatghoul
        12
    greatghoul  
       Mar 24, 2018 via Android
    费这个心干嘛,用户说不定写了个浏览器插件,那你还咋整
    yingfengi
        13
    yingfengi  
       Mar 24, 2018 via Android
    @airyland 醒醒,天亮了
    liuyin
        14
    liuyin  
       Mar 24, 2018 via iPhone
    前两天就遇到过,不管是先打开,还是后打开控制台,无限 debug。
    zjsxwc
        15
    zjsxwc  
       Mar 24, 2018
    我记得招商银行的手机网页支付时,如果打开了控制台他会暂停,那么我觉得应该是有个事件
    zjsxwc
        16
    zjsxwc  
       Mar 24, 2018   ❤️ 2
    @zjsxwc 找到了是这段 js 代码
    ```

    var _0xcf364 = function() {
    function _0x526e38(_0x1b074) {
    if (('' + _0x1b074 / _0x1b074)['length'] !== 0x1 || _0x1b074 % 0x14 === 0x0) {
    (function() {}
    ['constructor']('debugger')());
    } else {
    (function() {}
    ['constructor']('debugger')());
    }
    _0x526e38(++_0x1b074);
    }
    try {
    _0x526e38(0x0);
    } catch (_0x382e39) {}
    };
    _0xcf364();


    ```
    honeycomb
        17
    honeycomb  
       Mar 24, 2018 via Android
    @zjsxwc 看来浏览器要阻止这个漏洞
    Terry05
        18
    Terry05  
       Mar 24, 2018
    每次打开面度的页面,打开控制台就能出现特别的 Log 就觉得好神奇
    Daoma
        19
    Daoma  
       Mar 24, 2018
    @airyland 刚试了一下 Chrome 和 Firefox 都阔以,挺神奇的,大学党学习了
    geekcorn
        20
    geekcorn  
       Mar 24, 2018
    mark 一下
    dobelee
        21
    dobelee  
       Mar 24, 2018 via Android
    mark
    qnwx1
        22
    qnwx1  
       Mar 24, 2018
    mark
    carakan
        23
    carakan  
       Mar 24, 2018 via Android
    mark
    scriptB0y
        24
    scriptB0y  
       Mar 24, 2018 via iPhone
    @wplct 爬虫遇到过 恶心的一笔……
    MinonHeart
        25
    MinonHeart  
       Mar 24, 2018 via iPhone
    无限 debug (自作聪明?!),chrome 把断点打掉就可以了
    CloudnuY
        26
    CloudnuY  
       Mar 24, 2018
    可以看看 p♂r 社 的网页版代码
    NLL
        27
    NLL  
       Mar 24, 2018 via iPhone
    关注
    GoLand
        28
    GoLand  
       Mar 24, 2018
    @gdtv 什么事都能想出这些自己脑补出来的累么?
    zjyl1994
        29
    zjyl1994  
       Mar 25, 2018
    看过一个库,是根据网页宽度或高度突然变化分析的,只要不是分离式的调试窗口都能感知,这个思路可以借鉴一下
    cosformula
        30
    cosformula  
       Mar 25, 2018 via Android
    @zjyl1994 在开着控制台的情况下输入网址...
    chinvo
        31
    chinvo  
       Mar 25, 2018
    之前就遇到过无限 debugger 的,直接把断点关掉就好

    检测页面宽度 /高度变化的也能用分离式或者提前开的方式规避
    Mavious
        32
    Mavious  
       Mar 25, 2018 via iPhone
    这个要马克。最烦你们这种反控制台的人了。抓个包都不让人好好抓了。
    不让用控制台的话还有 fiddler 呢,这个你们就控制不了了。
    xuanyuanaosheng
        33
    xuanyuanaosheng  
       Mar 25, 2018 via Android
    mark 下
    580a388da131
        34
    580a388da131  
       Mar 25, 2018
    客户端代码费那劲干嘛,像 Facebook 一样在 Console 给个大大的安全提示就好了嘛。
    反正会技术的怎么都能绕过。
    AV1
        35
    AV1  
       Mar 25, 2018 via Android
    console.warn("严正声明:在此执行任何代码造成任何不可预知的经济财产损失或人员伤亡,本网站概不负责。")
    Antidictator
        36
    Antidictator  
       Mar 25, 2018
    @MinonHeart #25 我试过了好像不行,直接卡死了。关闭 console 也没用了 emmmm
    wjm2038
        37
    wjm2038  
       Mar 25, 2018 via Android
    @CloudnuY 我开了控制台好像也没啥事情啊。。
    ahlixinjie
        38
    ahlixinjie  
       Mar 25, 2018 via iPhone
    @gdtv 可以看一下 贞子,是小说不是电影 ,非常精彩,里面的人意识到了自身是被创造出来的,并找到了与外界交流的方法,成功的把自己带到了外界
    Levox
        39
    Levox  
       Mar 25, 2018
    mark
    leopku
        40
    leopku  
       Mar 26, 2018
    @gdtv 兽族的 zerg 可破
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2532 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 238ms · UTC 06:52 · PVG 14:52 · LAX 23:52 · JFK 02:52
    ♥ Do have faith in what you're doing.