硕士生
 
- 金币
- 3143
- 好评
- 2
- 信誉
- 100
|
发表于
2026-8-8 20:30:46
来自手机
|
显示全部楼层
来自 广东
六午 发表于 2026-8-8 18:57
https://m.guwendao.net/app/DefaultnojumpGwd.aspx
补丁方案:libapp.so(vaddr=文件偏移)
A. VIP 恒真 — User 类 4 函数
A1 User.isVIP @ 0xA5F0C4(起始 0xA5F0B0)
ADD X0, X22, #0x20 ; TRUE -> C0 82 00 91
B #0xA5F0F0 ; 跳自带epilogue -> 0A 00 00 14
旧字节 BC 01 00 94 E0 00 20 36 → 新字节 C0 82 00 91 0A 00 00 14
A2 User.isSVIP @ 0xA5F290(起始 0xA5F27C)
ADD X0, X22, #0x20 ; -> C0 82 00 91
B #0xA5F2BC ; -> 0A 00 00 14
旧字节 F3 00 00 94 E0 00 20 36 → 新字节 C0 82 00 91 0A 00 00 14
A3 User._isVIP @ 0xA5F7CC(起始 0xA5F7B4)
ADD X0, X22, #0x20 ; -> C0 82 00 91
B #0xA5F7D8 ; -> 02 00 00 14
新字节 C0 82 00 91 02 00 00 14
A4 User._isSVIP @ 0xA5F674(起始 0xA5F65C)
ADD X0, X22, #0x20 ; -> C0 82 00 91
B #0xA5F680 ; -> 02 00 00 14
新字节 C0 82 00 91 02 00 00 14
B. 登录放行 — LoginManager 2 方法
B1 isLogin→TRUE @ 0xA88948(起始 0xA88930)
ADD X0, X22, #0x20 ; -> C0 82 00 91
B #0xA88990 ; -> 12 00 00 14
新字节 C0 82 00 91 12 00 00 14
B2 isNotLogin→FALSE @ 0xA5F6F8(起始 0xA5F6E0)
ADD X0, X22, #0x30 ; FALSE -> C0 C2 00 91
B #0xA5F740 ; -> 12 00 00 14
新字节 C0 C2 00 91 12 00 00 14
C. 防止服务端强制登出 — LoginManager.verifyUserFailed(起始 0xA89108)
把内部两个副作用 bl(清用户 0xa5e390、拉登录页 0xa3307c)打成 NOP:
C1 @ 0xA8912C: NOP ; 旧 99 54 FF 97 -> 1F 20 03 D5
C2 @ 0xA89144: NOP ; 旧 CE A7 FB 97 -> 1F 20 03 D5
函数仍保持原返回结构(mov sp,fp; ldp; ret),堆栈帧不被破坏。 |
-
查看全部评分
总评分:好评 +1
金币 +1
|