PS:萌新发文能力有限,还在通宵看各位师傅们的文章,学习新姿势
记录一次奇妙原因的逻辑漏洞挖掘

背景

终于开学啦,与许久未见的同学们来一场篮球(*人运动)。夏日炎炎,只能傍晚时分与同学们相约球场,一场大汗淋漓的运动过后,同学们争先恐后向着澡堂出发。但是由于疫情的原因澡堂限流,并且使用公众号预约,这时就要考验同学们的手速和运气了。恰好就在那天打完篮球的晚上,我在疯狂点击预约界面,主要是通宵看师傅们的文章,最近手速也跟不上了(dog),且那天运气不太行。澡堂没预约上,只能去厕所随便洗洗了。这时躺在床上的我夜不能寐,于是便有了,下面这次的漏洞挖掘。

0x01 确认目标 信息搜集

进入预约澡堂的公众号,选择学校预约澡堂

选择使用的浏览器打开,得到完整的 URL:http://xxx.xxx.com:8082/brmclg/
没提示使用微信客户端打开,这时就是常规的web渗透思路了

查看一下端口,8080,8081,8082 分别对应着三个学校的预约系统。

指纹信息

0x02 挖掘

由于目标系统建立在云平台,并且指纹信息比较少,进行一些常规的传统漏洞探测无果

转移战场--理清业务逻辑

burp上号.jpg 用我的账号进行登录
经过抓包发现,我在登陆时生成了一个 "id" : 20627

为了验证这个值是不是随机的,经过与室友一波交流,也借来他的号用来测试 发现并不是随机的
"id" : 20626 心中狂喜 有搞头

选择一个时间段的浴室进行预约

抓包查看预约的过程,看到关键点loginid=20627

系统登录,生成一个"id"值 ,浴室预约过程中带着 "id"进行请求,这时我就进行水平越权尝试

将进行浴室预约的包进行重放,包中loginid=20627改为20626发送

成功! 登录室友账号查看 已经帮他约好了嘿嘿

已知修改id可以造成水平越权,继续查看其它功能


查看修改密码处,进行了旧密码校验
查看修改个人信息处 也带有参数id 那就可以造成水平越权并且修改他人邮箱

水平越权到修改任意用户密码

修改邮箱有什么用呢?回去查看找回密码功能通知
忘记密码只能通过邮箱找回

对刚刚的包进行重放 修改id 为20626

成功修改 这时忘记密码 室友的号就到手了

该漏洞已经提交给相关部门,并且已经完成了修复。

0x03总结

引用前辈们的金句“渗透测试的本质是信息搜集”
通过这次的漏洞测试更加清楚的认识到了信息搜集的重要性
不仅仅是传统的子域名,ip,C段,端口、指纹。
(这些资产信息可能被师傅过了一轮,到我这个萌新时,那些薄弱的站不是下线,就是改成“开局一个登陆框,里面内容全靠猜”)
更要搜集一些与相关的测试信息:

  • 1、搜集系统可能存在的账号和密码。
  • 2、理清系统的逻辑系统
  • 3、尽量搜集全的资产范围内的信息,公众号、一些隐藏资产

点击收藏 | 0 关注 | 1
  • 动动手指,沙发就是你的了!
登录 后跟帖