瑞数5逆向
From
- 人均瑞数系列,瑞数 4 代 JS 逆向分析-腾讯云开发者社区-腾讯云
- 瑞数初体验–瑞数4补环境 - 流星Studio - 博客园
- pysunday/rs-reverse: 瑞数vmp纯算法逆向,补环境框架sdenv的灵感来源
入行采集这么久了,瑞数还过不了实在说不过去,这次就来研究一下,顺便巩固一下web逆向的知识
瑞数4代
目标网页:http://www.fangdi.com.cn/trade/trade_ranking.html
目标接口:http://www.fangdi.com.cn/service/trade/getFirstLastMonthRanking.action
网站分析
看上去有4个参数,只要分析 MmEwMD
和 FSSBBIl1UgzbN7N80T
即可
- MmEwMD,url参数,即时生成的,每次都不一样
- FSSBBIl1UgzbN7N80T,cookie值,由js文件生成一次即可
FSSBBIl1UgzbN7N80T
直接用fiddler hook cookie,使用的时候有个注意点,先打开网页调试,再访问网页
追栈追到 VM虚拟机代码 的加载入口,可以看到这里是 IIFE 代码(即闭包与立即执行函数表达式
),这里有个关键函数:
ret = _$cx.call(_$xB, _$l0)
,可以说是四代的标志了
来定位一下vm代码的来源,其实就是第一次访问网页返回的内容,vm代码的生成逻辑,大概就是:
自执行代码将 dfe1675.js
中的乱码还原成 vm代码,而 meta content里面的内容在vm里面会调用到
这里勾选了 Script First Statement,表示断住每段js的第一行
这里有三个参数是变化的,还有一个是外链,为了方便调试,保存两份文件到本地,然后用fiddler做映射
html 文件记得勾选 Match only once
把JS文件和自执行代码,扣下来保存成另一份js文件,直接运行,轻度补环境和输出键值:
fd做好文件替换,对比浏览器的结果(这里和浏览器的不一致,就先不展示了)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Chen's Blog!
评论