最新得物小程序sign签名加密,请求参数解密,响应数据解密逆向分析

 点击精选,出现https://app.dewu.com/api/v1/h5/index/fire/index
 这个请求
 直接搜索sign的话不容易定位

 直接搜newAdvForH5就一个,进去再搜sign,打上断点
 
 
可以看到t.params就是没有sign的请求参数,
 经过Object(a.default)该函数加密t.params得到sign

 进去之后发现Object(r.parseTokenDraft)该函数加密(t, e)得到sign
再进入之后就是P(i += e)得到sign
i = 'extMap{"unionId":"oWZ-ct1gzBAx0Ric8JjOW0cpCsJw"}isVisitorfalselastIdlimit21newAdvForH5trueplatformh5tabIdversion4.73.0'
e = '19bc545a393a25177083d4a748807cc0'
 
P()方法就是md5加密
 
关于搜索接口
 
 
 请求参数是密文,响应数据也是密文
 
 请求参数的明文还是原来的地方,没什么好说的
 
 
 
s = {"sign": "57997a705fab8b9e854d9b9a026c4a27","title": "女鞋","page": 0,"sortType": 0,"sortMode": 1,"limit": 20,"showHot": 1,"enhancedSearch": 0
}
u = 'GET'// 结果
{"c": "1,xdw4","d": "{\"data\":\"95216559e6bc057ae3ac487a3f1f49f5OVn5pfyiu0CFJoMyyI7Pu9GGqfXuE6c0wh3PGdNjhPNj27w7CGGrwEO2lb6m2rHYwJXg4s1Afq4bz1t2xdNtQTNeZCwhPunjhYGEAq7TUGBogMKc3cZ0RT7ftSMHrFwer8I9eT+L/e59pgbPeWCQDQNX2+M0n+h/w3SSAX0VDg==\"}"
}
 
由该函数生成data请求参数 o.default.Fun110(JSON.stringify(s), u, “wx”)
其他扣代码就好了
 
最终结果一致
 
响应数据解密

  var g = f.default.Fun99(e.data, v, _, "wx");// var g = f.default.Fun99(e.data, undefined, '1,1,0', "wx");return JSON.parse(g)
 
就是Fun99函数解密
最终可以得到数据
 
