本文章中所有内容仅供学习交流使用,不用于其他任何目的,不提供完整代码,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!
本文章未经许可禁止转载,禁止任何修改后二次传播,擅自使用本文讲解的技术而导致的任何意外,作者均不负责,若有侵权,请联系作者立即删除!
————————————————
开始研究这个请求之前需要先看一下 (一)的简易流程,请求过程需要三个加密参数acToken、fp、cb,其中cb与fp相对简单,找到入口跟着堆栈一步一步即可完成,actoken用到了两个加密参数,可以暂时写固定值,等流程完全走通后在反过来研究一下,话不多说,先从简单的开始找起吧!
![](https://img-blog.csdnimg.cn/img_convert/5175d751814b80d146a487c3a7b3699d.png)
在这里在提醒一下朋友们,这三个加密acToken、fp、cb的位置很接近可以跟着堆栈自己找到入口也可以使用搜索大法来进行操作,我这个是稍微还原了一下名称,不影响逆向
![](https://img-blog.csdnimg.cn/img_convert/36ef2c52c5d59e30c366af04c698b510.png)
1. cb参数跟着入口缺什么补什么就可以拿到了,也可以补环境拿到。
2. fp参数=d,d=s['fingerprint']
![](https://img-blog.csdnimg.cn/img_convert/18fbe08d6e774277d1e27c5fa9b94644.png)
所以我们直接用fingerprint来全局搜索,找到赋值的地方
![](https://img-blog.csdnimg.cn/img_convert/d405192a42c6751c196feefab9e133dd.png)
直接使用方法hook一下
![](https://img-blog.csdnimg.cn/img_convert/154bf047b98820ca7a03abfef74a19dd.png)
hook以后直接找上一个堆栈 ,Y = Y + s[57] + m ,m是一个时间戳检测,跟cb一样缺什么补什么,这个参数也就可以完成.
![](https://img-blog.csdnimg.cn/img_convert/a6563869d116e210858f60a0021fa4c1.png)
3. acToken继续找自己的详细入口,跟堆栈
![](https://img-blog.csdnimg.cn/img_convert/2103f6cdea3677cbb20aa555339de82d.png)
一直到h()函数的时候,需要注意了,就是这里
![](https://img-blog.csdnimg.cn/img_convert/4bcf0a94f63f4dfdaa63b582ea4816db.png)
![](https://img-blog.csdnimg.cn/img_convert/244ae12f3b19bb1747aa837f643b98df.png)