微信小程序src基础
前两天看到学校有个老师带头开发了一个微信小程序的校园论坛,直接引起了我的兴趣,之前一直听说小程序src好挖但是太卷了,自己还没有动手尝试过,刚好借这个机会学一些小程序src的基础,随便帮他们做一下渗透测试
yakit抓包
Yakit 配合 Proxifier 小程序抓包 | Yak Program Language
小程序抓包理论上在yakit上代理选本地就能直接找到这个包,但是这样话会导致没有用的垃圾包刷屏,不好找要用的包,于是我们就要用到一个本地代理工具Proxifier
Proxifier 是一款功能强大的网络代理工具,它可以让你将网络应用程序通过代理服务器进行连接。它提供了一个简单而灵活的方式,让你能够将任何应用程序的网络流量路由到指定的代理服务器上,从而实现匿名浏览、绕过网络封锁、访问受限网站等功能。
Proxifier 的工作原理是通过修改操作系统的网络设置,将应用程序的网络连接引导到代理服务器上。它支持多种代理协议,包括HTTP、HTTPS、SOCKS v4和SOCKS v5,可以与各种代理服务器兼容。此外,Proxifier 还支持对代理服务器进行负载均衡,以提高网络连接的速度和稳定性。
我们可以通过 Proxifier,将微信小程序的网络连接直接引导至 Yakit 在本地监听的代理端口。Yakit 本身作为上游代理服务器,接收 Proxifier 转发的流量,并对目标服务器发起请求。这样就实现了对小程序的单独抓包,避免了系统全局代理导致的无关流量干扰。
微信小程序 → Proxifier(强制接管) → Yakit(代理服务器,直接接收) → 目标服务器
理论差不多就这样,实操一遍

首先打开yakit,创建临时项目,如果后面还会用到这次的记录就直接创建新项目,临时项目是一次性的,本次关掉记录就没了

进入项目后要先检查有没有安装证书,没有就按照他的引导安装证书
然后可以自己选择劫持端口,这个端口后续要用到的,我这里用的是8083端口,监听主机选择本地
在yakit上的配置大体就是这样,接下来看proxifier
第一步选择proxy server,添加一个yakit监听的代理服务

之后再添加一个规则,让peoxifier单独选取微信小程序的流量

我把主要的配置圈出来了,像名字啥的就自己随便取,然后一直点OK保存就行
如果你觉得proxifier首页出现的流量包太多了,可以把rules中其他的默认两项的Action改为Direct

好,配置基本就这样,接下来就可以打开小程序,看看yakit上有没有流量包了
成果展示


接下来就可以和正常web一样抓包改包了
.wxapkg本地源码还原
微信小程序的.wxapkg包位置大概在
C:\Users\lenovo\AppData\Roaming\Tencent\xwechat\radium\users\你的对应账户\applet\packages当中,可以根据日期判断具体是哪一个,在电脑找这个小程序的前提是在PC端打开过这个小程序
推荐工具biggerstar/wedecode: 全自动化,微信小程序 wxapkg 包 源代码还原工具, 线上代码安全审计,支持 Windows, Macos, Linux
其实我也不知道其他的还有什么
他本地的readme写得挺清楚的
全局安装
# window npm i wedecode -g# mac sudo npm i wedecode -g本地运行
命令行打开网页可视化操作页面
wedecode ui命令行直接输入 wedecode 即可运行, 全程自动引导
wedecode命令行直接指定参数
# 手动指定一个包 wedecode ./name.wxapkg# 或者 编译当前命令行所在文件夹内的所有包 wedecode ./# 或者 编译当前命令行所在文件夹下名为 dirname 文件夹的所有包 wedecode ./dirname# 或者: 将编译结果输出到指定目录 --out 为输出目录 wedecode ./ --out ./output_path# 你也可以预设任意命令行参数, 在交互时将不会向您提问, 例如 wedecode --out output_path --clear --open-dir使用源码运行
git clone https://github.com/biggerstar/wedecode cd wedecode npm install # 如果 npm 安装很慢, 可以使用右侧命令换国内的淘宝源 npm config set registry https://registry.npmmirror.com npm run start # 或 npm run ui如果这篇文章对你有帮助,欢迎分享给更多人!
部分信息可能已经过时









