IT学习站-137zw.com

more +资源更新Forums

more +随机图赏Gallery

价值5980元高端JAVA架构课程 精英培训计划视频教程 java架构价值5980元高端JAVA架构课程 精英培训计划视频教程 java架构
价值3600元的中文网第八期php cms 视频 完整版视频课程价值3600元的中文网第八期php cms 视频 完整版视频课程
10节课让你成为滚床单高手  强烈推荐 屌丝的福音10节课让你成为滚床单高手 强烈推荐 屌丝的福音
最新流出的传智博学谷黑马python5.0课程最新流出的传智博学谷黑马python5.0课程
价值19000元的小码哥大神班IOS五期不加密版本教程价值19000元的小码哥大神班IOS五期不加密版本教程
从网络基础概念到校园网整体规划组建系列视频教程(共40集)从网络基础概念到校园网整体规划组建系列视频教程(共40集)

利用微信电脑最新版 反编译微信小程序 无需root

利用微信电脑最新版 反编译微信小程序 无需root

[复制链接]
123456835 | 显示全部楼层 发表于: 2019-11-14 09:40:00
123456835 发表于: 2019-11-14 09:40:00 | 显示全部楼层 |阅读模式
查看: 52|回复: 0

你还没有注册,无法下载本站所有资源,请立即注册!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
一、前言

  大家都知道编写一个微信小程序是非常漫长的,但是由于现阶段微信小程序存在反编译的可能,于是我去github上找到一个反编译工具(跳转)这个工具其实很早就出来了,但是这个工具需要提取微信小程序的wxapkg文件,就是微信小程序编译后的文件。最近发现电脑版微信可以打开微信小程序了,于是我去找了微信打开小程序后生成的wxapkg文件,没想到轻而易举的就拿到了wxapkg文件。下面为简单介绍下教程。
二、简单介绍下wxapkg

微信小程序一般是存在哪的?——毫无疑问当然是在云端。
微信如何运行小程序?——首先需要在云端下载xxx.wxapkg文件到本地,再利用本地的一套机制运行起来。
那么如何才能在手机里找到小程序的源文件包呢?

  • 安卓具体目录位置直接给出:
  • /data/data/com.tencent.mm/MicroMsg/{{user哈希值}}/appbrand/pkg/
  • 在这个目录下,会发现一些 xxxxxxx.wxapkg 类型的文件,这些就是微信小程序的包
  • 此目录是需要用户root后从根目录找出。
     电脑运行小程序后具体目录:
     C:\Users\{{电脑用户名}}\Documents\WeChat Files\Applet\{{小程序AppID}}\{{随机产生的数字}}\__APP__.wxapkg
     注:微信电脑版需是可运行小程序的版本。
微信小程序的格式就是:xxx.wxapkg

  • xxx.wxapkg是一个二进制文件,有着其自己的一套结构。
  • 关于.wxapkg的详细内容可以参考lrdcq大神的博文:微信小程序源码阅读笔记

三、环境搭建

  1. node.js运行环境 下载地址  如果没有安装nodejs,请先安装一下
  2. 反编译的脚本。 下载地址这里提供一个Github上qwerty472123大神写的node.js版本的
  3. 安卓模拟器(也可用真机需root)获取wxapkg请看4-5步, 新pc版微信(推荐此步骤),请看6步。
  4. 安卓模拟器(要求自带root权限)下载地址自行百度,可以使用的是夜神模拟器,雷电等模拟器(自带root),用来获取小程序源文件
  5. RE管理器、MT管理器或者x-plore 赋予root权限下载地址自行百度 到时候要拖到模拟器中的,进入"/data/data/com.tencent.mm/MicroMsg/{{user哈希值}}/appbrand/pkg/"目录根据小程序第一次打开时间找到对应wxapkg
  6. 我用的是微信2.7内测版,手机分享小程序给电脑版打开小程序,找到"C:\Users\{{电脑用户名}}\Documents\WeChat Files\Applet\{{小程序AppID}}\{{随机产生的数字}}\__APP__.wxapkg" 一般小程序和分包都会在。

