精华内容
下载资源
问答
  • JSDebugger是一个运行时检查工具,可供您深入了解应用程序的详细信息
  • odoo开发-debug模式

    2020-12-13 14:43:51
    开启开发者模式 url添加?debug=1,案例:http://localhost:8069/web?debug=1 css、js在debug模式下不是压缩格式修改 debug的值修改成asset:http://localhost:8069/web?debug=asset 这种模式方便修改css js

    开启开发者模式

    • url添加?debug=1,案例:http://localhost:8069/web?debug=1

    css、js在debug模式下不是压缩格式修改

    • debug的值修改成asset:http://localhost:8069/web?debug=asset
    • 这种模式方便修改css js

    展开全文
  • 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言一、手段分类1.简单粗暴型2.通过eval混淆型3.利用构造器constructor来执行二、处理方法1.粗暴型2.... 前言 我刚入逆向的坑的时候(其实...

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


    前言

    我刚入逆向的坑的时候(其实就是现在),那个所谓的无限debugger让我很难受,为什么说是"所谓的无限debugger",因为它其实不是无限的,如果他是无限的话,浏览器会卡死,别说调试,就连我们正常浏览浏览器的页面都成问题,比如:
    下面展示一些 内联代码片

    while(!![]){
    debugger;
    }
    

    在这里插入图片描述
    这完全没法进行操作好吧,好了,其实这些都不是重点,回归主题,怎样通过现在浏览器上出现的各种(几乎所有,但不包括特例,至少作为新手的我没遇到过)

    一、手段分类

    1.简单粗暴型

    不带任何混淆及直接明文出现在代码中,跟我们平时调试js手动添加断点一样,其实很多时候都是搭配定时器一起使用的,如sojson官方案例.:
    在这里插入图片描述

    2.通过eval混淆型

    大多数情况情况都是将debugger关键字混淆后装入eval内部
    在这里插入图片描述
    在这里插入图片描述
    其实他就将需要执行带有debugger的方法混淆后装入eval里面,其实原理和第一个=种一样的。

    3.利用构造器constructor来执行

    这一种我觉得相对于以上两种难度稍微大一点,一般使用这种方式的多少都带有混淆,主要使用的形式有一下几种:

    Function("debugger").call() //这里根据后面带的参数个数、类型来定,如果参数为多个,或者类型为数组时,call需换成apply,或者bind
    XXX.constructor("debugger").call("action")
    (function(){return !![];})["constructor"]("debugger")["call"]("action")
    

    比如:
    在这里插入图片描述
    在这里插入图片描述
    好了,我所目前所了解的就以上的几种手段了,接下来我简单的介绍一下我自己面对这些手段时的解决思路吧。

    二、处理方法

    1.粗暴型

    所谓粗暴型就是直接干掉或者直接跳过debugger运行的地方,
    (1)在debugger所在的地方点击鼠标右键选择 “Never pause here”,如:
    在这里插入图片描述
    (2) 将debugger所在的地方将其干掉,然后使用抓包软件fiddler的Autoresponse功能运行修改过的js即可,但这种方法存在局限性就是:当debugger所在的方法里面还存在其他逻辑时,会出现整个js缺少逻辑,导致整个js出错。

    2.重构运行逻辑

    (1)debugger与计时器搭配型,他的原理就是定时器设置一个很短的时间,频繁的去执行含有debugger的方法,以达到无限debugger的效果,这里我就写一个简单的demo来举例吧

    function a(){
        
        debugger;
        b();
    }
    function b(){
        console.log("hello world!")
    }
    setInterval(a,200); //每0.2秒触发一次
    

    这时候就可以通过hook的方式去重写这个定时器方法:

    setInterval_new=setInterval
    setInterval=function(a,b){
    if(a.indexOf("debugger")==-1){
    	return setInterval_new(a,b)
    	}
    }
    //如果这里的定时器只是单纯的用来频繁触发debugger的话,就直接将其干掉了
    

    上面所提的eval手段也是通过这样的手段将其重写。

    (2)同上当出现"debugger"在constructor里面时,重写方法如下:

    Function.prototype.constructor_bc=Function.prototype.constructor;
    Function.prototype.constructor=function(){
    					if(arguments==="debugger"){"什么都不做"}  //利用arguments关键字的属性获取当前方法里面的参数
    					else{
    						return Function.prototype.constructor_bc.apply(this,arguments)  //跟上面处理debugger和定时器一起用的处理方法一样
    					}
    				}
    //注:"Function"的含义并不是某度上面有些人说"js不区分大小",不知道的小伙伴可以去看看比较正规一点的文档了解一下
    

    总结

    作为正在入坑我觉得,虽然过debugger操作比较基础,但是在其过程中能提高自己的代码阅读能力及代码逻辑分析能力等等。由于本菜鸡的语言表达能力有待提高,以上说的还有很多细节没有说到,总之我觉得过掉所谓的无限debugger,思路就是寻找调用当前debugger地方,阻止让它调用,或者让它调用不让debugger起作用就可以了。

    展开全文
  • 在前端开发中,特别是只能用IE浏览器开发的情况下(比如维护某些比较古老的系统),又恰好遇到模态窗口开发,这种状态时会发现js代码调试语句 debugger居然不生效,由于不能调试代码了,那么此时我们需要另外一种...

    在前端开发中,特别是只能用IE浏览器开发的情况下(比如维护某些比较古老的系统),又恰好遇到模态窗口开发,这种状态时会发现js 代码调试语句  debugger 居然不生效,由于不能调试代码了,那么此时我们需要另外一种办法来打印某个对象所包含的方法与属性,可以参考如下方法进行浏览器控制台打印。

    //打印任何对象包含属性及自有函数的方法,入参为某个未知对象
        printObject : function(object){
            var temp = "";
            for (var i in object) {
                  temp += i + " = " + object[i] + "\n";             
            }
            console.log('temp:'+temp);
        }

    展开全文
  • idea的js调试目前看来不同给力,一是玩转它需要安装谷歌插件支持,二是貌似存在一些bug... 一、新建一个jsp并打上断点 二、调试 idea出现提示: 安装JetBrains IDE Support支持 问题出现了,点击其中...

    idea的js调试目前看来不同给力,一是玩转它需要安装谷歌插件支持,二是貌似存在一些bug...

    一、新建一个jsp并打上断点

    二、调试

    idea出现提示:

    安装JetBrains IDE Support支持

    问题出现了,点击其中连接却一直连不上:

    http://www.chromein.com/crx_11622.html中下载了此插件,并按照此网页的方法安装了此插件。再次进入调试状态:

    三、bug

    说明:在jsp页面调试,js代码在页面中。

    1:在调试的过程中看不到js中变量值。

    2:弹出火狐页面后,点击click事件,却不会进入idea。

    解决方法待续..

    注:在jsp页面调试,js代码在引用文件中亦会出现此bug。

     

    转载于:https://www.cnblogs.com/wql025/p/5018107.html

    展开全文
  • odoo12学习之javascript

    2019-10-07 04:35:32
    Odoo12 Javascript 参考指南 本文介绍了odoo javascript框架。从代码行的角度来看,这个框架不是一个大的应用程序,但它是非常通用的,因为它基本上是一个将声明性接口描述转换为活动应用程序的机器,能够与...
  • 如何在IE中进行javascript debugger

    千次阅读 2007-12-03 16:51:00
    1. 安装Microsoft Script EditorMicrosoft Script Editor是office2003中的一个组件。要安装Microsoft Script Editor,首先要有office的安装程序。安装步骤如下: a. 打开word,工具-宏-Microsoft脚本编辑器,这个...
  • js调试技巧(通过debugger调试)

    万次阅读 2017-11-29 16:09:35
    通常我们在网站开发的过程中会用到很多JavaScript代码,js代码智能提示和检错机制又很差,这时候就需要我们自己来进行调试,调试方法有很多,以前用的是火狐浏览器的调试工具,但是后来版本等等的原因不能用了,现在...
  • } Visual Studio (Windows) 超时 如果 Visual Studio 引发了调试适配器启动因已达到超时而失败的异常,可使用注册表设置调整超时: 控制台 VsRegEdit.exe set "" HKCU JSDebugger\Options\Debugging ...
  • 前言:调试技巧,在任何一项技术研发中都可谓是必不可少的技能。掌握各种调试技巧,必定能在...http://seejs.me/2016/03/27/jsdebugger/ 转载于:https://www.cnblogs.com/curationFE/p/frontend_debug_tips.html
  • 友情提示:文中涉及较多Gif演示动画,移动端请尽量在Wifi环境中阅读 ...来源:http://seejs.me/2016/03/27/jsdebugger/  作者:郑武江    转载于:https://www.cnblogs.com/qmx5942701/p/7339745.html
  • JSDebugger 一款iOS的动态调试器 一款可以动态在 iOS 中执行调试代码的工具,原理是利用 JavascriptCore 与强大的 iOS Runtime 还有很多其他的 dynamic call 方式来结合形成的一套可以动态调试 iOS app 的工具。...
  • JS调试篇

    2018-07-29 11:12:26
    【转载】一探前端开发中的JS调试技巧 友情提示:文中涉及较多Gif演示动画,移动端请尽量在Wifi环境中阅读   ...前言:调试技巧,在任何...来源:http://seejs.me/2016/03/27/jsdebugger/  作者:郑武江   
  • 前言:调试技巧,在任何一项技术研发中都可谓是必不可少的技能。掌握各种调试技巧,必定能在工作中起...来源:http://seejs.me/2016/03/27/jsdebugger/ 转载于:https://www.cnblogs.com/leo9527/p/9343454.html
  • 本文转载自:http://seejs.me/2016/03/27/jsdebugger/前言:调试技巧,在任何一项技术研发中都可谓是必不可少的技能。掌握各种调试技巧,必定能在工作中起到事半功倍的效果。譬如,快速定位问题、降低故障概率、帮助...
  • 有请提示:文中涉及较多Gif演示动画,移动端请尽量在Wifi环境中阅读 前言:调试技巧,在任何一项技术研发中都...转自http://seejs.me/2016/03/27/jsdebugger/ 转载于:https://www.cnblogs.com/futai/p/5556569.html
  • myeclipse10优化管理

    2012-05-04 19:47:52
    一.Myeclipse10下载与破解 Genuitec公司发布了MyEclipse 10,一款Genuitec旗下的商业化Eclipse集成开发工具的升级版本。MyEclipse 10基于Eclipse Indigo构建,为Java和JavaEE项目提供了Maven3的支持。...
  • [u][/u]Spring Webscripts Reference Documentation Yong Qu Michael Uzquiano 1.0.0-SNAPSHOT Copyright (C) 2005-2009 Alfresco Software Limited. ...Copies of this document may be made for your own us...
  • http://seejs.me/2016/03/27/jsdebugger/ alert() console.log(xxxx) JS断点调试 JS断点调试,即是在浏览器开发者工具中为JS代码添加断点,让JS执行到某一特定位置停住,方便开发者对该处代码段的分析与逻辑处理。...
  • The --jsdebugger option opens the "browser toolbox" which allows you to debug the Firefox you've just built. 恭喜你! 您已经获取了Firefox源代码,并将其转换为可以运行的应用程序! --jsdebugger选项打开...
  • 本文给出了有关 IBM Lotus Component Designer 编程功能的指导性介绍,其中重点是作为主服务器运行时环境组成部分的 JavaScript. 解释器。 IBM Lotus Component Design...
  • 虽然mozilla的jsdebugger非常好用(还有bug,比如eval时调试器有些问题),但是其他浏览器环境下调试工具就不怎么样了。ms系统自带的script debug工具调试本地代码还可以,直接调试网站js代码表现欠佳。opera除了...
  • 虽然mozilla的jsdebugger非常好用(还有bug,比如eval时调试器有些问题),但是其他浏览器环境下调试工具就不怎么样了。ms系统自带的script debug工具调试本地代码还可以,直接调试网站js代码表现欠佳。opera除了...
  • dorado 5 学习DVD v1.2版内容目录

    千次阅读 2008-04-06 11:33:00
    C0137-JSDebugger.avi(IE 中的 JavaScript 的 debug 技巧 ) ,播放时间 0:02:34 02- 示例中心开发步骤说明 Dorado 提供了一个在线演示,即 Sample Center ,用来给客户展示 Dorado 的功能以及性能。客户对 ...
  • 虽然mozilla的jsdebugger非常好用(还有bug,比如eval时调试器有些问题),但是其他浏览器环境下调试工具就不怎么样了。ms系统自带的script debug工具调试本地代码还可以,直接调试网站js代码表现欠佳。opera除了...

空空如也

空空如也

1 2 3
收藏数 51
精华内容 20
关键字:

jsdebugger