记一次小程序“零元购”漏洞挖掘

概述

一次简单的微信小程序漏洞挖掘。在选中商品进行支付的时候,会get一个请求,这个请求主题部分进行了url编码,当我们解码之后就可以看到商品的id号,支付金额等信息,并且没有做安全校验,只需要修改成我们想要修改的金额,直接发送数据包,就可以支付,从而达到“零元购”的危害,考虑到漏洞还没修复,所以做了厚码保护处理

声明:本文所涉及到的漏洞均已提交CNVD,切勿做违法测试!

演示

首先进行环境准备,考虑到微信不能直接走系统代理,为了方便抓数据包,做了三层代理:proxypin + burpsuite + 手机网络设置
打开小程序抓包,选中一个商品

当我们支付的时候,会GET一个///pay.php一个请求,里面是url编码,当我们解码就可以看到我们的支付金额的位置,只需要修改成我们想要的金额,接着发包就会弹出一个二维码,支付就好了

仅作为漏洞挖掘测试,漏洞验证后第一时间选择了退款,遵守网络安全法律

防范措施

从代码层面进行安全检测,存储用户密码的地方进行严格的过滤,再一个就是敏感的信息在传输过程,以及显示到网站里的时候都要进行加密,MD5加密,数据SSL加密传输,重要的数据尽可能的使用POST的提交方式进行,用户密码要使用加强的加密方式MD5+base64特殊编码的方式进行加密,对于网站的一些报错页面也要禁止掉回显


记一次小程序“零元购”漏洞挖掘
http://example.com/2024/02/02/记一次小程序“零元购”漏洞挖掘/
作者
liuty
发布于
2024年2月2日
许可协议