前言
在前几天的时候,本来还在为比赛的事情备赛中,到后面我和同学都有点疲倦了,于是发我之前找到一个可能存在漏洞的网站让我试试,没想到真的测出了一些存在的逻辑漏洞。由于真实网站信息过于敏感,进行了一些处理希望大家不要在意,废话不多说,开始正题。
开始
密码找回漏洞
密码找回漏洞的利用原理复杂性不高,只需要知道功能点,抓包改包就好了,没有多大难度。
由于该网站存在任意注册账户,我的账号来源也是这里。
点击忘记密码,然后输入注册的手机号获取验证码进行抓包
将手机号填写我自己的,然后发送到返回包模块去发包
发现手机号修改为自己也能发送成功,可以看见存在密码找回漏洞。
短信轰炸漏洞
但是不能止步于此,想想后端验证那么不严谨,还有可能存在短信轰炸漏洞,于是发送到爆破模块去尝试
添加请求头,这样不具有唯一值:
X-Forwarded-For:127.0.0.1
最后可以看见值都为200的成功状态码,且返回包也显示"发送成功",拿出手机再进行验证,果然存在短信轰炸漏洞
关于其他的绕过手法
上面实战演示的其实是很基本的漏洞形式,没有多大含金量,但更多情况下,服务器会采取一些防护手段来限制你发送次数,但如果防护不严格的话还是可以绕过的,常用的绕过手法可以看下面
修改Cookie值
如果网站一开始发送验证码是可以成功发送的,状态码为1
如果后面再次发送,发现发送失败,可以看见服务器返回了一个Cookie,有可能是对Cookie值进行发送限制
在实际情况中要判断是否修改Cookie,是删除还是修改
修改IP值绕过
有些服务器会对ip进行检测,相当于上面的Cookie一样,例如特征使用了XXF头,可以尝试修改ip进行绕过
修改返回包
尝试修改为反义词,将返回信息替换为正确的,如:
0 --> 1
false --> true
no --> yes
failure --> success
500 --> 200
发送失败 --> 发送成功
......
添加字符绕过
还可以尝试添加一些字符在后面试试看是否能绕过
多次叠加参数绕过
比较少见,但可以试试,叠加多个参数,看能否发送多条短信验证码
水平越权
一般有注册的东西,登陆进去都存在修改数据的地方,这也是水平越权的漏洞产生的地方
来到个人信息,进行信息修改,尝试抓包可以看见有明文的uid值
发送到重发模块,进行修改uid,由于漏洞验证讲究的是无害化原则,所以我再注册了一个用户获取到了uid
可以看见修改成功,如果发送到爆破模块去跑将导致大量用户的信息被重置,可以看见存在水平越权漏洞。
当然还存其他越权的功能点,如修改密码,这里也不再赘述水平越权的利用了
总结
一次日常空闲的挖洞心得,虽然这次实战总结的比较基础,但是也收获了很多经验。多实战多总结技巧,一定会有所进步的
PS:现在6月份了,该网站已经下架了,所以你们是测不到了