文心一言开发者控制台调试破解
本帖最后由 李恒道 于 2023-11-2 17:07 编辑一打开标准的无限debugger
往上一层可以发现是jsvmp,这样替换文件相对来说就不太好搞
根据测试如果卡在debugger就会跳转页面
但是放行debugger就可以正常使用
可以基本确定debugger前后存在计时程序
这个时候就可以考虑对apply做hook劫持无限debugger的函数,实现正常调试
// ==UserScript==
// @name WXYY Crack Debugger
// @namespace http://tampermonkey.net/
// @version 0.1.0
// @descriptiontry to take over the world!
// @author You
// @match https://yiyan.baidu.com/*
// ==/UserScript==
const apply = Function.prototype.apply
Function.prototype.apply = function (thisArg, argsArray=[]) {
if(this.toString()==='function anonymous(\n) {\ndebugger\n}'){
return
}
return this.call(thisArg, ...argsArray)
}
// ==UserScript==
// @name WXYY Crack Debugger
// @namespace http://tampermonkey.net/
// @version 0.1.0
// @descriptiontry to take over the world!
// @AuThor You
// @match https://yiyan.baidu.com/*
// ==/UserScript==
Function.prototype.apply = function (thisArg, argsArray=[]) {
// if (thisArg && typeof thisArg.toString === 'function') {
if(this.name === 'anonymous' && this.toString() === 'function anonymous(\n) {\ndebugger\n}'){
return
}
// }
return this.call(thisArg, ...argsArray)
}
帮楼主修改了一下,如果不判断this.name===“anonymous”, 会导致栈溢出。 gegepang 发表于 2023-11-14 08:53
关于跳过 debugger感觉又学到一个。上一个帖子是hook构造器直接置空 这个帖子又是处理apply做hook劫持 ...
一般是就地取材离着最近的是哪个就劫持那个
文心一言属于jsvmp,分析逻辑过于麻烦了
然而上一层直接就是apply函数调用
所以劫持apply成本最低 关于跳过 debugger感觉又学到一个。上一个帖子是hook构造器直接置空 这个帖子又是处理apply做hook劫持无限debugger的函数
这两个方法有啥区别啊 是可以搞4.0吗{:1_918:}
我也看看,怎么做,哈哈 大佬,不要打软件全名,注意保护自己 不想要福祉啦? 我也看看,怎么做 百度不破不立 缺根弦的软件,哈哈 感谢分享