
文章目录声明0. 前言1. 先从现场下手:网络面到底长什么样2. 协议入口定位:别追业务页面,先追统一封装器3. req到底怎么生成:公式已经可以写死3.1 transactionId 生成公式3.2 明文业务包并不是页面原始参数3.3 IV 也已经不是谜语4. res怎么解:其实和 req 是同一把钥匙5. 第一轮本地落地:先把前端加解密在本地复活5.1 先做一层本地 helper5.2 验证结果:`req` 回放可逐字节对齐6. `refer__1036`:这个参数确实可疑,但别把它当唯一真神6.1 它是什么6.2 这次已经确认了什么6.3 这次还没有确认什么7. shoppingv2 卡住已经不是 AES 的锅7.1 证据链已经闭环7.2 我连真实浏览器值都原样重放了7.3 同一套协议对首页接口是成功的8. 既然协议层没锅,那就去看 cookie:`ssxmod_itna` / `ssxmod_itna2`9. 第一步拆 cookie:先别猜算法,先抓现行9.1 直接拦 `document.cookie`10. 第二步拆 cookie:先确认它不是普通 base6411. 第三步拆 cookie:先把编码器单独复现12. `ssxmod_itna` 原始拼串:环境全家桶12.1 `A8` 是动态项,别把它当常量13. `ssxmod_itna2` 原始拼串:行为快照版14. `dM / dK / dh / dL / A7`:这套东西到底都在采什么14.1 `dM`:浏览器体检表14.2 `dK`:自动化 / 运行环境补刀组14.3 `dh`:宿主结构补充项14.4 `dL`:最阴的一组异步 probe14.5 `A7()`:用户行为速写15. `GE(dl)` 这个坑,值得单独点名批评16.这次最容易踩的几个坑16.1 一看到 405 就回头怀疑 AES16.2 看到 `refer__1036` 就把它当成宇宙真理16.3 一看到 `ssxmod_itna` 就试图一口气复刻整套风控16.4 把“能生成密文”误认为“能通过风控”17. 最值钱的方法论是什么17.1 先抓现场,再看源码17.2 先找统一协议封装器17.3 把问题分层17.4 编码器和原料分开打17.5 最终一定要落脚本18. 这次关于 `refer__1036` 的最诚实结论19. 一句话总结整件事声明本文章中所有内容仅供学习交流,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请私信我立即删除!日期:2026-05-140. 前言这次逆向一开始的目标,其实非常朴素:把东航 H5 的请求体req怎么生成搞明白把响应里的res怎么解密搞明白把 URL 上那个看起来就很可疑的refer__1036盯住如果接口还不通,再继续拆风控 cookie:ssxmod_itna/ssxmod_itna2最后尽量用纯 Python 落地,让requests能自己把流程走完说得文明一点,这叫“协议分析 + 风控逆向”。说得不文明一点,这叫:前面先拆保险箱,后面再去拆门口保安的对讲机。这篇文章不是单讲 AES,也不是单讲 cookie,而是把这两条线完整串起来,讲清楚我是怎么一步步从“这个站怎么 405 了”走到“哦,原来它有两层门禁”的。1. 先从现场下手:网络面到底长什么样逆向第一原则不是“