码迷,mamicode.com
首页 > 其他好文 > 详细

突破前端反调试--阻止页面不断debugger

时间:2017-12-10 23:10:38      阅读:254      评论:0      收藏:0      [点我收藏+]

标签:var   --   code   htm   ges   图片   script   href   影响   

原文地址: http://www.cnblogs.com/aqiongbei/p/8018053.html
其实我也不太确定是不是反调试,但是他阻止我看他代码了,那就是反调试,姑且这么称呼吧。

问题复现

一次扒某网站的前端代码,打开控制台要看Network,结果发现他们页面一打开控制台就不断的debugger100ms一次,很影响看页面内容。就像下面这样的
技术分享图片

问题分析

每次在断点处停下来的时候页面都会跳到source这个tab页面,也能够看到他的debugger的代码,其实他的实现很简单,只有这一行代码

(function() {var a = new Date(); debugger; return new Date() - a > 100;}())

虽然简单,但是却很有效。

  • 不停地打断你,页面跳到source页面,阻止你看他代码不
  • 断的产生不可回收的对象,占据你的内存,造成内存泄漏,没过多久浏览器就会卡顿
    所以他带来的影响还是挺大的,我们需要解决这个问题。

问题解决

这个问题解决起来还是蛮简单的,问题解决只需要一句话:禁止断点
而对应的操作是在Chrome控制台Source Tab页点击Deactivate breakpoints按钮或者按下Ctrl + f8(下图)。
技术分享图片

这样就能禁用断点了,问题就得到了解决,但是当你需要调试的时候记得要起他哦。很简单的操作,但是你如果对Chrome控制台调试不熟悉的话还是比较头疼的。在这里记录一下,分享给更多的人。

突破前端反调试--阻止页面不断debugger

标签:var   --   code   htm   ges   图片   script   href   影响   

原文地址:http://www.cnblogs.com/aqiongbei/p/8018053.html

(0)
(0)
   
举报
评论 一句话评论(0
0条  
登录后才能评论!
© 2014 mamicode.com 版权所有 京ICP备13008772号-2
迷上了代码!