问题:(1)数据列表接口token参数验证(2)authKey参数加密生成
1、页面中请求接口,观察请求头可发现,校验参数token为加密的字符串,根据该字符串并不能直观得到所用的加密方式是什么。
2、尝试全局搜索“token”关键字,发现关键信息——红框部分“g.headers.token = h()”,方法h() 即为蓝框部分,在此处断点调用追踪
3、追踪信息如下,先跟进G.getToken()——》指向位置为蓝框部分——》继续跟进B.auth()
4、从此处js可知token参数是请求 “auth”结尾的 接口的返回数据——》通过观察此时的作用域,可看到接口的返回值,根据js代码可知bussiness即为校验参数token的值
5、对上面的接口进行抓包,可得到参数。
6、观察5中接口的请求参数,发现还有个加密参数authKey,根据密文“07784673d080a0d0478b3351222b8532”,可推测加密方式为MD5
7、全局搜索 关键字,即可定位到该参数生成的地方,可知为MD5加密——》在此处打断点观察参数 g、A、I
8、观察可知 g、A固定为"test",I为毫秒级时间戳
9、代码还原各个参数 获取auth_key
10、还原各个参数即可获取最终数据