小程序渗透测试实战(全流程)

小程序渗透测试全流程:抓包配置、协议分析、接口测试、反编译、业务逻辑漏洞,附完整测试流程图。

写在前面:合法学习边界

小程序渗透测试只在授权范围内执行。对非授权小程序进行测试可能触犯法律。

一、小程序渗透测试流程图

小程序渗透测试完整流程图

二、六步测试流程

第 1 步:抓包配置

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
模拟器方案:
  蓝叠/雷电模拟器 + Fiddler
  模拟器 WiFi 设置代理 → 本机 Fiddler 端口

真机方案:
  Charles 抓包 + 安装 CA 证书
  注意:iOS 16+ 需要手动安装开发者证书

证书固定绕过:
  Frida 脚本绕过 SSL Pinning
  objection --gadget 自动绕过

第 2 步:协议分析

1
2
3
4
5
6
7
8
9
接口分类:
  鉴权接口:登录 / 验证码 / openid
  业务接口:商品 / 订单 / 支付
  管理接口:后台 / 配置 / 用户管理

鉴权方式:
  openid + session_key(微信小程序)
  appid + timestamp + signature
  JWT Token / Cookie

第 3 步:接口测试

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
越权测试:
  修改 user_id 访问他人数据
  修改订单 ID 查看他人订单
  删除鉴权参数绕过验证

注入测试:
  SQL 注入(接口参数)
  XSS(搜索框/评论接口)
  命令注入(文件上传接口)

敏感操作:
  改密 / 改邮箱(CSRF/重放)
  支付金额篡改
  优惠券无限使用

第 4 步:反编译

1
2
3
4
5
6
7
8
wxapkg 反编译:
  使用 miniprogram-extractor
  提取 app.js / app.json / 页面文件

查找:
  硬编码 API Key / App Secret
  业务逻辑漏洞(未鉴权的接口)
  前端埋点/敏感信息

第 5 步:业务逻辑测试

1
2
3
4
5
6
7
核心检查:
  IDOR 越权(遍历 ID)
  鉴权绕过(直接调管理接口)
  短信验证码爆破/重放
  支付金额篡改/0 元购
  越权查看他人敏感信息
  敏感信息泄露(手机号/身份证)

第 6 步:输出报告

1
2
3
4
5
风险定级
漏洞描述 + 复现步骤 + 截图
影响范围
修复建议
整改复查

三、小结

小程序渗透的核心是接口 + 业务逻辑。接口测试关注越权和注入,反编译关注硬编码凭据,业务逻辑关注权限和支付。抓包是第一关,证书固定绕过是关键。