只要获取到小程序的appid和版本号,即可通过构造URL直接下载该小程序的源码wxapkg文件
使用安卓模拟器安装微信,打开对应的小程序
举个栗子:
玩转故宫
大部分字段是没有被加密的,可以直接看到文件的路径
wxml 文件拥有不同于 xml 和 html 文件的字符转义规则;
js 文件被压缩后会丢失原始变量,wxss 文件压缩后的注释也会丢失;
一些被引用 wxss 文件本身的源文件丢失,无法恢复原始目录;
有些项目开启了es6转es5选项;
wml 中一些无法找到相对应 的正向语句的内容无法还原;
json 中components项丢失,仅会标注被其他包引用的自定义组件。
1.使用Uglify等工具打包
2.使用mpvue、wepy等小程序框架
最主要:还是要靠微信给力
1.精简(minify):ESLint , UglifyJs,YUI compressor ...
2.混淆(obfuscation):编码混淆、标识符混淆、控制逻辑混淆等
3.加密(encryption):base64、复杂化表达式、混合加密
4.编译(compile) : 字节码标准webAssembly
5.防止被调试 : 监控是否打开了控制台
6.前后端协作 : 不要在前端放敏感数据
GitHub : wxappUnpacker
GitHub :wechat-app-unpack