经常听到有老铁在群里说面对各种src站点无从下手,没有思路,望眼欲穿,辗转反侧。而我是游走在夹缝中的捡漏小徒弟,从没有挖过严重,高危也只是偶尔,但是低危中危却和我很有缘,俗话说质量不够数量来凑,挖不到一个严重那就挖二十个低中吧。本次就想把app中一些捡漏的小姿势分享一下。(看到这大佬们可以继续去挖严重了>_<)
本文涉及知识点实操练习
1)URL跳转漏洞:通过实操了解url跳转漏洞原理,掌握常见的url跳转漏洞利用及防护;
2)渗透权限规范:通过实操了解逻辑漏洞中的权限漏洞,包括平行权限漏洞与垂直权限漏洞
正题
一、善于发现URL跳转
之前说最快发现URL跳转的方法是抓包筛选302跳转的链接,但是有时候url跳转也存在于200的请求包,如果细心一点便不难发现(100块呢)。
例如:
通过下列几个200返回包可以看到返回包中存在goto、returnUrl、signUrl字段稍加修改即可跳转,希望大家的思路别局限在302中,细心搜寻200返回包也会有所收获的。
二、遇见参数就改改
看到这个栏目应该就知道这里说的是各种越权了,基础的就是通过修改各种参数来达到开外挂的效果。这里就简单举几个我遇见过有点儿意思的例子:
-
-
兑换商品处反向积分充值
都说购物商场一旦出了安全漏洞,损失将会十分惨重,就比如最近的某多多虽然追回了部分用户薅的羊毛,但是花费的人力也是很多的。这次碰到的这个问题就是在积分兑换处,值得一提的是此处研发蛮聪明的只用了商品的id和商品的数量来和后台的金额换算积分,但是却没有对数量做限制导致可以将其修改为负数进行充值。
其实这里可以继续分析一下那就是他为了修复这个问题还应该做的一步操作是限制充值积分的唯一入口,这样就算此处利用漏洞修改了积分但是在充值的时候进行充值入口校验就能防御此问题。
-
-
恶意占满预约通道:
部分app中会有预约功能,首先点击预约的时候尝试修改id发现提示禁止此操作,突然心一凉原来做了限制,这时候可能有些老司机就不在此地浪费时间了,而抱着侥幸心理的我继续碰碰运气吧。终于在预约功能处突然发现了此处页面存在遍历id的越权预约,尝试遍历后从页面上可以知道预约满了后会提示已满而且无法选择。那思路就来了,可以通过越权不断遍历每一个店铺的每一个时间段来达到全通道占满来阻止用户享用此功能实现了类似功能ddos 的效果。
-
-
越权删除留言
这个漏洞其实很简单,之所以要列出来是因为觉得还是有点必要的,此处的留言的id其实是加密的,但是一个致命性的失误导致加密成了摆设。如图可以发现加载留言版的时候会返回一个guid 和messageid,但是在删除留言的时候调用的是guids,通过对比发现guid=guids,这样即可把越权删除留言:
从这个问题也可以稍作思考,那就是如果遇见了不那么愚蠢的guid 和guids字段,其实也可以尝试一波^>^。
三、短信轰炸的另类方式
常见的短信轰炸的方式相信大家都有所了解,那就是抓取一个短信发送的数据包进行不断重放达到轰炸的目的,还有通过电话号码遍历来达到短信资源池消耗(这个不得不说一下,大公司是不会存在这种问题的,因为短信基本都是免费的>_<。所以src也会忽略处理)。下面举的例子是特殊的短信轰炸的方式:
1.某app中有一个类似于机场叫车的功能,功能是:用户先下单平台后台自动发送预约短信到用户手机,这就比较有意思了,下面提供利用的思路。
首先下单,抓取到的数据包中userPhone参数可以自定义没有限制本机,也没有进行校验。这时候还要注意返回包返回了订单的编号。
其次进入功能点点击取消订单,抓包可以看到传送的orderNo正式订单的编号。
这样就能够通过不断下订单再取消订单来实现短信轰炸,而且叫车服务还有一个功能就是当你下了个订单未取消出发前半小时司机也会打电话联系你,算作电话骚扰嘿嘿。
2.遇到过一个面向车主的app,部分开发人员认为无法获取车主手机号便可以不用管验证码发送接口的限制,但是通过关联的app泄露了此处的手机号即可实现小范围版短信轰炸。此处不方便传图就简述一下思路,比如说某滴,那就会有某滴车主和某滴app,你通过打车获取到的电话号码就是车主的登录手机号,一般为了方便司机都是手机号码短信验证登录,如果此处没有重视短信次数限制,那就可以出现短信轰炸,可以通过修改定位来获取不同范围内的车主手机号(以上关于某滴只是举个栗子,某滴的安全系数还是会高一些的)。
上述就是大致思路,再来讲讲细节,此处的手机号获取是需要抓包的,因为首先是客服联系你是否需要帮助,说了需要后客服会下单反馈给司机联系用户,此时app页面不显示手机号,但是通过抓取该页面订单的返回包即可查看到车主手机号进行短信轰炸咯。