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

本文涉及的产品
可观测可视化 Grafana 版,10个用户账号 1个月
函数计算FC,每月15万CU 3个月
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打开这个文件夹,然后就可以进行代审了。


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

目录
相关文章
|
3月前
|
缓存 小程序 前端开发
商城/点餐/家政类小程序源码合集_微信抖音小程序源码开发从入门到精通实战
本文系统讲解如何利用现有源码快速开发商城、点餐、家政类微信/抖音小程序,涵盖环境搭建、核心功能实现、多平台部署与优化,提供完整技术方案。实战导向,助力开发者高效入门与落地。
|
3月前
|
存储 小程序 Java
热门小程序源码合集:微信抖音小程序源码支持PHP/Java/uni-app完整项目实践指南
小程序已成为企业获客与开发者创业的重要载体。本文详解PHP、Java、uni-app三大技术栈在电商、工具、服务类小程序中的源码应用,提供从开发到部署的全流程指南,并分享选型避坑与商业化落地策略,助力开发者高效构建稳定可扩展项目。
|
7月前
|
小程序 前端开发 Android开发
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
1493 29
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
|
7月前
|
JSON 监控 小程序
微信百度字节小程序包过大解决方案(实战经验总结)-优雅草卓伊凡|果果|小无
微信百度字节小程序包过大解决方案(实战经验总结)-优雅草卓伊凡|果果|小无
649 14
微信百度字节小程序包过大解决方案(实战经验总结)-优雅草卓伊凡|果果|小无
|
存储 JSON 小程序
微信小程序入门之新建并认识小程序结构
微信小程序入门之新建并认识小程序结构
230 1
ly~
|
存储 供应链 小程序
除了微信小程序,PHP 还可以用于开发哪些类型的小程序?
除了微信小程序,PHP 还可用于开发多种类型的小程序,包括支付宝小程序、百度智能小程序、抖音小程序、企业内部小程序及行业特定小程序。在电商、生活服务、资讯、工具、娱乐、营销等领域,PHP 能有效管理商品信息、订单处理、支付接口、内容抓取、复杂计算、游戏数据、活动规则等多种业务。同时,在企业内部,PHP 可提升工作效率,实现审批流程、文件共享、生产计划等功能;在医疗和教育等行业,PHP 能管理患者信息、在线问诊、课程资源、成绩查询等重要数据。
ly~
325 6
|
9月前
|
存储 移动开发 小程序
校园圈子系统小程序(圈子论坛、私信聊天、资料共享、二手交易、兼职,跑腿)开源码开发/微信公众号、小程序、H5多端账号同步/搭建多城市的综合社交生活平台
基于开源技术栈构建的校园圈子系统小程序,整合社交与生活服务功能,涵盖兴趣圈子、私信聊天、资料共享、二手交易、兼职跑腿等六大核心模块。通过多端账号同步(微信公众号/小程序/H5),实现数据实时交互,满足学生群体的多元化需求。项目精准锚定校园市场,以“社交+服务”双轮驱动,提供一站式解决方案,支持快速部署与多校区运营,同时具备广告、佣金、会员等多元变现能力,是打造校园生态的理想工具。
978 2
校园圈子系统小程序(圈子论坛、私信聊天、资料共享、二手交易、兼职,跑腿)开源码开发/微信公众号、小程序、H5多端账号同步/搭建多城市的综合社交生活平台
|
10月前
|
小程序 数据安全/隐私保护 开发者
【02】微信支付商户申请下户到配置完整流程-微信开放平台申请APP应用-微信商户支付绑定appid-公众号和小程序分别申请appid-申请+配置完整流程-优雅草卓伊凡
【02】微信支付商户申请下户到配置完整流程-微信开放平台申请APP应用-微信商户支付绑定appid-公众号和小程序分别申请appid-申请+配置完整流程-优雅草卓伊凡
693 3
|
10月前
|
人工智能 小程序 程序员
【视频测评 DEMO 参考】VSCode 神级 AI 插件通义灵码:完全免费+实战教程+微信贪吃蛇小程序
VSCode 神级 AI 插件通义灵码:完全免费+实战教程+微信贪吃蛇小程序
748 8
|
10月前
|
存储 小程序 前端开发
微信小程序与Java后端实现微信授权登录功能
微信小程序极大地简化了登录注册流程。对于用户而言,仅仅需要点击授权按钮,便能够完成登录操作,无需经历繁琐的注册步骤以及输入账号密码等一系列复杂操作,这种便捷的登录方式极大地提升了用户的使用体验
3047 12