docs(账本): 记录 XTEA 密钥形态的关键发现(ASCII 打包串 / 闭包捕获 / 轮加盐随构建变)
做了什么: - PROGRESS.md §一 已知表新增 4 条: 10. XTEA 密钥字 = 4 个「ASCII 打包的 4 字符串」(大端拼 32bit) 11. 密钥既不是立即数也不是字面字符串(明文/大端字节/base64 都搜不到) 12. 密钥数组经闭包捕获传入: @09463 CREATE_CLOSURE caps=[r7=r8], XTEA 轮以 reg7[(sum>>>11)&3] 取用 13. 轮加盐随构建变化(本构建 723726/855311, 台账另一构建 2829068/328986), 但都是可见立即数 - PROGRESS.md §五 下一步新增第 0 条: 静态提取密钥(逐闭包符号执行) 为什么: - 这是"去掉最后一个 Node 依赖"的关键定位, 避免重复摸索 怎么验证: - 密钥字节解剖: 1818510928 -> 0x6c644650 "ldFP" 等 (core_js/tdc_sample.js) - 反汇编: .venv/bin/python tools/tdc_disasm.py tcaptcha/core_js/tdc_sample.js
This commit is contained in:
@@ -39,6 +39,10 @@
|
||||
| 7 | tdc.js 至少两代明文布局,**新版字段序随构建变化** | 旧版首段 `{"cd":[[],...`;雨云实时 `{"cd":[1,[],...`;1ms 实时 `{"cd":[1791712995,0,...` | 确证 |
|
||||
| 8 | 宽松 aid 下服务端**不校验** `collect` 与 `eks` 的同源性 | 雨云 aid + 硬编码旧密钥 + 旧版明文 → `errorCode=0` + 真实 ticket | 确证(仅宽松 aid,勿外推) |
|
||||
| 9 | 「Node 跑密钥 + Python 全算法」端到端可用 | 雨云 aid 纯 Python 出包 → `errorCode=0` | 确证 |
|
||||
| 10 | **XTEA 密钥字是 4 个「ASCII 打包的 4 字符串」**(每字 = 4 个可打印字符按大端拼成 32bit)| `core_js/tdc_sample.js` 的密钥 `[1818510928,1381395306,1245924197,1768384072]` 大端解码 = `ldFP`/`RVkj`/`JCKe`/`igfH`;root 样本 = `VWTQ`/`nMJk`/`gSRU`/`QVZR` | 确证 |
|
||||
| 11 | 密钥字**既不是立即数、也不是字面字符串**(无论明文、大端字节序列、base64 都不在 tdc.js/字节码里)| 立即数 1.3e9~1.9e9 区间为空;`ldFPRVkjJCKeigfH` 及其 base64 均搜不到 | 确证 |
|
||||
| 12 | 密钥数组在 XTEA 轮里通过**寄存器间接寻址**读取,且经闭包捕获传入 | 反汇编 `reg7[(sum>>>11)&3]`;`@09463 CREATE_CLOSURE target=@9109 caps=[r7=r8]` | 确证 |
|
||||
| 13 | 轮加盐**每次构建都不同**(但都是可见立即数)| 本构建 = `723726`(j==2) / `855311`(j==3);台账另一构建 = `2829068` / `328986` | 确证 |
|
||||
|
||||
---
|
||||
|
||||
@@ -87,8 +91,12 @@ TencentCaptchaClient(telemetry_mode="python_keyed") # 默认
|
||||
|
||||
## 五、下一步(可被下一轮直接执行)
|
||||
|
||||
0. **静态提取 XTEA 密钥(去掉最后一个 Node 依赖)**:密钥字是 ASCII 打包串、且不是字面量,
|
||||
需对**正确反汇编**(`tools/tdc_disasm.py`)做一个小的**逐闭包符号执行/数据流**:
|
||||
从 `CREATE_CLOSURE caps=[r7=r8]` 反查父闭包 r8 的赋值表达式并常量折叠。
|
||||
寄存器是「每闭包一份、经 `PUSH_IMM_ARRAY <idx>` 引用间接访问」,所以需要真正的数据流而非模式匹配。
|
||||
1. **拿下 1ms 的 12**:做账本 §7.5 的**单变量实验** ——
|
||||
(a) 给 captcha 域带上成功样本里的 `uin/skey/qcmainCSRFToken/intl` cookie;
|
||||
(a) 给 captcha 域带上成功样本里的 `uin/skey/qcmainCSRFToken/intl` cookie(已做,H3 已排除);
|
||||
(b) 登录态真页面触发 vs 未登录触发。二选一即可闭合。
|
||||
2. **补齐新版明文字段语义**:对照 10+ 份实时模板做差分。
|
||||
3. **实现 2408 图标点选**:按 1ms 图标类别重训 `yolo_detector` + `icon_classifier`。
|
||||
|
||||
Reference in New Issue
Block a user