摘要:本文详细记录了使用 Yakit + Proxifier 抓取微信小程序HTTP/HTTPS流量的完整过程,重点记录了容易踩坑的进程配置问题。适合渗透测试、逆向分析学习者参考。


📌 一、问题背景

最近在做微信小程序的渗透测试,需要抓取小程序的网络请求来分析业务逻辑和数据接口。环境配置如下:

组件 版本/配置
操作系统 Windows 10/11
微信PC端 最新版本
抓包工具 Yakit
代理工具 Proxifier
目标 微信小程序网络请求

按照常规流程配置好后,却发现怎么也抓不到小程序的包,Yakit里一片空白。经过一番排查,最终发现问题出在Proxifier的进程规则配置上。


📌 二、环境准备

2.1 安装必要软件

✅ Yakit:https://www.yakit.io/
✅ Proxifier:https://www.proxifier.com/
✅ 微信PC端:https://weixin.qq.com/

2.2 配置Yakit MITM

  1. 打开Yakit → 点击顶部 “MITM” 标签
  2. 点击 “启动MITM”
  3. 记录代理端口(默认 8080
  4. 安装证书(首次使用需要):
    • 访问 http://mitm.it
    • 下载Windows证书并安装到"受信任的根证书颁发机构"

2.3 配置Proxifier代理服务器

  1. 打开Proxifier → Profile → Proxy Servers
  2. 点击 Add,添加:
    • Address: 127.0.0.1
    • Port: 8080(与Yakit端口一致)
    • Protocol: HTTPS
  3. 点击OK保存

📌 三、踩坑过程(重点!)

❌ 错误配置一:规则化错误的进程

最初我在Proxifier的 Proxy Rules 中添加了以下规则:

应用程序 目标主机 动作
WeChat.exe Any Yakit_Proxy
WeixinExt.exe Any Yakit_Proxy

结果:微信主界面能正常登录,但小程序流量完全抓不到

❌ 错误排查方向一:怀疑微信版本

看到抓不到包,我第一反应是微信版本太高,协议加密太强。于是:

  1. 尝试下载旧版本微信(6.3.22、7.0.x等)
  2. 配置Android模拟器(夜神、雷电)
  3. 折腾MMTLS协议解密

浪费了大量时间后才发现——方向完全错了!

✅ 正确发现:通过任务管理器定位进程

后来我留了个心眼,在小程序打开时查看任务管理器:

  1. 打开微信 → 启动任意小程序
  2. Ctrl+Shift+Esc 打开任务管理器
  3. 右键小程序相关进程 → 打开文件所在的位置

惊喜发现:小程序的独立进程是 WeChatAppEx.exe,而不是 WeChat.exe


📌 四、正确解决方案

4.1 微信PC端进程架构说明

进程名 作用 是否产生小程序流量
WeChat.exe 微信主程序(聊天、朋友圈等) ❌ 否
WeChatAppEx.exe 小程序独立沙箱进程 ✅ 是
WeixinExt.exe 微信扩展服务 ❌ 否

💡 关键结论:小程序运行在独立的沙箱进程中,网络请求全部由 WeChatAppEx.exe 发出!

4.2 正确配置Proxifier规则

  1. 打开Proxifier → Profile → Proxy Rules
  2. 点击 Add 添加新规则:
名称:WeChat_MiniProgram
应用程序:WeChatAppEx.exe
目标主机:Any
端口:Any
动作:Yakit_Proxy(你的代理)
  1. 确保这条规则在 Default规则之前(优先级更高)

4.3 完整规则示例

顺序 名称 应用程序 目标主机 动作
1 WeChat_MiniProgram WeChatAppEx.exe Any Yakit_Proxy
2 WeChat_Main WeChat.exe Any Direct(直连)
3 Default Any Any Direct

📌 五、验证抓包成功

5.1 查看Proxifier日志

打开Proxifier → Window → Show Log

✅ 正确配置后,应该能看到:

WeChatAppEx.exe - bluesea.cptc56.com:7102 - 127.0.0.1:8080 - Connected

5.2 查看Yakit流量

  1. 打开Yakit → MITM → 历史数据包
  2. 启动小程序并操作
  3. 应该能看到大量请求涌入

5.3 请求示例

GET /biz/resrec/list?pageSize=10&pageNum=1&userId=2031265032836272129 HTTP/1.1
Host: bluesea.cptc56.com:7102
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9...
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)...
Content-Type: application/json
Referer: https://servicewechat.com/...

📌 六、常见问题FAQ

Q1:为什么WeChatAppEx.exe找不到?

A:这个进程只有在小程序启动后才会出现。请先打开一个小程序,再查看任务管理器。

Q2:小程序路径在哪里?

A:通常在以下位置:

C:\Users\用户名\AppData\Roaming\Tencent\WeChat\XPlugin\Plugins\WeChatAppEx\

Q3:抓到的是加密流量怎么办?

A

  • 普通HTTPS请求:Yakit MITM可自动解密
  • MMTLS协议流量:需要使用Frida Hook或专用插件解密

Q4:多个小程序同时打开怎么办?

A:每个小程序会启动独立的 WeChatAppEx.exe 进程,Proxifier规则会全部捕获。


📌 七、经验总结

序号 经验点 重要程度
1 小程序流量来自WeChatAppEx.exe,不是WeChat.exe ⭐⭐⭐⭐⭐
2 先开小程序再查进程,否则找不到WeChatAppEx.exe ⭐⭐⭐⭐
3 Proxifier规则优先级很重要,小程序规则放前面 ⭐⭐⭐⭐
4 不要盲目怀疑版本问题,先确认流量是否进入代理 ⭐⭐⭐
5 建议保存Proxifier配置Profile,方便下次复用 ⭐⭐⭐

📌 八、参考资料

  • Yakit官方文档:https://www.yakit.io/docs/
  • Proxifier使用教程:https://www.proxifier.com/docs/
  • 微信小程序架构分析:https://developers.weixin.qq.com/miniprogram/dev/framework/

📌 九、写在最后

这次排查过程让我深刻体会到:渗透测试中,最耗时的往往不是技术难点,而是基础配置问题。一个小小的进程名错误,就能让人浪费几个小时去怀疑版本、协议、加密方式。

希望这篇博客能帮助到同样在抓微信小程序包的朋友,少走弯路,直奔主题!

如果对你有帮助,欢迎点赞、收藏、评论! 👍


作者:[绘梨衣的sakura路]
发布时间:2026年3月10日
版权声明:本文为博主原创文章,转载请注明出处。


📎 附录:Proxifier配置导出

可以将配置导出为 .pfl 文件备份:

Profile → Export Profile → 保存为 WeChat_MiniProgram.pfl
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