前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >微信小程序安全需求基线

微信小程序安全需求基线

作者头像
Bypass
发布2021-09-10 15:19:42
1.9K0
发布2021-09-10 15:19:42
举报
文章被收录于专栏:BypassBypass

微信小程序作为一款轻量级的应用,因其有着较强的灵活性,开发成本低,推广裂变快等特点,在很多领域得到广泛的应用。

本文基于小程序在电商领域的应用场景,将常见的安全问题进行分析汇总,整理成安全需求基线,以期不断地完善,然后在更多的业务场景下应用。


01、基础安全

  • 涉及数据敏感,采用私有化部署。
  • 通过负载均衡、内容分发等技术,保障业务高可用。
  • PS:比较大的图片要进行优化,同时避免出现比较大的图片带有随机参数(jpg?t=xx),一旦引流,所有图片请求回源,将导致带宽跑满现象。

02、重点功能

  • 用户注册授权,添加隐私政策。
  • 文件上传,对上传文件的类型、大小、扩展名等信息进行校验,防止任意文件上传。
  • 用户自定义发布的内容需进行内容审核(例如:文本、图片、视频等),可调用公有云API 检测。

03、业务安全

  • 防越权绕过,对用户权限进行认证。 例如,遍历用户id导致敏感信息泄露,需对用户进行权限验证。
  • 防业务逻辑绕过,防止用户可以直接执行后面的流程,从而绕过某些阶段。 例如:积分兑换的场景,将积分扣减和兑换拆分为两个接口,攻击者可直接执行兑换,不执行积分扣减。
  • 防数据篡改,重要业务数据需后端进行校验。 例如:用户的游戏成绩直接篡改可用于游戏作弊,需增加签名认证,防止数据被篡改。
  • 防条件竞争绕过限制。 例如:在做积分抽奖时,应考虑如何应对高并发攻击。

04、敏感信息保护

  • OpenID、unionid作为微信用户的唯一身份标示,禁止在业务系统的URL、返回参数等地方使用OpenID、unionid。
  • 禁止在小程序前端代码中,写入明文的AppId和secret、AccessKey及其他敏感配置信息。
  • 敏感数据前端展示,应进行脱敏处理,敏感数据包括但不仅限于姓名、手机号、地址等。

05、身份鉴别

在实现会话管理功能时,应同时满足以下几条要求:

(1)建立唯一的,具有一定复杂度的用户会话标识。

(2)通过OpenID或unionid识别用户身份,并建立账号绑定关系。

(3)应具有超时退出机制,超过一定空闲时间,会话标识失效。

(4)禁止使用不安全的鉴权方式,例如使用手机号鉴权,可能存在信息泄露的风险。

06、其他

  • 正式发布前,要关闭小程序调试模式。
  • 进行渗透测试,针对前端代码和小程序API进行安全检测。
  • 对小程序前端代码进行必要的保护措施,如代码加密、压缩、混淆、反调试等。
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-09-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Bypass 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档