firefox屏蔽debugger()

有些网站为了防止调试,在js里加入很多debugger()语句, 动态生成代码, 定时执行.手动设置断点无效.

解决方案,一种是在js编译的时候,直接内容替换把所有debugger()替换成空,还可以直接屏蔽debugger()语句,

firefox 里debugger()语句是单独一个断点类型(DebuggerStatement)

源码:FIREFOX_118_0b8_RELEASE里修改是这样的

diff 复制代码
diff --git a/js/src/vm/Interpreter.cpp b/js/src/vm/Interpreter.cpp
--- a/js/src/vm/Interpreter.cpp
+++ b/js/src/vm/Interpreter.cpp
@@ -4238,9 +4238,11 @@ bool MOZ_NEVER_INLINE JS_HAZ_JSNATIVE_CA
     END_CASE(Instanceof)
 
     CASE(Debugger) {
+/*  disabled
       if (!DebugAPI::onDebuggerStatement(cx, REGS.fp())) {
         goto error;
       }
+*/
     }
     END_CASE(Debugger)

编译过程

Firefox Contributors' Quick Reference --- Firefox Source Docs documentation

只编译了FIREFOX_118_0b8_RELEASE (linux/ubuntu版本)

相关推荐
一念之间lq2 分钟前
Elpis 第三阶段· 领域模型架构建设
前端·后端
哆啦A梦15889 分钟前
商城后台管理系统 01 Vue-i18n国际化
前端·javascript·vue.js
期待のcode13 分钟前
Vue的安装创建与运行
前端·javascript·vue.js
百锦再16 分钟前
国产数据库的平替亮点——关系型数据库架构适配
android·java·前端·数据库·sql·算法·数据库架构
旺仔Sec16 分钟前
2025年海南省职业院校技能大赛“应用软件系统开发“赛项竞赛样题
前端·应用软件系统开发
FakeOccupational39 分钟前
【树莓派 002】 RP2040 实现示波器 PIO来驱动 ADC10080 并抓取数据方案+ 内置12-bitADC&DMA&网页前端可视化方案
前端
DJ斯特拉1 小时前
Vue工程化
前端·javascript·vue.js
秋深枫叶红1 小时前
嵌入式第三十五篇——linux系统编程——exec族函数
linux·前端·学习
LinDon_1 小时前
【vue2form表单中的动态表单校验】
前端·javascript·vue.js