对酒店房间自助售货机的支付漏洞挖掘_集群智慧网络安全云
全国客户服务热线:4006-054-001 疑难解答:159-9855-7370(7X24受理投诉、建议、合作、售前咨询),173-0411-9111(售前),155-4267-2990(售前),座机/传真:0411-83767788(售后),微信咨询:543646
企业服务导航

对酒店房间自助售货机的支付漏洞挖掘

发布日期:2024-05-19 浏览次数: 专利申请、商标注册、软件著作权、资质办理快速响应热线:4006-054-001 微信:15998557370


对酒店房间自助售货机的支付漏洞挖掘

1► 前言 住某酒店,一看就是个“正规”酒店。刚刷卡进门,就看到门缝里的小卡片了,床头上还贴这一个,个人微信的一个二维码美其名曰SPA。还贴心的提供了自助售货机购买TT。好奇扫码看了下。是个微信小程序,看界面,感觉可以测试下。发现里面东西的销量真不错哦。 正好在等外卖,掏出测试机,开启神器BURP。开始测试。 2► 测试环境 小程序抓包的时候要注意下安卓系统版本,在安卓7.0之后默认不信任用户安装的系统证书。所以手机在安装burp证书的时候,需要将证书安装为系统信任的证书。方法如下 手机需要先进行 ROOT 1、证书格式转换 # 1. 证书转换,已经是pem格式的证书不需要执行这一步openssl x509 -inform DER -in cacert.cer -out cacert.pem # 2. 进行MD5的hash显示# openssl版本在1.0以上的版本的执行这一句openssl x509 -inform PEM -subject_hash_old -in cacert.pem # openssl版本在1.0以下的版本的执行这一句openssl x509 -inform PEM -subject_hash -in cacert.pem 2、证书重命名,数字为上面计算出的hash mv cacert.pem 347bacb5.0 3、将新证书放到系统目录下 /system/etc/security/cacertschmod 644 /system/etc/security/cacerts/.0chgrp root .0 3► 测试过程 简单抓包看下过程中的包,点击物品的时候,会发包获取物品信息。post中的id参数还是可以遍历的,可以获取到每个房间里的物品信息。 看到这个ID能遍历,感觉有机会的样子,看上图可以发现包中是不存在 cookie 的,只有一个 token,所有包中的 token 都是不会变化的。 尝试修改返回包中的 price 相关的所有字段,看看能否修改支付价格。前端显示的价格确实是改变了,但支付的时候,还是按原价支付。 重新回顾整个购买流程,购买可以分为两个操作。一个是点击物品,进入物品详情页面,可以看到物品的售价等信息。然后是点击支付按钮后,进入支付操作。目前只测试了点击物品之后的数据包,经过测试是无法修改价格的。 接下来开启burp的包拦截,拦住点击支付按钮时发出的包,发现POST中存在一个 discount 参数默认为0,这个单词是折扣的意思。 哦吼,那是不是只要改动这个参数就可以获得购买折扣了?尝试下,先将0改为1试试,支付的时候,金额成功减少了 1。 尝试性的用此方法购买一个TT,看看是否可以以此来打开这个柜子的门,当我支付完一毛钱,哐当一声,柜子的门打开了,一个TT出现在我面前。惊Σ(っ °Д °;)っ。 作为新时代好青年,(主要是我也用不到,哭/(ㄒoㄒ)/),将TT放回了格子中,默默关上了门。 4► 总结 对于逻辑漏洞的挖掘,重点是需要关注流程中每一个包每一个参数的含义和作用。上文的支付逻辑漏洞比较简单,参数也都是以英文单词命名,比较容易猜测参数的具体作用。有些开发的参数设置很奇怪,会以拼音首字母开头,这时候往往就比较难猜测参数的实际含义了,需要不断的改包测试,修改一个参数后会影响什么。 文章作者:先知社区(7ten7) 文章来源:https://xz.aliyun.com/t/8369 黑白之道发布、转载的文章中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途及盈利等目的,否则后果自行承担! 如侵权请私聊我们删文 END

对酒店房间自助售货机的支付漏洞挖掘