微信H5点赞破解记录

记录一次微信公众号拉票/点赞破解记录:

image.png
  • 看到页面第一反应是使用抓包工具找到点赞请求,我使用的是charles,很容易找到了请求:
image.png
  • 对方接口是否有做过登录验证?没做的话就可以循环调接口来“点赞”。尝试使用postman直接请求,发现提示需要登录:
image.png
  • 从抓包那个截图可以看出,点赞请求需要传一个token。对方接口是否有校验过token正确性呢?尝试修改token、使用常用方式解码token,无果。

  • 开始尝试从前端代码里找token源头,通过抓包,找到了js的地址,发现这里是经过压缩的,这里需要注意最后一行,如果map文件没删,也许可以通过map文件反编译出js源码?

image.png
  • 尝试反编译map文件,这里使用reverse-sourcemap,前端使用的vue开发。将各个map文件反编译后,基本得到了整个项目的目录结构和源码:
image.png
  • 继续寻找token来源,token是通过user/wx_login接口获取
image.png
image.png
  • openidunionid是什么,这里不多说明了,可以自行百度。现在尝试调用user/wx_login接口,看看接口有没有验证openidunionid的正确性
image.png
  • 发现果然没有校验,到这里已经成功了!=。=

  • 所以刷赞的步骤如下:
    1、先拿不同的openidunionid请求user/wx_login接口获取token
    2、用token请求index/praise?new_id=18513接口点赞

Over,总结一下平时开发中需要注意的地方:
1、前端线上发布时,不可使用source-map
2、后端接口需要校验各种token/id真实性,防止伪造

ps:最后并没有刷赞,只是出于好奇,尝试找一下对方网站是否有漏洞。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。