某查询企业信息平台的接口破解记录

这次破解的背景是:一个朋友但愿按期同步某个公司的工商信息,评估和测试了下。相对比较可能的就是启*宝的接口了。经过一天的努力,终于有了点底了。特作记录,以备之后回顾!算法

1.接口分析

image.png

c0951f38fbe39d08a765: ea9e74813f6211841f5dccee4398f32ee78bf4a82d23ca00c36e4662a7f275dad91ea7fb13d521567ab0aa3e821225761e349684782d40c3db38ba4a893d931e
这段没法解释,其余都可以理解【都是老司机,不解释了】

尝试不传这个参数

image.png

该参数是接口校验值,因此要想爬接口,就必须破解算法

2.如何破解算法

a.key值和value值的特色

key值20位,value值128位。
在js里根据关键字,搜索。
image.pngchrome

b. 请求参数【t,e】如何生成

image.png

利用chrome的断点调试,终于找到了

image.png

c.新的问题来了,参数【n】的算法是什么?

经过断点的方式找到了实现方法。【由于单步调试太多,没法复现,因此没法截图了】
主要原理就是以请求的url为基础,分割字符串,根据单字母获取字母0-65545的值,而后取余20,根据取余值,从设定的数组中,根据key获取对应的值而后拼接获得n。

d.n算法只是第一步,以后根据n生成请求的value值。算法就是hmac512

image.png
image.png

跟接口请求同样,能够舒口气,工做算是完成一半了。接下来,就是请求的key的生成算法了。

f. 经过调试,发现key的算法和value值的算法是类似的。都是hmac512的加密方式,只是请求值不同,而后根据计算的加密值,从10开始,截取20。

image.png

3. 本地实现

image.png

4. 小结

此次的破解启*宝,是一次可贵的经验积累。从全网google其余的破解方法,以及本身如何一步一步调试,最终破解出生成算法。有辛苦和快要放弃的念头,也有快乐和成就感。
不过为了保证不影响他人的利益,因此文章中的一些关键技术都未展现。这只是一次记录。数组

固然后续应该还有,一整套的实现方案。毕竟到这一步,不弄点东西出来,是没法知足本身的好奇心的。测试

相关文章
相关标签/搜索