小程序渗透测试项

针对小程序从登录到退出全流程进行多维度漏洞测试,以下是关键测试点和攻击场景分析:


一、身份认证阶段

  1. 暴力破解攻击
  • 测试登录接口是否无验证码/频率限制
  • 尝试弱密码字典攻击(Admin/123456等)
  • 验证错误提示是否泄露信息(如”用户不存在”)
  1. 认证绕过漏洞
  • 修改登录请求状态码(如200强行跳转)
  • 删除/伪造身份令牌(JWT/OAuth Token)
  • 尝试空密码、SQL注入(' or 1=1--
  1. 敏感信息泄露
  • 用户账号枚举(不同错误响应区分)
  • 登录错误响应体暴露路径/版本信息

二、会话管理阶段

  1. 会话固定攻击
  • 强制用户使用已知SessionID登录
  1. Token安全缺陷
  • JWT弱密钥破解(通过jwt_tool)
  • Token无过期时间或刷新机制失效
  • Token传输未使用HTTPOnly/Secure Cookie
  1. 跨设备会话复用
  • 验证单一会话有效性(多地登录是否踢出)

三、业务功能交互

  1. 数据越权访问
  • 横向越权:修改URL参数访问他人数据(/order?id=10001→10002
  • 纵向越权:普通用户访问管理接口(/admin/deleteUser
  1. 业务逻辑漏洞
  • 重复提交(如多次领取优惠券)
  • 状态篡改(0元支付改订单金额)
  • 流程跳过(直接访问支付完成页)
  1. 输入输出验证
  • XSS注入:在个人信息栏插入<script>alert(1)</script>
  • SQL注入:搜索框输入' sleep(5)--
  • 文件上传漏洞:上传含恶意代码的.jpg.php文件

四、本地客户端风险

  1. 反编译审计
  • 使用wxapkg解包工具检查硬编码密钥
  • 检查网络请求是否明文传输敏感数据
  1. 本地存储泄露
  • 扫描wx.setStorageSync存储的token/手机号
  • Android备份文件分析(*.db文件)
  1. 全局接口滥用
  • 恶意调用wx.requestPayment引导钓鱼支付
  • wx.getLocation未授权获取位置

五、退出与断开会话

  1. 注销机制缺陷
  • 退出后旧Token仍可访问API
  • 客户端未清除本地Token/缓存数据
  1. 会话超时失效
  • 验证无操作30分钟后是否强制重新认证
  • 网络中断后会话持续有效时间

六、补充测试项

测试方向具体案例
中间人攻击未启用SSL Pinning导致CA劫持
权限控制缺失未登录用户直接访问个人中心页
CSRF攻击伪造退出请求强制用户下线
二维码劫持登录二维码可重放使用
© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 共1条
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片