记得2018年,公司在做小程序的三方平台时,接触到小程序的反编译。根据网上博客,一步一步操作,bingo,搞定,so easy!
虽然很开心获取到了小程序反编译的源码,但是担心也逐渐浮上了心头。我们自己的小程序被别人反编译了怎么办?而且后来也反编译了自己的小程序,反编译获取的代码竟然与源码基本相同。本人大学修的信息安全专业,对于安全方面比一般开发者更敏感。然后,就开始了搜集查找有什么防护手段。
当时找了几天,得出的结论就是:微信小程序安全性做的很差,除了基本的代码混淆,来增加反编译后代码阅读难度,别无它法,只能期待微信自己对这个bug打补丁修复了。我们自己的小程序,即使别人反编译,也就是把UI给扒了,有价值的逻辑都没有写在小程序里,暂时可以不用太在意这个事情。后来又忙于其他业务,就没再关注这个事情了。
最近,又负责微信小程序相关的业务了。有一个业务逻辑是这样的:小程序端需要上报用户是否观看了广告,以及根据用户观看广告的次数,对用户给予一定的奖励。如果保证不了上报信息的真实性,就尴尬了。先去查查,小程序还能不能被抓包反编译。艹,快三年了,竟然还没堵住这个漏洞。只是使用了法律武器,破解工具网上不那么好找了。
小程序安全现状:仍可被抓包反编译(分包加载照样可以被反编译)。对于想抓包后,重新编译盗版上线的,无能为力,仍然停留在仅仅代码混淆层面(代码混淆,可以使用微信开发者工具的混淆勾选项,也可以使用其他的小程序开发框架来做,比如uniapp)。小程序开发者工具的本地配置里&#