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版本)

相关推荐
vx1_Biye_Design3 分钟前
基于web的物流管理系统的设计与实现-计算机毕业设计源码44333
java·前端·spring boot·spring·eclipse·tomcat·maven
tqs_1234511 分钟前
倒排索引数据结构
java·前端·算法
a程序小傲14 分钟前
听说前端又死了?
开发语言·前端·mysql·算法·postgresql·深度优先
Yan.love35 分钟前
【CSS-布局】终极方案:Flexbox 与 Grid 的“降维打击”
前端·css
请叫我聪明鸭1 小时前
基于 marked.js 的扩展机制,创建一个自定义的块级容器扩展,让内容渲染为<div>标签而非默认的<p>标签
开发语言·前端·javascript·vue.js·ecmascript·marked·marked.js插件
悟能不能悟1 小时前
Gson bean getxxx,怎么才能返回给前端
java·前端
2501_944711431 小时前
前端向架构突围系列 - 工程化(五):企业级脚手架的设计与落地
前端·架构
Apex Predator1 小时前
本地库导入到nexus
java·服务器·前端
趁着年轻吃点苦1 小时前
宝塔面板部署指南
前端
0思必得01 小时前
[Web自动化] Selenium中Select元素操作方法
前端·python·selenium·自动化·html