反编译获取任何⼩程序源码(完)
⼀、前⾔
最近在学习⼩程序开发,半个⽉学习下来,很想实战⼀下踩踩坑,于是就仿写了⼀个阿⾥妈妈淘宝客⼩程序的前端实现,过程⼀⾔难尽,差不多两周时间过去了,发现⼩程序的坑远⽐想象的要多的多!!在实际练⼿中,完全是⿊盒的,看到⼈家上线的⼩程序的效果,纯靠推测,部分效果在绞尽脑汁后能做出⼤致的实现,但是有些细节,费劲全⼒都没能做出来。很想⼀窥源码,查看究竟,看看⼤⼚的前端⼤神们是如何规避了⼩程序的各种奇葩的坑。
于是就想到获取到⼩程序地源⽂件,然后再对其进⾏反编译还原为源代码,来作为学习参考。我百度了各种关于⼩程序地反编译教程,但是感觉都不太适合像我这样地初学⼩⽩,踩了挺多坑。在这⾥把我重新简化好的,快速地获取⼀个⼩程序源码的⽅式记录下来。
⼆、简单聊⼀下xxxxx.wxapkg
三、准备材料
四、详细步骤
使⽤安卓模拟器获取到.wxapkg⽂件代码转换
五、使⽤反编译脚本解包 wxapkg
六、结束语
⾄此我们就通过⾮常简单的⽅式获取到了⼀个想要的⼩程序源⽂件,并对齐进⾏了反编译还原以后想要再反编译其他的⼩程序,⾮常快速,只需要两步即可完成
使⽤模拟器到⼩程序.wxapkg⽂件
使⽤nodejs 反编译脚本将.wxapkg⽂件反编译
使⽤此⽅法,绝⼤部分的⼩程序都能正常反编译出来,但是也会有⼀些特殊的情况,具体可以查看qwerty472123⼤神的readme⽂件
.apk 之类的⽂件反编译⾮常困难,⽽⼩程序竟可以如此轻松随意地被获取到源码,根源在于⼩程序的开发团队并没有对⼩程序的执⾏⽂件进⾏有效的保护,也就是加密,所以我们才能使⽤别⼈写好的脚本直接进⾏反编译,其过程类似于解压。
实际上,⼩程序只是很简单的将图⽚、js和json⽂件压在⼀起,⽽压制的过程就是Wxml -> Html、 Wxml -> JS、Wxss -> Css,转换后⽂件⼆进制格式跟后缀名为wx⼆进制格式完全⼀致。
上线的源代码能如此简单的被获取到,不得不说⼩程序的源码安全存在很⼤的隐患,这⼀点很多开发
者应该也知道,所以发现有些⼩程序会将重要的js逻辑代码柔在⼀个js⽂件中,这样,即使被获取了源码,也不是很容易读懂,但是任然避免不了被窥视的问题。⼩程序作为⽣态内的新⽣⼒量,不仅被官⽅,也被很多开发者和内容创业者寄予厚望,处于对代码的安全性的考虑,这个漏洞迟早有⼀天会被 修复(封掉) 的。
所以这种这⾥介绍的获取⼩程序源码的⽅法,应该是不会太长久的。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。