实用的微信小程序逆向教程!

洞悉安全,风洞网,认准官方网站!
风洞网


简单复现一下小程序的逆向过程。

首发声明

本文首发于风洞网,跳到原文地址。

准备工具

一、pc端复现

  1. 微信PC版本—>https://pc.weixin.qq.com/
  2. 小程序解密工具—>https://share.weiyun.com/uMqNGOXv
  3. nodejs环境—>https://nodejs.org/zh-cn/download/
  4. 小程序逆向工具—>https://github.com/xuedingmiaojun/wxappUnpacker

二、移动端复现

  1. 安卓环境(安卓系统手机或安卓模拟器)—>https://www.genymotion.com/download/%5D
  2. 安卓环境安装微信
  3. 安卓环境安装RE管理器(授权root)
  4. 安装nodejs环境
  5. 小程序逆向工具—>https://github.com/xuedingmiaojun/wxappUnpacker

具体思路

拿到后缀为wxapkg的小程序代码包,通过逆向工具反编译为小程序代码

复现过程

一、pc端逆向复现

1、首先打开PC微信后进入想要逆向的小程序,接着打开此目录Documents\WeChat Files\Applet\小程序id\XX\__APP__.wxapkg__APP__.wxapkg就是我们要找的加密包

实用的微信小程序逆向教程!_第1张图片

2、代码包解密,PC端小程序的代码包是经过加密的,我们需要对其进行解密之后就可以拿到与移动端一样的代码包了。解压下载好的小程序解密工具,运行UnpackMiniApp.exe选择加密小程序包

实用的微信小程序逆向教程!_第2张图片

然后前往工具所在目录/wxpack 拿到小程序解密后的代码包。

3、反编译小程序,打开下载好的wxappUnpacker逆向工具,打开目录下的README.md按照说明安装依赖,执行cmd输入命令

bingo.bat xxx.wxapkg

如果提示’xxx’ 内部或外部命令 可以执行命令

chcp 65001

切换cmd编码为UTF-8后再次尝试 此时反编译代码就在当前目录下以小程序id命名的文件夹。

实用的微信小程序逆向教程!_第3张图片

二、移动端逆向复现

1、找到小程序代码包,启动微信并启动要逆向的小程序,打开RE管理器,前往路径 /data/data/com.tencent.mm/MicroMsg/用户ID/appbrand/pkg/(用户ID为32位字母或数字组成的名称) 此时看到的wxapkg文件就是小程序的代码包,找到你想逆向的包复制出来,可以通常长按发送的方式把文件复制到电脑,也可以通过Genymotion共享文件夹的方式把文件复制到电脑。

实用的微信小程序逆向教程!_第4张图片

2、反编译小程序,和pc端逆向一样的步骤。

实用的微信小程序逆向教程!_第5张图片

小程序反编译代码演示

实用的微信小程序逆向教程!_第6张图片

反编译的代码可以正常运行,但是由于没有小程序的开发权限,所以只能使用自己的小程序id进行代码调试,就像我截图中一样,虽然代码逻辑没问题,但是由于appid不同,在调用微信登录功能时,服务器会返回登录失败等信息。另外由于是反编译,小程序代码中变量等信息都是abcd之类的,读起来还是需要一点耐心。

转载来源

http://dabojava.cn/2021/04/30/unpack/wx-applet/

关注风洞网微信公众号!

实用的微信小程序逆向教程!_第7张图片

加入风洞网的知识星球,星球会不定期分享各种网络安全干货知识!

实用的微信小程序逆向教程!_第8张图片

你可能感兴趣的:(风洞网转载,微信,小程序,安全,微信小程序)