四、详细过程(以pc版微信为例)

  分享给电脑版微信小程序
  
利用微信电脑最新版 反编译微信小程序 无需root  技术博客 1725179-20190907194156356-1219208216


  点击打开
  
利用微信电脑最新版 反编译微信小程序 无需root  技术博客 1725179-20190907194222563-725286316


  导出wxapkg
  
利用微信电脑最新版 反编译微信小程序 无需root  技术博客 1725179-20190907194331363-623904017


  获取到wxapkg后
  将其拷贝到某一路径下,在此路径下按住Shift键,同时鼠标点击右键选择在此处打开Powershell窗口如图
利用微信电脑最新版 反编译微信小程序 无需root  技术博客 1725179-20190907193642596-442968394


  在node命令窗口中依次安装如下依赖:
    npm install esprima
    npm install css-tree
    npm install cssbeautify
    npm install vm2
    npm install uglify-es
    npm install js-beautify
    npm install escodegen

  安装完成之后会出现node_modules文件夹这是运行wxapkg反编译脚本的必备环境
  
利用微信电脑最新版 反编译微信小程序 无需root  技术博客 1725179-20190907194902776-1557819177

  下面输入命令node wuWxapkg.js 如下
    
利用微信电脑最新版 反编译微信小程序 无需root  技术博客 1725179-20190907195228141-1314309085

  运行后,如果不出现错误,基本就可以在微信开发者工具打开
  
利用微信电脑最新版 反编译微信小程序 无需root  技术博客 1725179-20190907195247352-346416510



  反编译脚本就能一步将.wxapkg 文件还原为微信开发者工具能够运行的源文件,目录地址和你反编译的文件地址是一样的 然后在微信开发者工具新增导入项目即可打开
  运行成功,源码获取完成
  
利用微信电脑最新版 反编译微信小程序 无需root  技术博客 1725179-20190907195411763-1202674819

五、结束语

  现阶段的wxapkg,即微信编译后的可执行文件,在我个人眼里,加密力度是不够的,虽然在对我们学生党来说是学习的交流的好手段,但是在社会上运作,还是存在着巨大的安全隐患,随着科技的发展,相信不久,这一方法将会失效,所以趁现在还有学习的机会,可以去搞。
  上线的源代码能如此简单的被获取到,不得不说小程序的源码安全存在很大的隐患,这一点很多开发者应该也知道,所以发现有些小程序会将重要的js逻辑代码柔在一个js文件中,这样,即使被获取了源码,也不是很容易读懂,但是任然避免不了被窥视的问题。
  实际上,小程序只是很简单的将图片、js和json文件压在一起,而压制的过程就是Wxml -> Html、 Wxml -> JS、Wxss -> Css,转换后文件二进制格式跟后缀名为wx二进制格式完全一致。
 

 
  注明:此文章为Rakers原创文章,仅供学习交流,切勿用于违法行为

来源:http://www.137zw.com
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
137zw.com IT学习站致力于免费提供精品的java技术教程和python技术教程,CCNA书籍/资料/CCNP书籍/资料教程/CCIE书籍/资料/H3C学习/认证/一级建造师考试/微软学习/认证/包括基础教程和高级实战教程,同时也提供分享网站源码下载和互联网相关一系列的技术教程,我们想做的就是让知识分享更有价值!(IT学习站官方唯一域名地址:www.137zw.com 请谨防假冒网站!)本站所有资源全部收集于互联网或网友自行分享,分享目的仅供大家学习与参考,如无意中侵犯您的合法权益,请联系本站管理员进行删除处理!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

浙ICP备19022368号-1|Archiver|手机版|IT学习站-137zw.com

GMT+8, 2020-7-12 01:26 , Processed in 0.252239 second(s), 33 queries .

快速回复 返回顶部 返回列表