WIPO全球商标检索接口破解流程分享

WIPO全球商标检索接口破解

背景

同事想要把WIPO的查询功能做到程序里,但是接口参数是加密过的,不知如何模拟封包。

过程

进搜索页,打开F12 我们搜索一下奔驰(benz),发现产生了一个POST请求https://www3.wipo.int/branddb/jsp/select.jsp并携带了一个名为qz的base64加密串,且response里包含了查询结果。

那可以确定刚发送的查询参数benz应该就在这个字符串里。

  1. 尝试直接解码base64加密串,没有得到明文,说明内容是单独加密后再转base64编码的
    image

  2. 全局搜索关键字qz定位到如下的脚本位置,发现this.getCurrentStateString("base64", e)复制到控制台执行一遍,发现产生的内容就是post请求携带的qz参数,说明参数是该处代码产生的。
    image

  3. 继续往下找getCurrentStateString方法 发现是jQueryUi里的方法 说明真正的加密源头不在这里,这里只是取了一个预存储的值,继续找qz关键字发现以下可疑的代码image
    这行代码使用LZString去解码qz,我们在控制台也尝试一下

  • (PS:至此我们反向去找LZString.encode加密相关代码也是可以的,但是那样要分析更多代码,不确定性更高,不如直接用decode得到封包内容更快速)
  1. 控制台执行LZString.decompressFromBase64()发现内容是一个json串,里面包含了我们前面搜索的关键字benz,但是json参数中有个关键字qi也是一串加密变量,经过反复尝试后发现该值可以写死不变动。
    image

  2. 最后只需要多尝试几次搜索并解码对应的qz参数就能知道页面的封包规则了,核心的加解密处理类LZString可以在网上找到python版本/Java版本/或者直接用代码调用js来做加解密也是可以的。

  3. 我在网上找到一份Java版的LZString,并以此解码封包尝试直接调用搜索接口,结果OK.
    image

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值