背景描述
日常安服仔,帮公司测试yd的资产,该系统是hw的研发开发的,给了高低两个权限的测试账号,最开始看了半天也没找到啥漏洞,因此有点慌了。
漏洞发现过程
因为测试做了很多次了,但是不是我做的,因此我基本上又把所有功能点都点了一遍。
测试的时候发现,权限鉴定做的挺好的,但是无意中还是找到了一处水平的越权漏洞,但是今天的重点不是水平越权。
后面准备就把这个水平越权交了算了的,想着还是要去另外一个端口看看。
就在群里找人要了登录账号的验证码。
此系统正常登录流程是输入账号密码正确后,会要求填验证码,验证码正确后,才能登录。
在查看接口的时候,发现了一处跳转接口。
该接口中出现了一个非常熟悉的参数名userid,并且看密文形式,有点很像base64编码。
尝试解码后发现,还真是该账号的base64编码后的数据。
所以直接拿高权限账号去用户管理处采集了两个用户名。
分别是H**** 和J****
获取权限的方式是
第一步访问:
https://x.x.x.x/xxxxx/bjmobilelogin?userid=base64密文&xxxxxxxxxxxxxxxxxxxxx
第二步访问:
https://x.x.x.x/xxxxx/index.html
第一步是拿到用户的身份凭证,第二步是回到网站的首页,以便点击其他的功能点。
第一个账号
第二个账号
总结
之所以能发现这个漏洞,还是因为测试账号权限够大,测试人员没放过任何一个接口。两者都有,这个漏洞人人都能挖到。