如何逆向app加密算法数据(关于逆向破解tb某个请求的加密算法)
前言
由于工作需要 ,要抓取tb上某个接口的文案资源 ,用来分析借鉴 。
本来想着 ,无非就是验证一下当前用户信息之类的 ,但在研究过后 ,发现并没那么简单 。
1 ,查看请求相关参数
比如下图 ,发现请求中携带的参数不少 ,然后其中随时变化的就有t 、sign 、data ,
很明显 ,这就是tb判断请求是否合法的参数 ,其中但凡修改一点 ,就会提示非法请求 。
2,开始查找处理加密的代码
既然大概猜到这些是加密参数 ,那就开始在js文件中查找sign,果不其然 ,找到这么一段,
很明显可以看出 ,sign参数就是由四个已有参数组成的字符串放入h()加密函数中生成的 ,
在断点查找后确认 ,d.token是存在 tb cookies中的某段标识 ,i 是实时生成的字符戳 ,g 就不必多说 ,
最后data中的一大段参数就得复制原有格式 ,再动态修改某些变量 ,比如分类id等等 。
3 ,尝试生成加密参数模拟请求
经过上面的研究 ,基本理清了这个加密参数的逻辑 ,至于加密函数h() ,看不懂也没所谓,直接复制后拿来用 ,
根据原有代码照着找齐四个参数 ,然后送入加密函数,就能得到返回的sign参数 ,
拿齐参数后 ,就能开始模拟请求 ,拼凑url啦 ,除了上面看得见的参数 ,还有当前tb用户的cokies也要一并随着请求发出 ,
不然就会验证为非法请求哦 ,这里我用js实现了大概的逻辑代码 ,
另外还用上了获取token啊 、生成某段字符 、加密的函数 ,太长了我就不贴了 。
总结
其实很多时候在遇到这种问题时 ,缺的只是一个思路 ,当思路打开后会发现 ,原来这加密参数也没多难啊?
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!