forked from 0xsdeo/AntiDebug_Breaker
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscripts.json
More file actions
257 lines (257 loc) · 10.3 KB
/
scripts.json
File metadata and controls
257 lines (257 loc) · 10.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
[
{
"id": "Bypass_Debugger",
"name": "Bypass Debugger",
"description": "绕过无限Debugger, 如绕不过去或报错请使用火狐浏览器忽略断点。",
"category": "antidebug"
},
{
"id": "hook_log",
"name": "hook log",
"description": "防止js重写console.log等方法,以此来避免控制台无法打印内容,可配合 hook 板块中的所有脚本,以及本板块内的 Hook CryptoJS、Hook JSEncrypt RSA 两个脚本一起使用。",
"category": "antidebug"
},
{
"id": "hook_table",
"name": "Hook table",
"description": "绕过js检测运行时间差来实现反调试",
"category": "antidebug"
},
{
"id": "hook_clear",
"name": "hook clear",
"description": "禁止js清除控制台数据",
"category": "antidebug"
},
{
"id": "hook_close",
"name": "hook close",
"description": "重写close方法,以此来避免网站反调试关闭当前页面",
"category": "antidebug"
},
{
"id": "hook_history",
"name": "hook history",
"description": "避免网站反调试返回上一页或某个特定历史页面",
"category": "antidebug"
},
{
"id": "Fixed_window_size",
"name": "<div style=\"font-size: 0.9em;\">Fixed window size</div>",
"description": "固定浏览器高度宽度值以绕过前端检测用户是否打开控制台",
"category": "antidebug"
},
{
"id": "Hook_CryptoJS",
"name": "Hook CryptoJS",
"description": "Hook CryptoJS当中的所有 对称&哈希&HMAC算法,例如AES、DES、MD5、SHA等。如果未打印请自查目标站点是否清除了console.log或是否使用的是CryptoJS的加密算法,如果清除了console.log可以尝试使用hook log脚本防止js重写log方法,如果确认使用的是CryptoJS库进行的加密而无法打印可联系我。",
"category": "antidebug"
},
{
"id": "Hook_JSEncrypt",
"name": "Hook JSEncrypt RSA",
"description": "Hook JSEncrypt加密库中的RSA算法,加密时将在控制台打印公钥、原始数据、加密后的密文。解密时将在控制台打印私钥、原始数据、解密后的明文。如果未打印请自查目标站点是否清除了console.log或是否使用的是JSEncrypt的RSA算法,如果清除了console.log可以尝试使用hook log脚本防止js重写log方法,如果确认使用的是JSEncrypt库进行的RSA加密而无法打印可联系我。",
"category": "antidebug"
},
{
"id": "location_href",
"name": "页面跳转JS代码定位通杀方案",
"description": "当网站进行跳转时,将会触发本脚本的debugger,从而可以快速定位到跳转的JS代码位置,进而实现手动替换绕过跳转。注:1.使用本脚本时必须开启F12。2.开启本脚本不代表可以清除跳转代码,只是起一个定位的作用。",
"category": "antidebug"
},
{
"id": "Get_Vue_0",
"name": "获取路由",
"description": "获取已加载的路由并显示在下方的表格中,注意未加载的路由不会被获取到,如果长时间未获取到可能是由于目标站点未使用vue router,也可能是因为目标站点未加载完毕。",
"category": "vue"
},
{
"id": "Get_Vue_1",
"name": "清除跳转",
"description": "本脚本将清除vue router的跳转方法,如果清除后依然会跳转,一方面可能是由于注入的脚本还未清除跳转方法,网站就调用了方法进行跳转,此时可以考虑手动替换js清除跳转方法。另一方面可能是由于在代码中调用的不是vue router的跳转方法,此时可以考虑开启反调试板块中的hook close或hook history脚本,再或者打开页面跳转JS代码定位通杀方案脚本,定位到跳转的函数并替换清除。",
"category": "vue",
"parentScript": "Get_Vue_0"
},
{
"id": "Clear_vue_Navigation_Guards",
"name": "清除路由守卫",
"description": "仅清除全局前置守卫(beforeEach)和全局解析守卫(beforeResolve),如果清除后网站控制台显示报错,可能是由于在路由守卫中做了动态加载等其他操作,此时可以考虑关闭本脚本并亲自替换js逻辑实现绕过。",
"category": "vue"
},
{
"id": "detectorExec",
"name": "激活Vue Devtools",
"description": "<div style=\"font-size: 0.9em;\">当开启本脚本后将激活Vue Devtools。Vue2.x版本需开启Vue.js devtools(v5),Vue3.x版本需开启Vue.js devtools,可自行去谷歌插件商店安装上述两个插件。注:1.两个插件不能同时开。2.当下方没有检测到Vue Router时并不能代表网站不是Vue框架,只能说明网站并没有使用Vue Router。</div>",
"category": "vue"
},
{
"id": "Hook_cookie",
"name": "document.cookie",
"description": "开启本脚本后默认将在控制台打印设置的cookie,如果需要打印特定cookie请在下方输入框中输入cookie名称,脚本将会捕获这些特定cookie名。",
"category": "hook",
"fixed_variate" : 0,
"has_Param" : 1,
"debugger" : 1,
"stack": 1
},
{
"id": "hook_xhr_setRequestHeader",
"name": "XMLHttpRequest.setRequestHeader",
"description": "开启本脚本后默认将在控制台打印设置的请求头,如果需要打印特定请求头请在下方输入框中输入请求头名称,脚本将会捕获这些特定请求头名。",
"category": "hook",
"fixed_variate" : 0,
"has_Param" : 1,
"debugger" : 1,
"stack": 1
},
{
"id": "hook_xhr_open",
"name": "XMLHttpRequest.open",
"description": "开启本脚本后默认将在控制台打印初始化xhr请求配置(url,method),如果需要捕获特定url请在下方输入框中输入url名称,脚本将会捕获这些特定url名称。",
"category": "hook",
"fixed_variate" : 0,
"has_Param" : 1,
"debugger" : 1,
"stack": 1
},
{
"id": "hook_localStorage_setItem",
"name": "localStorage.setItem",
"description": "开启本脚本后默认将在控制台打印设置的localStorage键值,如果需要捕获特定键请在下方输入框中输入键名,脚本将会捕获这些特定键名。",
"category": "hook",
"fixed_variate" : 0,
"has_Param" : 1,
"debugger" : 1,
"stack": 1
},
{
"id": "hook_localStorage_getItem",
"name": "localStorage.getItem",
"description": "开启本脚本后默认将在控制台打印站点读取的localStorage键名,如果需要捕获特定键名请在下方输入框中输入键名,脚本将会捕获这些特定键名。",
"category": "hook",
"fixed_variate" : 0,
"has_Param" : 1,
"debugger" : 1,
"stack": 1
},
{
"id": "hook_localStorage_removeItem",
"name": "localStorage.removeItem",
"description": "开启本脚本后默认将在控制台打印移除的localStorage键名,如果需要捕获特定键名请在下方输入框中输入键名,脚本将会捕获这些特定键名。",
"category": "hook",
"fixed_variate" : 0,
"has_Param" : 1,
"debugger" : 1,
"stack": 1
},
{
"id": "hook_localStorage_clear",
"name": "localStorage.clear",
"description": "开启本脚本后如果站点进行了清空localStorage动作,默认会在控制台打印消息。",
"category": "hook",
"fixed_variate" : 0,
"has_Param" : 0,
"debugger" : 1,
"stack": 1
},
{
"id": "hook_sessionStorage_setItem",
"name": "sessionStorage.setItem",
"description": "开启本脚本后默认将在控制台打印设置的sessionStorage键值,如果需要捕获特定键请在下方输入框中输入键名,脚本将会捕获这些特定键名。",
"category": "hook",
"fixed_variate" : 0,
"has_Param" : 1,
"debugger" : 1,
"stack": 1
},
{
"id": "hook_sessionStorage_getItem",
"name": "sessionStorage.getItem",
"description": "开启本脚本后默认将在控制台打印站点读取的sessionStorage键名,如果需要捕获特定键名请在下方输入框中输入键名,脚本将会捕获这些特定键名。",
"category": "hook",
"fixed_variate" : 0,
"has_Param" : 1,
"debugger" : 1,
"stack": 1
},
{
"id": "hook_sessionStorage_removeItem",
"name": "sessionStorage.removeItem",
"description": "开启本脚本后默认将在控制台打印移除的sessionStorage键名,如果需要捕获特定键名请在下方输入框中输入键名,脚本将会捕获这些特定键名。",
"category": "hook",
"fixed_variate" : 0,
"has_Param" : 1,
"debugger" : 1,
"stack": 1
},
{
"id": "hook_sessionStorage_clear",
"name": "sessionStorage.clear",
"description": "开启本脚本后如果站点进行了清空sessionStorage动作,默认会在控制台打印消息。",
"category": "hook",
"fixed_variate" : 0,
"has_Param" : 0,
"debugger" : 1,
"stack": 1
},
{
"id": "hook_fetch",
"name": "fetch",
"description": "开启本脚本后默认将在控制台打印fetch请求设置。",
"category": "hook",
"fixed_variate" : 0,
"has_Param" : 0,
"debugger" : 1,
"stack": 1
},
{
"id": "hook_json_parse",
"name": "JSON.parse",
"description": "开启本脚本后默认将在控制台打印传入的JSON,如果需要捕获特定JSON请在下方输入框中输入JSON,脚本将会捕获这些特定JSON字符串。",
"category": "hook",
"fixed_variate" : 0,
"has_Param" : 1,
"debugger" : 1,
"stack": 1
},
{
"id": "hook_json_stringify",
"name": "JSON.stringify",
"description": "开启本脚本后默认将在控制台打印传入JSON.stringify的值。",
"category": "hook",
"fixed_variate" : 0,
"has_Param" : 0,
"debugger" : 1,
"stack": 1
},
{
"id": "hook_Promise",
"name": "Promise",
"description": "将在控制台打印Promise的resolve参数,可快速定位异步回调位置。",
"category": "hook",
"fixed_variate" : 0,
"has_Param" : 0,
"debugger" : 1,
"stack": 1
},
{
"id": "hook_random",
"name": "Math.random",
"description": "固定Math.random返回值",
"category": "hook",
"fixed_variate" : 1,
"debugger" : 1,
"stack": 1,
"value": "0"
},
{
"id": "Hook_Date_now",
"name": "Date.now",
"description": "固定Date.now返回值",
"category": "hook",
"fixed_variate" : 1,
"debugger" : 1,
"stack": 1,
"value": "0"
}
]