评论

微信小程序代码如何加固反编译及后台接口防止别人乱调用

微信小程序代码如何加固反编译及后台接口防止别人乱调用

最近开发了一个小程序前端开发前端和后台花了1个多月时间开发,结果被人轻松的把微信小程序前端代码破解出来。而且完整一个字不差截图给我看了。

小程序是前后端都分离的,如果后端不作验证,别人把你的小程序前端扒了接口也暴露了,随便可以复制你的前端去换成自己appid上线后调你的接口。这显然是不安全的。

在想为什么微信官方不限制指定appid才能调用指定域名接口。这样接口才是安全的。

最后找了一圈,微信开发者工具里只能对前端代码进行混淆加固,只能做到这步,让人破解出来后 看不懂逻辑,但还是一样能破解出来。只能做到基础的保护作用。

微信小程序演示:

目前按官方想方法:

微信代码加固方法:

打开微信开发者工具,在菜单栏选择"工具-插件-编辑器扩展"或"设置-扩展设置-编辑器扩展",找到 “代码加固” 点击"获取"进行安装。安装成功后,即可使用该插件功能。右键js文件加固。

目前此方法只能是对js加固混淆,wxml 样式等没法加密,人家要偷还是一样能随便反编译出来。

请教大佬们微信小程序如何做好加密?微信官方有没有指定小程序访问接口?后端接口如何做安全防护,不给别人随便调用?否则别人知道你的api地址就可以随便用了

最后一次编辑于  05-29  
点赞 0
收藏
评论

3 个评论

  • 朱兆恩(易做图)
    朱兆恩(易做图)
    05-29

    前端加密只是相对的。

    后端可以根据小程序appid和秘钥判断是否是自己的小程序,不是自己接入的就显示错误提示

    05-29
    赞同
    回复
  • 一闪一闪亮晶晶
    一闪一闪亮晶晶
    05-29

    前端没有秘密可言,后端接口你要做好验证,登录拿到openid和session_key,自己生成session_id或者token,然后设置个几分钟或者半小时过期,如果过期让前端又重新登录,每个接口都去验证session_id或者token,有验证别人的小程序还怎么能随便调用,他又没有你的密钥

    05-29
    赞同
    回复 4
    • 明天
      明天
      05-29
      谢谢,这个是需要每个用户登陆,但小程序都是显示数据功能,没做登陆功能,也没有必要做登陆,还有别的方法吗?
      05-29
      回复
    • 哄哄
      哄哄
      05-29回复明天
      openid获取是无感的,我听你意思,你这都没获取吗?????
      05-29
      回复
    • 一闪一闪亮晶晶
      一闪一闪亮晶晶
      05-29回复明天
      你可以看下小程序登录流程https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html
      05-29
      回复
    • 一闪一闪亮晶晶
      一闪一闪亮晶晶
      05-29回复明天
      如果只是显示数据功能,不做登录验证这种,那别人肯定能随便调用,就算不在小程序中调用,在其它地方可以调用你的接口,不想让别人随便调用,就做验证
      05-29
      回复
  • 哄哄
    哄哄
    05-29

    识别ip

    正常来说,应该是用户获取到openid,然后你存个token在用户本地,然后token过期再更新

    设置额度,某个ip在短时间内访问过多自动拉黑,还有某个token、openid 访问频率高也拉黑

    还有重点关注别人喜欢爬的接口,可以设置别的加密,反正花样特别多

    05-29
    赞同
    回复 1
    • 明天
      明天
      05-29
      不能用ip吧,都是客户手机IP,只是别人反编译前端改成他的appid但接口还是用我的。
      05-29
      回复
登录 后发表内容