基于微信小程序渗透-反编译小程序

本文涉及的产品
应用实时监控服务-可观测链路OpenTelemetry版,每月50GB免费额度
注册配置 MSE Nacos/ZooKeeper,118元/月
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
简介: 微信小程序渗透时,因为小程序没有网页端页面,所以不能直接访问抓包分析,如果需要抓包分析,那么一般就是用电脑上的安卓模拟器登录微信利用burp抓包、要么就是用burp抓手机的包、要么就是从手机上直接抓包。方式方法有很多种,个人一般用来抓包的工具也就是IOS上用 Stream软件,或者是Postman等工具很容易就抓包了。

一、概述


  微信小程序渗透时,因为小程序没有网页端页面,所以不能直接访问抓包分析,如果需要抓包分析,那么一般就是用电脑上的安卓模拟器登录微信利用burp抓包、要么就是用burp抓手机的包、要么就是从手机上直接抓包。方式方法有很多种,个人一般用来抓包的工具也就是IOS上用 Stream软件,或者是Postman等工具很容易就抓包了。


 接下来主要介绍的时微信小程序的反编译,因为反编译出来可以看到小程序的前端源码,可以渗透出更多的东西。


二、使用电脑版微信获取小程序源码


具体的操作是这样的:


大概在微信的这个地方

image.png

这里直接打开微信存储文件的文件夹

image.png

  在这个文件夹下以wx开头的文件就代表一个小程序,如果之前用电脑版微信打开过小程序,每打开一个小程序,就会创建一个以wx开头的小程序文件夹,如果这个里面有很多文件夹,具体不知道哪个是哪个小程序的,那就直接将所有都删除掉,然后再去重新打开小程序,就会自动生成一个文件夹。

image.png

  我们进入到文件夹里面,这里面就一个文件,这就是我们小程序的源码,但是呢!这个文件是加密的,我们需要对其解密。


网上有很多的办法和解密工具,接下来就演示一下其中的一个方法。


三、使用工具解密源码


解密工具https://github.com/superBiuBiuMan/wechatMiniAppReverse


这个工具是解密+反编译 使用起来很方便,工具自带使用方法,接下来看操作


进入1.first文件夹

image.png

看到这里有使用方法和exe文件,我们用命令行进入这个文件夹,然后输入以下命令


pc_wxapkg_decrypt.exe -wxid wxffbeadbd7aa1464d -in C:\Users\Administrator\Desktop\1.wxapkg -out C:\Users\Administrator\Desktop\app.wxapkg

image.png

  这段命令先是制定了这个文件夹下的exe文件,然后需要输入小程序的wxid,这个直接就是复制刚刚那个小程序文件夹的名称即可。然后指定输入文件和输出文件,我这刚刚把加密的小程序复制到了桌面并改名为1.wxapkg了,这样方便一点,输出文件的路径和名字自行定义。


提示解密成功就解密好了。


四、配置nodejs环境


解密后的源码依然是wxapkg格式,就和压缩包一样,是打包的,所以需要解包。

解包需要nodejs支持,如果电脑没有安装nodejs,或者版本比较旧,就需要安装最新版的nodejs。


下载地址:https://nodejs.org/en


官网直接下载即可(安装完成后会自动配置好环境变量),如果是默认安装的话应该是在这个路径

image.png

把nodejs文件夹下面的所有文件复制出来,然后粘贴到刚刚那个工具的2.second文件夹下的nodejs文件夹下(如果提示文件相同冲突,一律选择替换)


五、使用工具解包


命令行进入如下图这个文件夹,输入 npm install uglify-es

image.png

再安装一个 npm install cheerio

image.png

提示错误信息


node:internal/modules/cjs/loader:1073  

throw err;


这个问题的解决方法需要用cnpm安装而不是npm去安装

这个cnpm其实就是淘宝提供的一个镜像服务器,是国内的,比npm国外的稳定


npm config set registry https://registry.npmmirror.com

npm install -g cnpm --registry=https://registry.npmmirror.com


然后输入cnpm -v 看看是否成功配置

image.png

然后在输入

cnpm install cheerio

这个时候虽然有报错,但是也是安装成功的

