首页 > 其他分享 >JS反调试VMdebugger

JS反调试VMdebugger

时间:2023-12-05 21:56:55浏览次数:42  
标签:VMXXX JS 置空 当中 VMdebugger 源代码 调试

今天干活的时候,要在前端调试找token值,打开“源代码”选项卡的时候,就不断步入“VMXXX”格式的源码当中,在查询了一些资料之后,发现Node.js反调试的一种手段,网上有说是Google chrome加载evel()函数,应该是存在这种的情况的,不过在测试的过程当中大多数应该都是反调试的这种。

该反调试的方法主要的作用是不断的产生VMXXX文件直至浏览器崩溃。

如果是单纯的查看源码的话那就可以直接禁用断点。

 

这种方法只是适用于查看源代码,无法进行调试。

目前可以查到比较有效的方法是“置空函数法”

从栈当中找到源码的位置,通过分析将产生VM反调试的函数置空,这样就不会一直步入到VMXXX当中了,网上有一种方法说是

执行 Function.prototype.constructor = function(){} 即可

这种方法即是“置空函数法”,但是不能盲目的使用这种方法,因为大多数的时候应该都是不管用的,因为我使用了就没有起到它该有的效果。

例如说这个例子: 看字不要看图,图是找的别人的

 

从栈当中找到源代码的文件,之后跳转到源代码文件当中

 

之后在控制台将该函数置空。

 

在查询资料的过程当中,在写文章的时候也看到、想到其他的方法,产生VMXXX的方法不在函数当中,可能需要使用到 JS文件替换法,JS本地HTML调试等等。

引用:

关于某解析站的无限Debugger的分析_tiuvl-CSDN博客

突破前端反调试--阻止页面不断debugger - 问题与解决 - SegmentFault 思否

绕过JavaScript debugger三种解决方法_js debugger反调试-CSDN博客

标签:VMXXX,JS,置空,当中,VMdebugger,源代码,调试
From: https://www.cnblogs.com/TwoCousinElizabeth/p/17878366.html

相关文章

  • JSON utils 工具类核心方法parseObject , toString实现
    1packagecom.ls.utils;23importjava.lang.reflect.Array;4importjava.lang.reflect.Field;5importjava.util.Arrays;67/**8*@authorLartimes9*@version1.010*@description:JSON工具类11*toJSONString12*parseObject13......
  • js格式化工具
    背景通常我们进行网页调试或者爬虫的时候,发现get到的js通常是格式很乱的,不利分分析代码和查找所以本文找到一个可以将js格式化的工具在线解析1.网址https://coding.tools/cn/javascript-beautifier比如我们请求一个jshttps://unpkg.com/[email protected]/components/prism-do......
  • [OpenVR] OpenVR 驱动开发调试的方法小记
    OpenVR驱动开发调试方法VR也许是下一个风口,也许只是一场耀眼的烟花晚会。这年轻的平台还有许多未成形的构建,其中恰好就包括一个完整的调试架构。这使得VR开发,尤其是驱动层的开发,变得十分得痛苦。因为我个人的习惯,我会尽可能避免调用VisualStudio.但是由于在Windows下开......
  • jsmn示例使用
    前言jsmn是一款超级精简的c语言json解释器,用于嵌入式进行json数据解析特别友好。官方库:https://github.com/zserge/jsmn/tree/masterjsmn(pronouncedlike'jasmine')isaminimalisticJSONparserinC.Itcanbeeasilyintegratedintoresource-limitedorembedde......
  • 『江鸟中原』鸿蒙---聊天应用(JS)
    鸿蒙大作业,一个简单的基于JS的聊天应用环境搭建软件要求DevEcoStudio版本:DevEcoStudio3.1Release。HarmonyOSSDK版本:APIversion9。硬件要求设备类型:华为手机或运行在DevEcoStudio上的华为手机设备模拟器。HarmonyOS系统:3.1.0DeveloperRelease。环境搭建安装DevEcoStudio......
  • c++ json的解析和QT中json的操作
    1.下载jsoncpp源码2.首先建议jsoncpp源码编译成动态库https://www.bilibili.com/video/BV1pb4y1W7ZZhttps://www.bilibili.com/video/BV1Ra4y1e7gL (1)用QT的Cmake工具 (2)用Visualstudio a.工具打开jsoncpp源码,在CMakeLists.txt右键->jsoncpp的CMak......
  • js 中的 base64 转码 btoa/atob
    1场景有时,文本里面包含一些不可打印的符号,比如ASCII码0到31的符号都无法打印出来,这时可以使用Base64编码,将它们转成可以打印的字符。另一个场景是,有时需要以文本格式传递二进制数据,那么也可以使用Base64编码。所谓Base64就是一种编码方法,可以将任意值转成0~9、A~Z、a-z......
  • 【虹科干货】关于JSON数据库,你了解多少?
    如何理解JSON数据库?作为NoSQL数据库的一种类型,JSON数据库有哪些优势呢?JSON数据库如何运作,它为应用程序开发者带来了哪些价值呢?文章速览:什么是JSON什么是JSON数据库JSON数据库的显著优势关于JSON数据库的Q&A 一、什么是JSON?首先,我们得明确“JSON”的含义。开发人员在创......
  • js---手绘签名
    最近在做项目,在做电子签章的时候,需要用到电子签名,下面是用JS进行手绘签名:<!DOCTYPEhtml><html><metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/><title>手写签名</title><styletype="text/css">*{margin:0......
  • js---生成印章
    最近在做电子合同的功能,需要用到电子印章,那么如何通过js生成印章呢?下面是具体的代码:<!doctypehtml><htmllang="en"><head><metacharset="UTF-8"><title>Document</title></head><body><canvasid="canvas"width......