文章目录
-
- 声明
- 前言
- 一、目标站点
- 二、第一轮拆链:把三个签名和一个 `471` 分开看
- 三、为什么我第一阶段先选择“浏览器提取”,而不是直接纯算
- 四、从“能调用”到“值得白盒”:我怎么判断继续往里挖
- 五、真正的突破口:先承认 `_fmOpt.sign()` 只是包装器
- 六、把 `fm.js` 当成“WASM 容器”看,问题就顺了
- 七、最关键的白盒结论:真正参与签名的是环境串,而不是你想象中的整个请求体
- 八、把“环境采集”单独建模,是这次代码落地最值的一步
- 九、真实环境采集链为什么一定要补 `webgl`、`navigator_keys`、`screen_keys`
- 十、Python 里复用 WASM 时,我刻意没有做“过度实现”
- 十一、`td-session-key` 和 `td-session-sign` 其实是两条相关但独立的输出链
- 十二、从“白盒能跑”到“接口可用”,中间还差一个 `curl_cffi`
- 十三、td-session-sign算法脚本实现
- 十四、总结这次逆向最重要的五个判断
声明
本文章中所有内容仅供学习交流,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请私信我立即删除!
前言
话接上回: 从搜索接口到 Tongdun 黑盒:一次真实站点签名逆向的完整过程(td-session-sign、x-sign等签名)
上一篇为了快速追出算法最后用的自动化解决的td-session-sign (其实要不要都行,目前还没有强校验)
这次只是纯研究算法,分析一下这个算法生成逻辑。
这次把 td-session-sign 做到纯 Python,可贵的地方不只是“最后跑通了”,而是中间有好几次方向判断:
- 哪一层是业务签名,哪一层是风控签名
- 哪一层该先工程化复用,哪一层值得继续白盒
471到底是签名问题,还是客户端指纹问题td-session-sign到底有没有必要硬把整个 SDK 抠成白盒- 真正进入签名核心的输入,和一开始以为的是否一致
如果只看最终结果,很简单:
s:纯算法还原- <
转载自CSDN-专业IT技术社区
原文链接:https://blog.csdn.net/weixin_44327634/article/details/160218934