image.png

这个cheerio已经成功安装了。


接下来就可以运行工具解包了(需要进入2.second的nodejs文件夹) 提前将解密过的wxapkg文件移动到nodejs文件夹内

image.png

node wuWxapkg.js C:\Users\Administrator\Downloads\wechatMiniAppReverse-main\2.second\nodejs\app.wxapkg

image.png

image.png

解包完成后,就可以在当前目录下看到解包后的文件夹了。

image.png

到这里我们就可以用vscode打开这个文件夹,然后就可以进行代审了。


作者水平有限,感谢您的耐心阅读,后续分享更多技术干货!!!

目录
相关文章
|
2月前
|
存储 JSON 小程序
微信小程序入门之新建并认识小程序结构
微信小程序入门之新建并认识小程序结构
53 1
ly~
|
3月前
|
存储 供应链 小程序
除了微信小程序,PHP 还可以用于开发哪些类型的小程序?
除了微信小程序,PHP 还可用于开发多种类型的小程序,包括支付宝小程序、百度智能小程序、抖音小程序、企业内部小程序及行业特定小程序。在电商、生活服务、资讯、工具、娱乐、营销等领域,PHP 能有效管理商品信息、订单处理、支付接口、内容抓取、复杂计算、游戏数据、活动规则等多种业务。同时,在企业内部,PHP 可提升工作效率,实现审批流程、文件共享、生产计划等功能;在医疗和教育等行业,PHP 能管理患者信息、在线问诊、课程资源、成绩查询等重要数据。
ly~
82 6
|
2月前
|
开发框架 小程序 JavaScript
小程序代码丢失!反编译找回
小程序源代码的容易获取问题确实存在一些潜在的安全隐患。然而,现在的小程序开发框架采用像 Babel 这样的打包工具,将 JavaScript 逻辑代码混合在一个文件中并进行转编译,使其变得难以理解。
47 0
小程序代码丢失!反编译找回
|
2月前
|
小程序 JavaScript API
微信小程序开发之:保存图片到手机,使用uni-app 开发小程序;还有微信原生保存图片到手机
这篇文章介绍了如何在uni-app和微信小程序中实现将图片保存到用户手机相册的功能。
765 0
微信小程序开发之:保存图片到手机,使用uni-app 开发小程序;还有微信原生保存图片到手机
|
2月前
|
小程序 前端开发 数据可视化
微信商城小程序WeiMall
微信商城小程序WeiMall
37 0
|
3月前
|
小程序 前端开发 API
微信小程序 - 调用微信 API 回调函数内拿不到 this 问题(解决方案)
本文讨论了在微信小程序中调用API回调函数时无法获取到`this`上下文的问题,并提供了解决方案。在回调函数中,使用一个变量(如`that`)来保存当前的`this`引用,然后在回调内部使用这个变量来访问当前页面的数据和方法。
|
4月前
|
移动开发 小程序 前端开发
|
4月前
|
JSON 小程序 JavaScript
超详细微信小程序开发学习笔记,看完你也可以动手做微信小程序项目
这篇文章是一份全面的微信小程序开发学习笔记,涵盖了从小程序介绍、环境搭建、项目创建、开发者工具使用、文件结构、配置文件、模板语法、事件绑定、样式规范、组件使用、自定义组件开发到小程序生命周期管理等多个方面的详细教程和指南。
|
4月前
|
小程序 前端开发
微信小程序商城,微信小程序微店 【毕业设计参考项目】
文章推荐了一个微信小程序商城项目作为毕业设计参考,该项目在Github上获得18.2k星,提供了详细的使用教程和前端页面实现,适合学习微信小程序开发和作为毕业设计项目。
微信小程序商城,微信小程序微店 【毕业设计参考项目】
|
4月前
|
小程序 开发者
第一个微信小程序的初始化过程、小程序微信开发平台的下载、如何注册一个微信小程序的账号
这篇文章介绍了微信小程序的初始化过程,包括如何注册微信小程序账号、下载微信小程序开发者平台,并指导了新建小程序的详细步骤。
第一个微信小程序的初始化过程、小程序微信开发平台的下载、如何注册一个微信小程序的账号