反 devtools-detector 反调试 2

麻麻再也不怕 https://github.com/AEPKILL/devtools-detector 不让我调试啦!

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

作者
PYUDNG
今日安裝
0
安裝總數
554
評價
0 0 0
版本
0.2
建立日期
2023-09-10
更新日期
2023-09-10
尺寸
6.4 KB
授權條款
GPL-v3
腳本執行於

For Developers

针对一个应用较为广泛的devtools-detector进行了逆向破解,使其无法自动地检测开发者工具是否已经打开。
这个脚本是我之前写过的旧版的重制;同样的破解,使用了不同的方法,各有利弊,如果旧版无法成功解除开发者工具检测,可以使用此脚本。

使用此脚本,我默认你会javascript并且知道如何使用网页控制台
使用方法(以Chrome为例,其他浏览器同理):

  1. 首先安装好脚本。
  2. 在Tampermonkey用户匹配里添加含有devtools-detector的网址,或者把网址通过@match规则添加到脚本头部。
  3. 首先打开一个新的浏览器标签页,在这个标签页打开开发者工具。
  4. 切换到开发者工具的“网络”/“network”一栏,在顶栏中将“已停用节流模式”改成“高速3G”或者“低速3G”。这一步的目的在于使得脚本的加载早于网页devtools-detector的加载,所以到底使用“高速3G”还是“低速3G”取决于你的浏览器加载速度。
  5. 保持开发者工具打开状态,在这个标签页网址栏输入含有devtools-detector的网页网址,回车访问
  6. 等待网页加载,这时会弹出无限debugger;,在开发者工具的控制台一栏中能够看到绿色的disabling devtools detector...就说明脚本执行成功了
  7. 在开发者工具的源代码一栏中,找到'堆栈'一项,从上到下地,对其中的每一条堆栈都进行如下操作:
    1. 点击该条堆栈,这时应该看到显示的代码发生了变化
    2. 在控制台中输入this回车
    3. 如果回车后控制台输出了一个如下图所示的object那么就保持当前堆栈,跳出当前这第7步,继续执行下面的第8步
  8. 依次在控制台输入下面几行代码并回车:
    • this._listeners = [];
    • this._checkers = [];
    • this._detectLoopDelay = Infinity;
    • this.stop();
  9. 点击“已在调试程序中暂停”旁边的“继续执行”按钮,此时应该就已经没有无限debugger等反调试了。

已知问题:由于脚本hook了部分原型对象,可能会导致部分网页兼容性问题。