无限debugger的几种处理方式
不少网站会在代码中加入‘debugger’,使你F12时一直卡在debugger,这种措施会让新手朋友束手无策。
js中创建debugger的方式有很多,基础的形式有:
①直接创建debugger
debugger;
②通过eval创建debugger(在虚拟机中创建)
eval('debugger');
③通过Function创建debugger(在虚拟机中创建)
Function('debugger').call()
Function('debugger').apply()
Function().constructor('debugger').apply('action')
而我们遇到的debugger,多数是在这些形式的基础上,或配合定时器,或加上循环,甚至经过ob混淆。。。
对于过无限debugger,常用的方法有以下这些:
1、一律不在此处暂停

2、添加条件断点
在debugger处添加一个结果为false的条件,让这个断点不会被运行

3、替换文件
如果debugger是在js文件中,直接替换文件,删掉debugger,一劳永逸
4、hook
对于一些在虚拟机(VM)中生成的debugger,使用‘一律不在此处暂停(Never pause here)’后会出现网站变的很卡的情况,因为有些网站做了检测,这么做会卡爆你的浏览器。这个时候我们就需要hook。
根据debugger创建方式的不同,使用不同的hook代码
4.1、hook evel
eval_back = eval
eval = function (args) {if (args.includes('debugger')) {return null} else {return eval_back(args);}
}
4.2、hook constructor
Function.prototype._constructor = Function.prototype.constructor;
Function.prototype.constructor = function() {if(arguments.toString().includes('debugger')){return null}return Function.prototype._constructor.apply(this,arguments);
}
4.3、hook setInterval
setInterval_back = setInterval
setInterval = function(a,b){if(a.toString().includes('debugger')){return null;}return setInterval_back(a, b);
}
要注意注入hook代码要在执行debugger之前,所以要先在debugger前面的地方打断点,再刷新页面注入hook代码
5、油猴插件
有些网站,刷新之后会新开虚拟机,之前打下的断点就没有了,无法在执行debugger之前注入hook。对于这种情况,可以用油猴写hook脚本来监控网站,不用提前打断点。
相关文章:
无限debugger的几种处理方式
不少网站会在代码中加入‘debugger’,使你F12时一直卡在debugger,这种措施会让新手朋友束手无策。 js中创建debugger的方式有很多,基础的形式有: ①直接创建debugger debugger; ②通过eval创建debugger(在虚拟机中…...
数据库基础理论知识
1.基本概念 数据(Data):数据库存储的基本对象。数字、字符串、图形、图像、音频、视频等数据库(DB):在计算机内,永久存储、有组织、可共享的数据集合数据库管理系统(DBMS):管理数据库的系统软件数据库系统(DBS):DBDBMSDBADBAP 数…...
华为OD机试真题-模拟目录管理-2024年OD统一考试(C卷)
题目描述: 实现一个模拟目录管理功能的软件,输入一个命令序列,输出最后一条命令运行结果。 支持命令: 1)创建目录命令:mkdir 目录名称,如mkdir abc为在当前目录创建abc目录,如果已存在同名目录则不执行任何操作。此命令无输出。 2)进入目录命令:cd 目录名称, 如cd …...
yield代码解释
目录 我们的post请求爬取百度翻译的代码 详细解释 解释一 解释二 再说一下callback 总结 发现了很多人对存在有yield的代码都不理解,那就来详细的解释一下 我们的post请求爬取百度翻译的代码 import scrapy import jsonclass TestpostSpider(scrapy.Spider):…...
C#四部曲(知识补充)
Unity跨平台原理 .Net相关 只要编写的时候遵循.NET的这些规则,就能在.NET平台下通用 各种源码→根据.NET规范编写→(虚拟机)生成CIL中间码(保存在程序集中)→转成操作系统原代码 跨语言← 跨平台↓ Unity跨平台原理(Mono) c#脚本→MonoC#编…...
Vue中的数据交互有几种方式
1. 单向数据流: Vue中的数据流是单向的,从父组件传递到子组件。父组件可以通过props将数据传递给子组件,子组件通过props接收并使用这些数据。这种方式适用于父子组件之间的简单通信。 2. 事件: 子组件可以通过触发自定义事件来…...
2.MySQL中的数据类型
整数类型: tinyint(m): 1个字节 范围(-128~127) 常用:性别 0和1表示性别;状态 0和1表示 int(m): 4个字节 范围(-2147483648~2147483647) 常用:数值 数值类型中的长度m是值显示长度,只有字段指定zerofill时有用 例如…...
身份证查询真伪-三要素查验-ios身份证实名认证接口调用
身份证实名认证接口联网核验是实名认证的关键一步,通过翔云OCR识别出的身份证信息,联网上传全国人口数据库,通过比对查找,确认人口数据库是否有身份证号和姓名匹配的信息,如果有那就确认身份证是真的,如果没…...
@EnableWebMvc介绍和使用详细demo
EnableWebMvc是什么 EnableWebMvc 是 Spring MVC 中的一个注解,它用于启用 Spring MVC 框架的基本功能,以便你可以使用 Spring MVC 提供的特性来处理 Web 请求。 通常情况下,在基于 Spring Boot 的应用中,并不需要显式地使用 Ena…...
VC-旅游系统-213-(代码+说明)
转载地址: http://www.3q2008.com/soft/search.asp?keyword旅游系统 旅游信息管理系统开题报告 一、研究目的 旅游信息管理系统能帮助旅行社在游客的市场开拓、游客的信息管理、客户服务等方面进行综合处理。使旅行社能够准确的掌握客户的市场动态,充分了解对客户…...
重学SpringBoot3-ErrorMvcAutoConfiguration类
更多SpringBoot3内容请关注我的专栏:《SpringBoot3》 期待您的点赞👍收藏⭐评论✍ 重学SpringBoot3-ErrorMvcAutoConfiguration类 ErrorMvcAutoConfiguration类的作用工作原理定制 ErrorMvcAutoConfiguration示例代码1. 添加自定义错误页面2.自定义错误控…...
剑指offer面试题34 丑数
考察点 空间换时间提效知识点 题目 分析 这里面其实用到了一点点的数学知识,丑数的定义是只包含2,3,5因子的数。现在要求第1500个丑数,最简单的办法就是从数字1开始遍历,依次判断每个数字是不是丑数,如果…...
C++ std::list的merge()使用与分析
看到《C标准库第2版》对list::merge()的相关介绍,令我有点迷糊,特意敲代码验了一下不同情况的调用结果。 《C标准库第2版》对list::merge()的相关介绍 list::merge()定义 merge()的作用就是将两个list合并在一起,函数有2个版本:…...
Quartz的分布式功能化设计
Quartz的分布式功能化设计 文章目录 Quartz的分布式功能化设计主体功能实现依赖API例子JOBJob记录表设计java具体代码DateDOOperatorDOSysQuartzJobDOPageDTOQuartzJobDTOQuartzJobPageDTOQuartzJobStatusEnumQuartzJobControllerIQuartzJobServiceQuartzJobServiceImplQuartzJ…...
Caffeine缓存
本地缓存基于本地环境的内存,访问速度非常快,对于一些变更频率低、实时性要求低的数据,可以放在本地缓存中,提升访问速度 使用本地缓存能够减少和Redis类的远程缓存间的数据交互,减少网络 I/O 开销,降低这…...
AI辅助研发正在成为造福人类的新生科技力量
目录 1.AI用于药物研发 (1)药物靶点预测: (2)药物分子设计: (3)药物筛选: (4)药效和安全性预测: (5)…...
程序分享--排序算法--归并排序
关注我,持续分享逻辑思维&管理思维; 可提供大厂面试辅导、及定制化求职/在职/管理/架构辅导; 有意找工作的同学,请参考博主的原创:《面试官心得--面试前应该如何准备》,《面试官心得--面试时如何进行自…...
pg数据库和mysql区别
区别一 PostgreSQL (通常称为 PG) 和 MySQL 都是广泛使用的关系型数据库管理系统 (RDBMS)。虽然它们都是用于存储和管理数据的关系数据库,但它们在一些方面有很大的区别,如下所述: 数据类型:PostgreSQL 支持更多的数据类型&#…...
Jetpack Compose 动画正式开始学习
1. 简单值动画 //将一个Color简单值 从一个值 变化到另一个 另一个简单值 就用 animateColorAsStateval backgroundColor by animateColorAsState(if (tabPage TabPage.Home) Purple100 else Green300) 动画其实就是 一个状态不停发生改变导致 组件不断重组产生的过程 2.…...
iOS 17.4报错: libopencore-amrnb.a[arm64]
iOS 17.4报错: libopencore-amrnb.a[arm64] iOS 17.4 模拟器运行报错解决方案 iOS 17.4 模拟器运行报错 Building for ‘iOS-simulator’, but linking in object file (/XXX/lib/libopencore-amrnb.a[arm64]2) built for ‘iOS’ 解决方案 在Podfile里添加如下设…...
基于改进快速粒子群算法的IEEE33节点有源配电网动态无功优化软件介绍
基于改进的快速粒子群有源配电网动态无功优化 软件:Matlab 介绍:在含分布式电源的IEEE33进行无功优化,以无功最优和运行费用最优为目标函数进行优化,采用改进的快速粒子群算法进行计算概述 本系统面向含分布式电源(DG&…...
【Linux】静态库(.a) + 动态库(.so)
Linux 静态库(.a) 动态库(.so) 统一示例: 库名:test → 静态库 libtest.a,动态库 libtest.so源文件:test.c、main.c头文件路径:./include库文件路径:./lib用户家目录路径:/home/youruser/yourl…...
猫抓浏览器扩展:终极网页资源嗅探工具使用完整指南
猫抓浏览器扩展:终极网页资源嗅探工具使用完整指南 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 猫抓(Cat Catch…...
Keychron机械键盘选购指南:红轴双模如何提升程序员生产力
1. 为什么程序员需要一把Keychron红轴双模键盘 作为一个每天要和键盘亲密接触8小时以上的程序员,我深刻体会到一把好键盘对工作效率的影响。之前用过青轴、茶轴、黑轴等各种机械键盘,直到遇到Keychron的红轴双模版本,才真正找到了"本命键…...
为什么头部自动驾驶团队已在预研C++27反射?——静态反射在嵌入式ABI稳定、安全认证代码生成中的不可替代性揭秘
第一章:C27静态反射的演进脉络与战略定位C27静态反射并非凭空而生,而是ISO C标准化进程中长达十年深度探索的结晶。它继承并重构了C17的std::is_same、C20的std::source_location与反射TS(P0194R8)的语义骨架,同时彻底…...
3PEAK思瑞浦 TPW4052-TR TSSOP16 模拟开关/多路复用器
特性模拟开关电压:3.3V、5V、10V、5V低导通电阻:在 Vs 4.5V 或 9V 时典型值为 50Ω;在 Vs 4.5V 时典型值为 60Ω;在 VS 3V 时典型值为 300Ω带宽:200 MHz快速开关时间:ΔtON 60 ns,tOFF 50…...
WebRTC实现VoiceAgent智能体
今天给大家介绍使用RTCPilot实现基于WebRTC的voice agent。 RTCpilot是基于c17开发的,跨平台,支持服务集群的WebRTC服务。 什么是voice agent? 一句话定义:实时语音对话AI大模型,跑在 WebRTC 低延迟实时音视频通道上…...
数据结构之字典树(Trie)
字典树(Trie)详解 1. 引言 字典树(Trie),也称为前缀树或单词查找树,是一种特殊的树形数据结构,用于高效地存储和检索字符串集合。它特别适用于需要快速查找前缀匹配的场景,如自动补全…...
Kimi-VL-A3B-Thinking算力适配:单卡A10即可运行长思考MoE多模态模型
Kimi-VL-A3B-Thinking算力适配:单卡A10即可运行长思考MoE多模态模型 1. 引言:当多模态模型遇上“小算力”的惊喜 如果你对多模态大模型感兴趣,但又担心自己的硬件“带不动”,那么今天这篇文章就是为你准备的。我们常常看到一些强…...
DLSS-G转FSR3:突破性技术革命让老款RTX显卡重获新生
DLSS-G转FSR3:突破性技术革命让老款RTX显卡重获新生 【免费下载链接】dlssg-to-fsr3 Adds AMD FSR 3 Frame Generation to games by replacing Nvidia DLSS Frame Generation (nvngx_dlssg). 项目地址: https://gitcode.com/gh_mirrors/dl/dlssg-to-fsr3 在图…...
